Mercurial > emacs
annotate admin/nt/makedist.bat @ 85680:a927843fe12d
Add a wrapper for getenv so it also checks the registry on Windows.
Suggestion and algorithm by Eli Zaretskii.
Code partially based on w32_get_resource and init_environment (w32.c).
(egetenv): New wrapper for getenv.
(get_current_dir_name, decode_options, get_server_config, set_local_socket,
set_socket, main): Use egetenv, not getenv.
(w32_get_resource, w32_getenv) [WINDOWSNT]: New functions.
author | Juanma Barranquero <lekktu@gmail.com> |
---|---|
date | Fri, 26 Oct 2007 15:46:22 +0000 |
parents | 2818a9b47852 |
children | 4d5637ee63a1 1251cabc40b7 |
rev | line source |
---|---|
75655
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
1 @echo off |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
2 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
3 rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
4 rem Free Software Foundation, Inc. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
5 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
6 rem Cannot use brackets in andrewi's email below because |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
7 rem older Windows shells will treat that as redirection. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
8 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
9 rem Author: Andrew Innes andrewi@gnu.org |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
10 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
11 rem This file is part of GNU Emacs. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
12 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
13 rem GNU Emacs is free software; you can redistribute it and/or modify |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
14 rem it under the terms of the GNU General Public License as published by |
78238
241961c1ec37
Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents:
77867
diff
changeset
|
15 rem the Free Software Foundation; either version 3, or (at your option) |
75655
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
16 rem any later version. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
17 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
18 rem GNU Emacs is distributed in the hope that it will be useful, |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
19 rem but WITHOUT ANY WARRANTY; without even the implied warranty of |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
20 rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
21 rem GNU General Public License for more details. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
22 rem |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
23 rem You should have received a copy of the GNU General Public License |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
24 rem along with GNU Emacs; see the file COPYING. If not, write to the |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
25 rem Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
26 rem Boston, MA 02110-1301, USA. |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
27 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
28 if (%3) == () goto usage |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
29 if not (%4) == () goto %4 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
30 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
31 :bin |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
32 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
33 echo Create full bin distribution |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
34 copy %3\README.W32 emacs-%1\README.W32 |
77797
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
35 rem Info-ZIP zip seems to be broken on Windows. |
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
36 rem It always writes to zip.zip and treats the zipfile argument as one |
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
37 rem of the files to go in it. |
79131
2818a9b47852
Include COPYING in top level directory of all distributed archives.
Jason Rumney <jasonr@gnu.org>
parents:
78432
diff
changeset
|
38 rem zip -9 -r %2-bin-i386 emacs-%1/BUGS emacs-%1/COPYING emacs-%1/README emacs-%1/README.W32 emacs-%1/INSTALL emacs-%1/bin emacs-%1/etc emacs-%1/info emacs-%1/lisp emacs-%1/leim -x emacs.mdp *.pdb *.opt *~ CVS |
2818a9b47852
Include COPYING in top level directory of all distributed archives.
Jason Rumney <jasonr@gnu.org>
parents:
78432
diff
changeset
|
39 7z a -tZIP -mx=9 -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory %2-bin-i386.zip emacs-%1/BUGS emacs-%1/COPYING emacs-%1/README emacs-%1/README.W32 emacs-%1/INSTALL emacs-%1/bin emacs-%1/etc emacs-%1/info emacs-%1/lisp emacs-%1/leim emacs-%1/site-lisp |
75655
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
40 del emacs-%1\README.W32 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
41 if not (%4) == () goto end |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
42 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
43 :barebin |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
44 echo Create archive with just the basic binaries and generated files |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
45 echo (the user needs to unpack the full source distribution for |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
46 echo everything else) |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
47 copy %3\README.W32 emacs-%1\README.W32 |
77800
444a75269831
Include dump.bat in the binary release.
Jason Rumney <jasonr@gnu.org>
parents:
77798
diff
changeset
|
48 copy %3\dump.bat emacs-%1\bin\dump.bat |
77797
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
49 rem Info-ZIP zip seems to be broken on Windows. |
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
50 rem It always writes to zip.zip and treats the zipfile argument as one |
de76ffcc1a43
Use 7-zip for compression, as Info-zip's zip is not working as expected.
Jason Rumney <jasonr@gnu.org>
parents:
77783
diff
changeset
|
51 rem of the files to go in it. |
79131
2818a9b47852
Include COPYING in top level directory of all distributed archives.
Jason Rumney <jasonr@gnu.org>
parents:
78432
diff
changeset
|
52 rem zip -9 -r %2-barebin-i386.zip emacs-%1/README.W32 emacs-%1/bin emacs-%1/etc/DOC-X emacs-%1/COPYING |
2818a9b47852
Include COPYING in top level directory of all distributed archives.
Jason Rumney <jasonr@gnu.org>
parents:
78432
diff
changeset
|
53 7z a -tZIP -mx=9 %2-barebin-i386.zip emacs-%1/README.W32 emacs-%1/bin emacs-%1/etc/DOC-X emacs-%1/COPYING |
75655
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
54 del emacs-%1\README.W32 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
55 if not (%4) == () goto end |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
56 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
57 goto end |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
58 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
59 :usage |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
60 echo Generate source and binary distributions of emacs. |
77783
396d6f737047
Reduce the number of variants produced. Use zip.
Jason Rumney <jasonr@gnu.org>
parents:
75655
diff
changeset
|
61 echo Usage: %0 emacs-version dist-basename distfiles [bin,barebin] |
75655
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
62 echo (e.g., %0 19.34 emacs-19.34.5 d:\andrewi\distfiles) |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
63 :end |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
64 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
65 goto skipArchTag |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
66 arch-tag: 6e2ddd92-c1c9-4992-b6b5-207aaab72f68 |
adcbaec53f24
Change EOL format to DOS. Don't use redirection characters in REM lines.
Eli Zaretskii <eliz@gnu.org>
parents:
75651
diff
changeset
|
67 :skipArchTag |