mm-util.el (mm-ucs-to-char): Use eval-and-compile.
[gnus] / make.bat
index 672284b..b1d7a23 100644 (file)
--- a/make.bat
+++ b/make.bat
@@ -1,15 +1,20 @@
-@echo off\r
+@echo OFF\r
+REM Change this to ON when debugging this batch file.\r
 \r
 rem Written by Frank Schmitt (ich@frank-schmitt.net)\r
 rem based on the work by David Charlap (shamino@writeme.com)\r
 rem .\r
+rem .\r
 rem Clear PWD so emacs doesn't get confused\r
 set GNUS_PWD_SAVE=%PWD%\r
 set PWD=\r
 set ERROR=:\r
+REM set pause=\r
 \r
-if "%1" == "" goto usage\r
+if %1p == p goto usage\r
 \r
+echo * Installing Gnus on your system.  Operating system:\r
+ver\r
 rem Emacs 20.7 no longer includes emacs.bat. Use emacs.exe if the batch file is\r
 rem not present -- this also fixes the problem about too many parameters on Win9x.\r
 if exist %1\emacs.bat goto ebat\r
@@ -21,8 +26,8 @@ goto noemacs
 set EMACS=emacs.bat\r
 echo.\r
 echo ***************************************************************************\r
-echo * Using emacs.bat (If you've got en Emacs >= 20.3 please remove Emacs.bat,\r
-echo * it isn't needed anymore.\r
+echo * Using emacs.bat  (If you've got Emacs 20.3 or higher please remove\r
+echo * Emacs.bat, it isn't needed anymore.)\r
 echo ***************************************************************************\r
 echo.\r
 goto emacs\r
@@ -68,12 +73,13 @@ echo.
 goto lisp\r
 \r
 :lisp\r
+if "%pause%" == "pause" pause\r
 set EMACSBATCH=call %1\%EMACS% %EMACS_ARGS%\r
 cd lisp\r
-attrib -r gnus-load.el\r
+if exist gnus-load.el attrib -r gnus-load.el\r
 if exist gnus-load.el del gnus-load.el\r
 echo.\r
-echo Stand by while generating autoloads.\r
+echo Stand by while generating autoloads.\r
 echo.\r
 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-make-cus-load .\r
 if ErrorLevel 1 set ERROR=make-cus-load\r
@@ -82,14 +88,14 @@ if ErrorLevel 1 set ERROR=%ERROR%,make-auto-load
 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-make-load\r
 if ErrorLevel 1 set ERROR=%ERROR%,make-load\r
 echo.\r
-echo Stand by while compiling lisp files.\r
+echo Stand by while compiling lisp files.\r
 echo.\r
 %EMACSBATCH% -l ./dgnushack.el -f dgnushack-compile\r
 if ErrorLevel 1 set ERROR=%ERROR%,compile\r
 \r
 if not "%2" == "/copy" goto infotest\r
 echo.\r
-echo Stand by while copying lisp files.\r
+echo Stand by while copying lisp files.\r
 echo.\r
 if not exist %GNUS_LISP_DIR%\nul mkdir %GNUS_LISP_DIR%\r
 xcopy /R /Q /Y *.el* %GNUS_LISP_DIR%\r
@@ -98,12 +104,13 @@ goto infotest
 \r
 :infotest\r
 cd ..\texi\r
-attrib -r sieve\r
+if exist sieve attrib -r sieve\r
 if exist sieve del sieve\r
 \r
+echo * Checking if makeinfo is available...\r
 makeinfo sieve.texi\r
 if exist sieve goto minfo\r
-REM It seems that makeinfo isn't available\r
+echo * No makeinfo found, using infohack.el.\r
 set EMACSINFO=%EMACSBATCH% -l infohack.el -f batch-makeinfo\r
 echo.\r
 echo ***************************************************************************\r
@@ -122,8 +129,9 @@ echo.
 goto info\r
 \r
 :info\r
+if "%pause%" == "pause" pause\r
 echo.\r
-echo Stand by while generating info files.\r
+echo Stand by while generating info files.\r
 echo.\r
 %EMACSINFO% emacs-mime.texi\r
 if ErrorLevel 1 set ERROR=%ERROR%,emacs-mime.texi\r
@@ -142,7 +150,7 @@ if not "%2" == "/copy" goto nocopy
 if not exist %GNUS_INFO_DIR%\nul mkdir %GNUS_INFO_DIR%\r
 \r
 echo.\r
-echo Stand by while copying info files.\r
+echo Stand by while copying info files.\r
 echo.\r
 xcopy /R /Q /Y gnus       %GNUS_INFO_DIR%\r
 if ErrorLevel 1 set ERROR=%ERROR%,copy-gnus-info\r
@@ -176,23 +184,56 @@ echo ***************************************************************************
 echo.\r
 \r
 :etc\r
+if "%pause%" == "pause" pause\r
 cd ..\etc\r
 echo.\r
-echo Stand by while copying etc files.\r
+echo Stand by while copying etc files.\r
 echo.\r
-if not exist %GNUS_ETC_DIR%\nul mkdir %GNUS_ETC_DIR%\r
+REM\r
+if not exist %GNUS_ETC_DIR% mkdir %GNUS_ETC_DIR%\r
+echo ** gnus-tut.txt ...\r
 xcopy /R /Q /Y gnus-tut.txt %GNUS_ETC_DIR%\r
 if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-gnus-tut-txt\r
-if not exist %GNUS_ETC_DIR%\gnus\nul mkdir %GNUS_ETC_DIR%\gnus\r
-xcopy /R /Q /Y .\gnus\* %GNUS_ETC_DIR%\gnus\\r
-if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-gnus-*\r
-if not exist %GNUS_ETC_DIR%\images\nul mkdir %GNUS_ETC_DIR%\images\r
-if not exist %GNUS_ETC_DIR%\images\gnus\nul mkdir %GNUS_ETC_DIR%\images\gnus\r
-xcopy /R /Q /Y .\images\gnus\* %GNUS_ETC_DIR%\images\gnus\\r
-if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-images-gnus-*\r
-if not exist %GNUS_ETC_DIR%\images\smilies\nul mkdir %GNUS_ETC_DIR%\images\smilies\r
-xcopy /R /Q /Y .\images\smilies\* %GNUS_ETC_DIR%\images\smilies\\r
-if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-images-smilies-*\r
+REM\r
+REM FIXME: Instead of C&P, we should use a FOR loop.\r
+REM\r
+set i=images\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=images\mail\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=images\gnus\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=images\smilies\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=images\smilies\grayscale\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=images\smilies\medium\r
+if not exist %GNUS_ETC_DIR%\%i%\nul mkdir %GNUS_ETC_DIR%\%i%\r
+echo ** .\%i%\ ...\r
+xcopy /R /Q /Y .\%i%\*.* %GNUS_ETC_DIR%\%i%\\r
+if ErrorLevel 1 set ERROR=%ERROR%,copy-etc-%i%\r
+REM\r
+set i=\r
 goto warnings\r
 \r
 :nocopy\r
@@ -270,6 +311,7 @@ goto usage
 :usage\r
 echo.\r
 echo ***************************************************************************\r
+REM echo * Usage: make.bat :[X]Emacs-exe-dir: [/copy] [ ^> inst-log.txt 2^>^&1 ]\r
 echo * Usage: make.bat :[X]Emacs-exe-dir: [/copy]\r
 echo *\r
 echo * where: :[X]Emacs-exe-dir: is the directory your\r
@@ -278,6 +320,8 @@ echo *           e.g. G:\Programme\XEmacs\XEmacs-21.4.11\i586-pc-win32\
 echo *           or G:\Emacs\bin\r
 echo *        /copy indicates that the compiled files should be copied to your\r
 echo *           emacs lisp, info, and etc site directories.\r
+REM echo *        ^> inst-log.txt 2^>^&1\r
+REM echo *           Log output to inst-log.txt\r
 echo *\r
 echo * Note: If you have Emacs/w3 you should set the environment variable\r
 echo *       W3DIR to the directory where w3 is installed eg.\r
@@ -295,7 +339,3 @@ set GNUS_INFO_DIR=
 set GNUS_ETC_DIR=\r
 set subdirwarning=\r
 set ERROR=\r
-\r
-goto skipArchTag\r
-   arch-tag: 502dd14c-acde-4f69-8e82-43203b12a82c\r
-:skipArchTag\r