Skip to content

Commit 2730d38

Browse files
RestorerZchrisbra
authored andcommitted
patch 9.1.1029: the installer can be improved
Problem: the installer can be improved Solution: update the installer with the correct README and LICENSE files, improve the documentation, add a Makefile for the installer, update the Makefiles (RestorerZ) fixes: #16378 closes: #16378 Signed-off-by: RestorerZ <restorer@mail2k.ru> Signed-off-by: Christian Brabandt <cb@256bit.org>
1 parent c15de97 commit 2730d38

32 files changed

Lines changed: 591 additions & 621 deletions

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ can be translated:
7979
* Menus, see [runtime/lang/README.txt][2]
8080
* Vim tutor, see [runtime/tutor/README.txt][3]
8181
* Manual pages, see [runtime/doc/\*.1][4] for examples
82-
* Installer, see [nsis/lang/\*.nsi][5] for examples
82+
* Installer, see [nsis/lang/README.txt][5]
8383

8484
The help files can be translated and made available separately.
8585
See https://www.vim.org/translations.php for examples.
@@ -103,7 +103,7 @@ mailing list. For other questions please use the [Vi Stack Exchange][8] website,
103103
[2]: https://github.com/vim/vim/blob/master/runtime/lang/README.txt
104104
[3]: https://github.com/vim/vim/blob/master/runtime/tutor/README.txt
105105
[4]: https://github.com/vim/vim/blob/master/runtime/doc/vim.1
106-
[5]: https://github.com/vim/vim/blob/master/nsis/lang/english.nsi
106+
[5]: https://github.com/vim/vim/blob/master/nsis/lang/README.txt
107107
[6]: https://github.com/vim/vim/discussions/13087
108108
[7]: https://github.com/vim/vim/blob/master/runtime/doc/develop.txt
109109
[8]: https://vi.stackexchange.com

