3 rem Written by Frank Schmitt (ich@frank-schmitt.net)
\r
4 rem based on the work by David Charlap (shamino@writeme.com)
\r
6 rem Clear PWD so emacs doesn't get confused
\r
7 set GNUS_PWD_SAVE=%PWD%
\r
11 if "%1" == "" goto usage
\r
13 rem Emacs 20.7 no longer includes emacs.bat. Use emacs.exe if the batch file is
\r
14 rem not present -- this also fixes the problem about too many parameters on Win9x.
\r
15 if exist %1\emacs.bat goto ebat
\r
16 if exist %1\emacs.exe goto eexe
\r
17 if exist %1\xemacs.exe goto xemacs
\r
23 echo ***************************************************************************
\r
24 echo * Using emacs.bat (If you've got en Emacs >= 20.3 please remove Emacs.bat,
\r
25 echo * it isn't needed anymore.
\r
26 echo ***************************************************************************
\r
33 echo ***************************************************************************
\r
34 echo * Using emacs.exe
\r
35 echo ***************************************************************************
\r
40 if not "%2" == "/copy" goto emacsnocopy
\r
41 if not exist %1\..\site-lisp\nul mkdir %1\..\site-lisp
\r
42 if not exist %1\..\site-lisp\gnus\nul mkdir %1\..\site-lisp\gnus
\r
43 if not exist %1\..\site-lisp\subdirs.el set subdirwarning=yes
\r
45 set EMACS_ARGS=-batch -q -no-site-file
\r
46 set GNUS_INFO_DIR=%1\..\info
\r
47 set GNUS_LISP_DIR=%1\..\site-lisp\gnus\lisp
\r
48 set GNUS_ETC_DIR=%1\..\site-lisp\gnus\etc
\r
52 set EMACS=xemacs.exe
\r
53 if not "%2" == "/copy" goto xemacsnocopy
\r
54 if not exist %1\..\..\site-packages\nul mkdir %1\..\..\site-packages\
\r
55 if not exist %1\..\..\site-packages\info\nul mkdir %1\..\..\site-packages\info
\r
56 if not exist %1\..\..\site-packages\lisp\nul mkdir %1\..\..\site-packages\lisp
\r
57 if not exist %1\..\..\site-packages\etc\nul mkdir %1\..\..\site-packages\etc
\r
59 set EMACS_ARGS=-batch -no-autoloads
\r
60 set GNUS_INFO_DIR=%1\..\..\site-packages\info
\r
61 set GNUS_LISP_DIR=%1\..\..\site-packages\lisp\gnus
\r
62 set GNUS_ETC_DIR=%1\..\..\site-packages\etc
\r
64 echo ***************************************************************************
\r
65 echo * Using xemacs.exe
\r
66 echo ***************************************************************************
\r
71 set EMACSBATCH=call %1\%EMACS% %EMACS_ARGS%
\r
73 attrib -r gnus-load.el
\r
74 if exist gnus-load.el del gnus-load.el
\r
76 echo Stand by while generating autoloads.
\r
78 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-make-cus-load .
\r
79 if ErrorLevel 1 set ERROR=make-cus-load
\r
80 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-make-auto-load .
\r
81 if ErrorLevel 1 set ERROR=%ERROR%,make-auto-load
\r
82 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-make-load
\r
83 if ErrorLevel 1 set ERROR=%ERROR%,make-load
\r
85 echo Stand by while compiling lisp files.
\r
87 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-compile
\r
88 if ErrorLevel 1 set ERROR=%ERROR%,compile
\r
90 if not "%2" == "/copy" goto infotest
\r
92 echo Stand by while copying lisp files.
\r
94 if not exist %GNUS_LISP_DIR%\nul mkdir %GNUS_LISP_DIR%
\r
95 xcopy /R /Q /Y *.el* %GNUS_LISP_DIR%
\r
96 if ErrorLevel 1 set ERROR=%ERROR%,copy-lisp
\r
102 if exist sieve del sieve
\r
104 makeinfo sieve.texi
\r
105 if exist sieve goto minfo
\r
106 REM It seems that makeinfo isn't available
\r
107 set EMACSINFO=%EMACSBATCH% -l infohack.el -f batch-makeinfo
\r
109 echo ***************************************************************************
\r
110 echo * Using infohack.el, if you've got makeinfo.exe put it in PATH.
\r
111 echo ***************************************************************************
\r
116 set EMACSINFO=makeinfo
\r
118 echo ***************************************************************************
\r
119 echo * Using makeinfo
\r
120 echo ***************************************************************************
\r
126 echo Stand by while generating info files.
\r
128 %EMACSINFO% emacs-mime.texi
\r
129 if ErrorLevel 1 set ERROR=%ERROR%,emacs-mime.texi
\r
130 %EMACSINFO% gnus.texi
\r
131 if ErrorLevel 1 set ERROR=%ERROR%,gnus.texi
\r
132 %EMACSINFO% sieve.texi
\r
133 if ErrorLevel 1 set ERROR=%ERROR%,sieve.texi
\r
134 %EMACSINFO% pgg.texi
\r
135 if ErrorLevel 1 set ERROR=%ERROR%,pgg.texi
\r
136 %EMACSINFO% message.texi
\r
137 if ErrorLevel 1 set ERROR=%ERROR%,message.texi
\r
139 if not "%2" == "/copy" goto nocopy
\r
140 if not exist %GNUS_INFO_DIR%\nul mkdir %GNUS_INFO_DIR%
\r
143 echo Stand by while copying info files.
\r
145 xcopy /R /Q /Y gnus %GNUS_INFO_DIR%
\r
146 if ErrorLevel 1 set ERROR=%ERROR%,copy-gnus-info
\r
147 xcopy /R /Q /Y gnus-? %GNUS_INFO_DIR%
\r
148 if ErrorLevel 1 set ERROR=%ERROR%,copy-gnus-x-info
\r
149 xcopy /R /Q /Y gnus-?? %GNUS_INFO_DIR%
\r
150 if ErrorLevel 1 set ERROR=%ERROR%,copy-gnus-xx-info
\r
151 xcopy /R /Q /Y message %GNUS_INFO_DIR%
\r
152 if ErrorLevel 1 set ERROR=%ERROR%,copy-message-info
\r
153 if exist message-1 xcopy /R /Q /Y message-? %GNUS_INFO_DIR%
\r
154 if ErrorLevel 1 set ERROR=%ERROR%,copy-message-x-info
\r
155 xcopy /R /Q /Y emacs-mime %GNUS_INFO_DIR%
\r
156 if ErrorLevel 1 set ERROR=%ERROR%,copy-emacs-mime-info
\r
157 xcopy /R /Q /Y sieve %GNUS_INFO_DIR%
\r
158 if ErrorLevel 1 set ERROR=%ERROR%,copy-sieve-info
\r
159 xcopy /R /Q /Y pgg %GNUS_INFO_DIR%
\r
160 if ErrorLevel 1 set ERROR=%ERROR%,copy-pgg-info
\r
163 echo ***************************************************************************
\r
164 echo * You should add the following lines to
\r
165 echo * %GNUS_INFO_DIR%\dir
\r
166 echo * if they aren't already there:
\r
168 echo * * PGG: (pgg). Emacs interface to various PGP implementations.
\r
169 echo * * Sieve: (sieve). Managing Sieve scripts in Emacs.
\r
170 echo ***************************************************************************
\r
176 echo Stand by while copying etc files.
\r
178 if not exist %GNUS_ETC_DIR%\nul mkdir %GNUS_ETC_DIR%
\r
179 xcopy /R /Q /Y gnus-tut.txt %GNUS_ETC_DIR%
\r
180 if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-gnus-tut-txt
\r
181 if not exist %GNUS_ETC_DIR%\gnus\nul mkdir %GNUS_ETC_DIR%\gnus
\r
182 xcopy /R /Q /Y .\gnus\* %GNUS_ETC_DIR%\gnus\
\r
183 if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-gnus-*
\r
184 if not exist %GNUS_ETC_DIR%\smilies\nul mkdir %GNUS_ETC_DIR%\smilies
\r
185 xcopy /R /Q /Y .\smilies\* %GNUS_ETC_DIR%\smilies\
\r
186 if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-smilies-*
\r
191 echo ***************************************************************************
\r
192 echo * You chose not to copy the files, therefore you should add the
\r
193 echo * following lines to the TOP of your [X]emacs customization file:
\r
195 echo * (add-to-list 'load-path "/Path/to/gnus/lisp")
\r
196 echo * (if (featurep 'xemacs)
\r
197 echo * (add-to-list 'Info-directory-list "c:/Path/to/gnus/texi/")
\r
198 echo * (add-to-list 'Info-default-directory-list "c:/Path/to/gnus/texi/"))
\r
199 echo * (require 'gnus-load)
\r
201 echo * Replace c:/Path/to/gnus with the Path where your new Gnus is (that's here
\r
202 echo * and yes, you've got to use forward slashes).
\r
203 echo ***************************************************************************
\r
207 if not "%subdirwarning%" == "yes" goto warngnusload
\r
209 echo ***************************************************************************
\r
210 echo * There's no subdirs.el file in your site-lisp directory, you should
\r
211 echo * therefor add the following line to the TOP of your Emacs
\r
212 echo * customization file:
\r
214 echo * (add-to-list 'load-path "/Path/to/emacs-site-lisp-directory/gnus/lisp")
\r
215 echo * (require 'gnus-load)
\r
216 echo * Yes, it must be forward slashes.
\r
217 echo ***************************************************************************
\r
223 echo ***************************************************************************
\r
224 echo * You should add the following line to the TOP of your Emacs
\r
225 echo * customization file:
\r
227 echo * (require 'gnus-load)
\r
228 echo ***************************************************************************
\r
232 if "%ERROR%"==":" goto noerrors
\r
235 echo ***************************************************************************
\r
236 echo * WARNING ERRORS OCCURRED!
\r
237 echo * You should look for error messages in the output of the called programs
\r
238 echo * and try to find out what exactly went wrong.
\r
239 echo * Errors occured in the following modules:
\r
241 echo ***************************************************************************
\r
254 echo ***************************************************************************
\r
255 echo * Unable to find emacs.exe or xemacs.exe on the path you specified!
\r
257 echo ***************************************************************************
\r
263 echo ***************************************************************************
\r
264 echo * Usage: make.bat :[X]Emacs-exe-dir: [/copy]
\r
266 echo * where: :[X]Emacs-exe-dir: is the directory your
\r
267 echo * emacs.exe respectively xemacs.exe resides in,
\r
268 echo * e.g. G:\Programme\XEmacs\XEmacs-21.4.11\i586-pc-win32\
\r
269 echo * or G:\Emacs\bin
\r
270 echo * /copy indicates that the compiled files should be copied to your
\r
271 echo * emacs lisp, info, and etc site directories.
\r
273 echo * Note: If you have Emacs/w3 you should set the environment variable
\r
274 echo * W3DIR to the directory where w3 is installed eg.
\r
275 echo * set W3DIR=d:\lisp\w3-4.0pre46\lisp
\r
276 echo ***************************************************************************
\r
280 rem Restore environment variables
\r
281 set PWD=%GNUS_PWD_SAVE%
\r