Filelist

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -609,6 +609,8 @@ SRC_DOS = \
609609
src/xxd/Make_mvc.mak \
610610
nsis/gvim.nsi \
611611
nsis/gvim_version.nsh \
612+
nsis/Makefile \
613+
nsis/Make_mvc.mak \
612614
nsis/README.txt \
613615
nsis/lang/*.nsi \
614616
nsis/lang/README.txt \
@@ -710,8 +712,6 @@ RT_ALL = \
710712
README_VIM9.md \
711713
LICENSE \
712714
CONTRIBUTING.md \
713-
lang/LICENSE.itx \
714-
lang/README.itx \
715715
runtime/bugreport.vim \
716716
runtime/doc/*.awk \
717717
runtime/doc/*.pl \
@@ -1043,7 +1043,8 @@ IN_README_DIR = \
10431043

10441044
# Generic language files.
10451045
LANG_GEN = \
1046-
README.??x.txt \
1046+
lang/README.*.txt \
1047+
lang/LICENSE.*.txt \
10471048
runtime/doc/*-da.1 \
10481049
runtime/doc/*-da.UTF-8.1 \
10491050
runtime/doc/*-de.1 \
@@ -1059,7 +1060,6 @@ LANG_GEN = \
10591060
runtime/doc/*-ru.UTF-8.1 \
10601061
runtime/doc/*-tr.1 \
10611062
runtime/doc/*-tr.UTF-8.1 \
1062-
runtime/doc/uganda.??x \
10631063
runtime/lang/README.txt \
10641064
runtime/lang/Makefile \
10651065
runtime/lang/Make_all.mak \

Makefile

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,14 @@ syntaxtest:
9696
# To do all this you need the Unix archive and compiled binaries.
9797
# Before creating an archive first delete all backup files, *.orig, etc.
9898

99-
MAJOR = 9
100-
MINOR = 1
99+
# I think it is better to place getting the current version number in the
100+
# configure script. And then automatically fill in the fields in the files
101+
# listed below. (Restorer)
102+
103+
MAJOR != grep -E 'VIM_VERSION_MAJOR\s{2,}' src/version.h | \
104+
awk '{ printf "%d",$$3 }'
105+
MINOR != grep -E 'VIM_VERSION_MINOR\s{2,}' src/version.h | \
106+
awk '{ printf "%d",$$3 }'
101107

102108
# CHECKLIST for creating a new version:
103109
#
@@ -161,12 +167,12 @@ MINOR = 1
161167
# - See src/INSTALLpc.txt for installing the compiler and SDK.
162168
# - Set environment for Visual C++ 2015:
163169
# > cd src
164-
# > msvc2015.bat
170+
# > msvc-latest.bat
165171
# - Build the console binary:
166-
# > nmake -f Make_mvc.mak
172+
# > nmake.exe -f Make_mvc.mak
167173
# - Run the tests and check the output:
168-
# > nmake -f Make_mvc.mak testclean
169-
# > nmake -f Make_mvc.mak test
174+
# > nmake.exe -f Make_mvc.mak testclean
175+
# > nmake.exe -f Make_mvc.mak test
170176
# - Rename (using ../tools/rename.bat):
171177
# vim.exe to vimw32.exe
172178
# tee/tee.exe to teew32.exe
@@ -176,10 +182,10 @@ MINOR = 1
176182
# uninstall.exe to uninstallw32.exe
177183
# Win32 GUI version build:
178184
# - > cd src
179-
# > nmake -f Make_mvc.mak GUI=yes
185+
# > nmake.exe -f Make_mvc.mak "GUI=yes"
180186
# - Run the tests and check the output:
181-
# > nmake -f Make_mvc.mak testclean
182-
# > nmake -f Make_mvc.mak testgvim
187+
# > nmake.exe -f Make_mvc.mak testclean
188+
# > nmake.exe -f Make_mvc.mak testgvim
183189
# - move "gvim.exe" to here (otherwise the OLE version will overwrite it).
184190
# - Move gvim.pdb to here.
185191
# - Copy "GvimExt/gvimext.dll" to here.
@@ -191,8 +197,8 @@ MINOR = 1
191197
# > cd src
192198
# > bigvim.bat
193199
# - Run the tests:
194-
# > nmake -f Make_mvc.mak testclean
195-
# > nmake -f Make_mvc.mak testgvim
200+
# > nmake.exe -f Make_mvc.mak testclean
201+
# > nmake.exe -f Make_mvc.mak testgvim
196202
# - check the output.
197203
# - Rename "gvim.exe" to "gvim_ole.exe".
198204
# - Rename gvim.pdb to "gvim_ole.pdb".
@@ -216,19 +222,19 @@ MINOR = 1
216222
# - Make sure there is a diff.exe two levels up (get it from a previous Vim
217223
# version). Also put winpty32.dll and winpty-agent.exe there.
218224
# - go to ../nsis and do:
219-
# > unzip icons.zip
220-
# > makensis gvim.nsi (takes a few minutes).
221-
# ignore warning for libwinpthread-1.dll
225+
# > nmake.exe -f Make_mvc.mak all
226+
# (takes a few minutes).
227+
# See nsis/README.txt for details.
222228
# - Copy gvim##.exe to the dist directory.
223229
#
224230
# 64 bit builds (these are not in the normal distribution, the 32 bit build
225231
# works just fine on 64 bit systems).
226232
# Like the console and GUI version, but first run vcvars64.bat or
227233
# "..\VC\vcvarsall.bat x86_amd64".
228234
# - Build the console version:
229-
# > nmake -f Make_mvc.mak
235+
# > nmake.exe -f Make_mvc.mak
230236
# - Build the GUI version:
231-
# > nmake -f Make_mvc.mak GUI=yes
237+
# > nmake.exe -f Make_mvc.mak "GUI=yes"
232238
# - Build the OLE version with interfaces:
233239
# > bigvim64.bat
234240
#
@@ -266,8 +272,8 @@ dist:
266272
# Clean up some files to avoid they are included.
267273
# Copy README files to the top directory.
268274
prepare:
269-
if test -f runtime/doc/uganda.nsis.txt; then \
270-
rm runtime/doc/uganda.nsis.???; fi
275+
if test -f lang/LICENSE.nsis.txt; then \
276+
rm -f lang/LICENSE*.nsis.txt; fi
271277
for name in $(IN_README_DIR); do \
272278
cp READMEdir/"$$name" .; \
273279
done
@@ -408,8 +414,7 @@ amisrc: dist prepare
408414
mv dist/vim$(VERSION)src.tar.gz dist/vim$(VERSION)src.tgz
409415

410416
# MS-DOS sources
411-
dossrc: dist dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt \
412-
nsis/gvim_version.nsh
417+
dossrc: dist dist/$(COMMENT_SRC) license nsis/gvim_version.nsh
413418
-rm -rf dist/vim$(VERSION)src.zip
414419
-rm -rf dist/vim
415420
mkdir dist/vim
@@ -420,23 +425,19 @@ dossrc: dist dist/$(COMMENT_SRC) runtime/doc/uganda.nsis.txt \
420425
$(SRC_DOS_BIN) \
421426
$(SRC_AMI_DOS) \
422427
$(SRC_DOS_UNIX) \
423-
runtime/doc/uganda.nsis.??? \
428+
lang/LICENSE.*.txt \
429+
lang/README.*.txt \
424430
nsis/gvim_version.nsh \
425431
| (cd dist/vim/$(VIMRTDIR); tar xf -)
426432
mv dist/vim/$(VIMRTDIR)/runtime/* dist/vim/$(VIMRTDIR)
427433
rmdir dist/vim/$(VIMRTDIR)/runtime
428434
cd dist && zip -9 -rD -z vim$(VERSION)src.zip vim <$(COMMENT_SRC)
429435

430-
runtime/doc/uganda.nsis.txt: runtime/doc/uganda.???
431-
cd runtime/doc && $(MAKE) uganda.nsis.txt
436+
license:
437+
cd nsis && $(MAKE) -f Makefile $@
432438

433439
nsis/gvim_version.nsh: Makefile
434-
echo "# Generated from Makefile: define the version numbers" > $@
435-
echo "!ifndef __GVIM_VER__NSH__" >> $@
436-
echo "!define __GVIM_VER__NSH__" >> $@
437-
echo "!define VER_MAJOR $(MAJOR)" >> $@
438-
echo "!define VER_MINOR $(MINOR)" >> $@
439-
echo "!endif" >> $@
440+
cd nsis && $(MAKE) -f Makefile $(@F)
440441

441442
dosrt: dist dist/$(COMMENT_RT) dosrt_files
442443
-rm -rf dist/vim$(VERSION)rt.zip
File renamed without changes.

lang/LICENSE.ru.txt

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
ЛИЦЕНЗИЯ VIM
2+
3+
I) Неизменённые копии программы Vim могут распространяться без ограничения
4+
при условии включения данного текста лицензии. Распространение
5+
неизменённых копий отдельных частей программы Vim также возможно
6+
при соблюдении условия о включении данного текста лицензии. Подобным
7+
образом разрешается добавлять исполняемые файлы, скомпилированные
8+
из неизменённого исходного кода программы Vim, а также собственные
9+
примеры использования и командные файлы редактора Vim.
10+
11+
II) Изменённую (или дополненную) версию программы Vim, включающую
12+
исполняемые файлы и/или исходный код, допускается распространять
13+
при соблюдении следующих четырёх условий:
14+
1) Текст настоящей лицензии должен включаться в состав распространяемой
15+
версии программы Vim без изменений.
16+
2) Изменённая версия программы Vim должна распространяться одним
17+
из следующих пяти способов:
18+
a) При внесении изменений в программу Vim, в дистрибутиве должны
19+
быть явно указаны контактные данные лица, внёсшего эти изменения.
20+
Ответственному разработчику по его запросу (в любой форме) должна
21+
быть безвозмездно предоставлена копия распространяемой изменённой
22+
версии программы Vim, включая её исходный код. Ответственный
23+
разработчик оставляет за собой право включать сделанные изменения
24+
в официальную версию программы Vim. Конкретные действия
25+
ответственного разработчика, относительно переданных изменений,
26+
а также лицензионные условия, на основании которых будет
27+
осуществляться их распространение, могут быть дополнительно
28+
согласованы. Если согласование не проводилось, сделанные изменения
29+
будут распространяться на условиях настоящей лицензии или более
30+
поздней её версии. Лица, в данное время являющиеся ответственными
31+
за разработку, указаны в перечне, размещённом по адресу:
32+
https://github.com/orgs/vim/people. В случае изменения этой
33+
информации, актуальные данные будут опубликованы на
34+
соответствующих ресурсах (вероятнее всего по интернет‐адресам
35+
vim.sf.net, www.vim.org и/или comp.editors). В случае полной
36+
невозможности установить контакт с ответственным разработчиком,
37+
обязательства по отправке изменений утрачивают силу. После
38+
передачи подтверждения о получении изменений от ответственного
39+
разработчика, необходимость в повторной отправке копии изменённой
40+
программы Vim неприменима.
41+
b) Если лицом получена изменённая версия программа Vim,
42+
распространяющаяся на условиях, указанных в ч. II) п. 2) пп. а)
43+
допускается дальнейшее её распространение этим лицом без внесения
44+
изменений и согласно ч. I) настоящей лицензии. В случае внесения
45+
дополнительных изменений, на эти изменения будут распространяться
46+
условия, указанные в ч. II) п. 2) пп. a).
47+
c) Каждая копия распространяемой изменённой версии программы Vim
48+
должна включать информацию обо всех произведённых изменениях,
49+
включая исходный код. Эта информация может быть представлена
50+
в виде построчного сравнения файлов. Выбор лицензии, по условиям
51+
которой будет распространяться добавленный код, остаётся
52+
за автором этих изменений. Изменения и лицензия на эти изменения
53+
не должны запрещать другим лицам внесение своих собственных
54+
изменений в официальную версию программы Vim.
55+
d) Изменённая версия программы Vim, содержащая изменения в
56+
соответствии с ч. II) п. 2 пп. c), может распространяться без
57+
исходного кода для этих изменений, при соблюдении следующих трёх
58+
условий:
59+
- Лицензия, применяемая к внесённым изменениям, предоставляет
60+
ответственному разработчику программы Vim возможность
61+
безвозмездного и неограниченного распространения этих изменений,
62+
а также право на безвозмездное и неограниченное включение этих
63+
изменений в официальную версию программы Vim.
64+
- Изменения должны сохраняться не менее трёх лет со времени
65+
распространения соответствующей изменённой версии программы Vim.
66+
В течение этого периода по запросу ответственного разработчика
67+
или другого пользователя изменённой версии программы Vim
68+
(в любой форме) необходимо предоставить исходный код данных
69+
изменений.
70+
- В дистрибутиве изменённой версии программы Vim должны быть явно
71+
указаны контактные данные лица, внёсшего эти изменения.
72+
Контактные данные должны сохранять актуальность в течение
73+
не менее трёх лет со времени последнего распространения
74+
соответствующей изменённой версии программы Vim или как можно
75+
дольше.
76+
e) Если к изменениям, внесённым в программу Vim, применимы условия
77+
лицензии GNU General Public License (GNU GPL), допускается
78+
распространение изменённой версия программы Vim на условиях
79+
лицензии GNU GPL версии 2 или любой более поздней версии этой
80+
лицензии.
81+
3) Необходимо добавить соответствующую информацию, которая должна быть
82+
выведена в результате выполнения команды ":version" в программе Vim,
83+
а также на экране приветствия программы Vim, чтобы пользователь
84+
изменённой версии программы Vim имел возможность определить,
85+
что он пользуется изменённой версией. При распространении
86+
на условиях, указанных в ч. II) п. 2) пп. e) такую информацию
87+
требуется добавлять только в том случае, когда она не противоречит
88+
лицензии, распространяющейся на эти изменения.
89+
4) Контактная информация, которая указывается по требованию ч. II) п. 2)
90+
пп. a) и ч. II) п. 2) пп. d) не должна удаляться или изменяться никем
91+
другим, кроме лица, указавшего данную контактную информацию.
92+
93+
III) При распространении изменённой версии программы Vim рекомендуется
94+
пользоваться лицензией Vim для произведённых изменений и обеспечить
95+
доступ к этим изменениям ответственного разработчика, включая исходный
96+
код изменений. Предпочтительным способом предоставления доступа
97+
к произведённым изменениям является отправка этих изменений через
98+
электронную почту или размещение файлов на сервер с отправкой
99+
URL-адреса по электронной почте. Если количество изменений
100+
незначительно (например, изменения в файле Makefile), достаточно будет
101+
отправить через электронную почту файл построчного сравнения. Изменения
102+
или URL-адреса должны быть направлены на адрес электронной почты
103+
maintainer@vim.org
104+
105+
IV) Не допускается удаление настоящей лицензия из дистрибутива исходного
106+
кода программы Vim, его отдельных частей или изменённой версии.
107+
Допускается использование настоящей лицензию для предыдущих
108+
изменённых выпусков программы Vim, взамен тех лицензий, с которыми
109+
они распространялись.
File renamed without changes.

README.rux.txt renamed to lang/README.ru.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
README.rux.txt для версии 9.1 программы Vim — Vi IMproved.
1+
README.ru.txt для версии 9.1 программы Vim — Vi IMproved.
22

33

44
ЧТО ТАКОЕ РЕДАКТОР VIM?

0 commit comments

Comments
 (0)