* make dist target for Windows @ 2010-03-31 3:03 Christoph 2010-03-31 8:30 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-03-31 3:03 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1407 bytes --] Find attached a first version of a new make target for the Windows platform: make dist This provides a one-click build and packaging for Emacs Windows binary distribution (full and bin only). make dist works for source tarballs as well as for creating binary snapshots from a bzr working copy. Main changes: - new parameter for configure.bat to provide path to distribution files, for example libXpm.dll - admin.el writes version number to makefile.w32-in (for naming of zip file) - README.W32 relocated to nt/ directory (from admin/nt) - makefile.w32-in contains version number, new target dist. - makefile.w32-in contains new target install-shortcuts to invoke addpm, so no short cuts are created when packaging - new file zipdist.bat in nt/ which replaces makedist.bat from admin/nt. zipdist invokes 7zip to create the zipped binary distributions and verifies integrity. The zipdist.bat is necessary to support nmake, which cannot provide the necessary path manipulation functions to allow creating a zip file containing the correct root directory. I am using the cmd shell for the path manipulations to overcome nmakes deficiency. With gmake the zipdist is theoretically not necessary, but for consistency in the makefile it is using it, too. I have tested this on Windows 7, mingw32 (latest version) with the 23.1.94 tarball and a bzr checkout. Any feedback appreciated. Christoph [-- Attachment #2: makedistw32.txt --] [-- Type: text/plain, Size: 28492 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100331022715-xju9pmhgft8dnr8h # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: fe15e5c704c45768f35a134631ff454f57046adc # timestamp: 2010-03-30 20:30:44 -0600 # base_revision_id: cyd@stupidchicken.com-20100313195429-\ # ntt2gdnu64kb6vh8 # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-03-31 02:27:15 +0000 @@ -89,6 +89,7 @@ set doldflags= set sep1= set sep2= +set distfilepath= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +111,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +131,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files to be included when running make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -221,8 +224,17 @@ goto again :withsvg -shift set svgsupport=Y +shift +goto again + +rem ---------------------------------------------------------------------- + +:distfiles +shift +set distfilepath=%1 +set distfilename=%~nx1 +shift goto again rem ---------------------------------------------------------------------- @@ -513,6 +525,21 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +if [%distfilepath%] == [] goto distfilesDone + +echo Checking for %distfilename%... +if exist %distfilepath% goto haveDistfiles + +echo ...%distfilename% not found. +set distfilepath= +goto :distfilesDone + +:haveDistfiles +echo ...%distfilename% found. + +:distfilesDone + + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +559,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfilepath%)" == "()" echo DIST_FILES=%distfilepath%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-03-31 02:27:15 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -32,7 +34,6 @@ .PHONY: $(ALL) - addpm: stamp_BLD $(BLD)/addpm.exe $(BLD)/addpm.exe: $(BLD)/addpm.$(O) $(LINK) $(LINK_OUT)$@ \ @@ -202,7 +203,6 @@ - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +238,16 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +.PHONY: install + +dist: install + - $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + - $(CP) README.W32 $(INSTALL_DIR) + - zipdist.bat $(INSTALL_DIR) $(VERSION) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-03-31 02:27:15 +0000 @@ -0,0 +1,67 @@ +@echo off + +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EOF + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z a zipcheck zipdist.bat +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +rm zipcheck.7z +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +set CUR_DIR=%CD% +cd ..\.. +rem Build & verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build & verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +goto EXIT + +:EXIT +cd %CUR_DIR% # Begin bundle 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 ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 3:03 make dist target for Windows Christoph @ 2010-03-31 8:30 ` Eli Zaretskii 2010-03-31 14:57 ` Stefan Monnier 2010-04-01 1:48 ` Christoph 0 siblings, 2 replies; 37+ messages in thread From: Eli Zaretskii @ 2010-03-31 8:30 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Tue, 30 Mar 2010 21:03:12 -0600 > From: Christoph <cschol2112@googlemail.com> > > Find attached a first version of a new make target for the Windows > platform: make dist > > This provides a one-click build and packaging for Emacs Windows binary > distribution (full and bin only). Thanks. > Any feedback appreciated. Below. > +echo. --distfiles path to files to be included when running make dist, e.g. libXpm.dll Please make this text shorter, so it fits on a single 80-column line. > +set distfilename=%~nx1 This is not a good idea. configure.bat needs to be able to run on older Windows 9X systems, where %~nx1 is not supported by the stock shell. (It is OK to use such advanced constructs in zipdist.bat, because we can assume that binary distros will not be made on older systems.) I actually don't quite understand why you need to use %~nx1: it looks like distfilename is only used to check for messages to the user, so you could easily use distfilepath itself. Is it just for beauty? > .PHONY: $(ALL) > > - > addpm: stamp_BLD $(BLD)/addpm.exe Please don't make gratuitous white-space changes, at least not as part of a patch with real changes. > + - zipdist.bat $(INSTALL_DIR) $(VERSION) Why do you ignore errors in this command? It is the single most important command in the `dist' target, so perhaps it should really error out. > +set ARG_PATH="%~f1" Suggest SETLOCAL before the first command that sets environment variables. Otherwise, you are polluting the user's environment (or need to unset them all before you exit, which is tedious and error-prone). > +set ARG_PATH=%ARG_PATH:\=;% This warrants a comment, I think. > +rem Check, if 7zip is installed and available on path > +:ZIP_CHECK > +7z a zipcheck zipdist.bat > +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR > +rm zipcheck.7z This check is not bulletproof: the command could fail for a reason that has nothing to do with 7z being available. For example, zipdcheck.7z might already exist and be unwritable by the user. I suggest instead to run 7z without arguments, which should fail only if 7z cannot be invoked by the user. As a nice side-effect, you also get rid of the need to have rm.exe on PATH. > +rem Build distributions > +:ZIP_DIST > +set CUR_DIR=%CD% > +cd ..\.. > [...] > +:EXIT > +cd %CUR_DIR% Why not use pushd/popd instead? > +rem Build & verify full distribution Beware of shell-special characters in REM comments: no one said that the shell ignores them. Older Windows shells didn't. Just use "and" here, to be safe. Finally, one more request: I think it would be nice to have a much smaller *.exe files in the binary distribution, by stripping the debug info from them. (We currently use DWARF2 debug info, which is quite voluminous.) For all the executables but emacs.exe, this is simple: just run `strip' on them. For emacs.exe, you will need to link temacs.exe with the -s switch to GCC, and then re-dump Emacs. This is due to some subtle bug, which no one succeeded to fix yet, that causes emacs.exe to become an invalid executable file when stripped. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 8:30 ` Eli Zaretskii @ 2010-03-31 14:57 ` Stefan Monnier 2010-03-31 16:13 ` Eli Zaretskii 2010-03-31 23:12 ` Jason Rumney 2010-04-01 1:48 ` Christoph 1 sibling, 2 replies; 37+ messages in thread From: Stefan Monnier @ 2010-03-31 14:57 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Christoph, emacs-devel > Finally, one more request: I think it would be nice to have a much > smaller *.exe files in the binary distribution, by stripping the debug > info from them. (We currently use DWARF2 debug info, which is quite > voluminous.) For all the executables but emacs.exe, this is simple: The pretest binaries should not be stripped, tho, right? Stefan ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 14:57 ` Stefan Monnier @ 2010-03-31 16:13 ` Eli Zaretskii 2010-03-31 17:55 ` Stefan Monnier 2010-03-31 23:12 ` Jason Rumney 1 sibling, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-03-31 16:13 UTC (permalink / raw) To: Stefan Monnier; +Cc: cschol2112, emacs-devel > From: Stefan Monnier <monnier@iro.umontreal.ca> > Cc: Christoph <cschol2112@googlemail.com>, emacs-devel@gnu.org > Date: Wed, 31 Mar 2010 10:57:28 -0400 > > > Finally, one more request: I think it would be nice to have a much > > smaller *.exe files in the binary distribution, by stripping the debug > > info from them. (We currently use DWARF2 debug info, which is quite > > voluminous.) For all the executables but emacs.exe, this is simple: > > The pretest binaries should not be stripped, tho, right? I'm not sure. People who depend on others to prepare binaries for them tend not to have GDB installed, either. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 16:13 ` Eli Zaretskii @ 2010-03-31 17:55 ` Stefan Monnier 0 siblings, 0 replies; 37+ messages in thread From: Stefan Monnier @ 2010-03-31 17:55 UTC (permalink / raw) To: Eli Zaretskii; +Cc: cschol2112, emacs-devel >> > Finally, one more request: I think it would be nice to have a much >> > smaller *.exe files in the binary distribution, by stripping the debug >> > info from them. (We currently use DWARF2 debug info, which is quite >> > voluminous.) For all the executables but emacs.exe, this is simple: >> The pretest binaries should not be stripped, tho, right? > I'm not sure. People who depend on others to prepare binaries for > them tend not to have GDB installed, either. Some do, and in any case it's a lot easier to tell them to install GDB than to tell them to recompile Emacs. Stefan ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 14:57 ` Stefan Monnier 2010-03-31 16:13 ` Eli Zaretskii @ 2010-03-31 23:12 ` Jason Rumney 2010-03-31 23:39 ` Sean Sieger 2010-03-31 23:43 ` Christoph 1 sibling, 2 replies; 37+ messages in thread From: Jason Rumney @ 2010-03-31 23:12 UTC (permalink / raw) To: Stefan Monnier; +Cc: Christoph, Eli Zaretskii, emacs-devel Stefan Monnier <monnier@iro.umontreal.ca> writes: >> Finally, one more request: I think it would be nice to have a much >> smaller *.exe files in the binary distribution, by stripping the debug >> info from them. (We currently use DWARF2 debug info, which is quite >> voluminous.) For all the executables but emacs.exe, this is simple: > > The pretest binaries should not be stripped, tho, right? When I was building them, pretest binaries were built with debug info, and releases were built without (rather than building with debug info then stripping). ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 23:12 ` Jason Rumney @ 2010-03-31 23:39 ` Sean Sieger 2010-03-31 23:43 ` Christoph 1 sibling, 0 replies; 37+ messages in thread From: Sean Sieger @ 2010-03-31 23:39 UTC (permalink / raw) To: emacs-devel Jason Rumney <jasonr@gnu.org> writes: When I was building them, pretest binaries were built with debug info, and releases were built without (rather than building with debug info then stripping). Got it. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 23:12 ` Jason Rumney 2010-03-31 23:39 ` Sean Sieger @ 2010-03-31 23:43 ` Christoph 2010-04-01 5:00 ` Jason Rumney 1 sibling, 1 reply; 37+ messages in thread From: Christoph @ 2010-03-31 23:43 UTC (permalink / raw) To: emacs-devel On 3/31/2010 5:12 PM, Jason Rumney wrote: > When I was building them, pretest binaries were built with debug info, > and releases were built without (rather than building with debug info > then stripping). > This sounds like a good option to me. Can we provide debug symbols as additional download? Or do you have to have it compiled with debug support? ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 23:43 ` Christoph @ 2010-04-01 5:00 ` Jason Rumney 2010-04-01 6:13 ` Jan Djärv 2010-04-01 6:52 ` Eli Zaretskii 0 siblings, 2 replies; 37+ messages in thread From: Jason Rumney @ 2010-04-01 5:00 UTC (permalink / raw) To: emacs-devel On 01/04/2010 07:43, Christoph wrote: > Can we provide debug symbols as additional download? Or do you have to > have it compiled with debug support? I'm not sure that gcc supports having debug symbols in a separate file, but if it does, it would be a good option to investigate, provided it does not have the same problems that stripping emacs.exe has. The other problem that may arise with this is that the debug symbols for temacs.exe may not be valid for the dumped emacs.exe. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 5:00 ` Jason Rumney @ 2010-04-01 6:13 ` Jan Djärv 2010-04-01 6:52 ` Eli Zaretskii 1 sibling, 0 replies; 37+ messages in thread From: Jan Djärv @ 2010-04-01 6:13 UTC (permalink / raw) To: Jason Rumney; +Cc: emacs-devel Jason Rumney skrev: > On 01/04/2010 07:43, Christoph wrote: >> Can we provide debug symbols as additional download? Or do you have to >> have it compiled with debug support? > > I'm not sure that gcc supports having debug symbols in a separate file, > but if it does, it would be a good option to investigate, provided it > does not have the same problems that stripping emacs.exe has. The other > problem that may arise with this is that the debug symbols for > temacs.exe may not be valid for the dumped emacs.exe. > http://sourceware.org/gdb/current/onlinedocs/gdb/Separate-Debug-Files.html#Separate-Debug-Files Jan D. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 5:00 ` Jason Rumney 2010-04-01 6:13 ` Jan Djärv @ 2010-04-01 6:52 ` Eli Zaretskii 2010-04-01 7:23 ` Jan Djärv ` (2 more replies) 1 sibling, 3 replies; 37+ messages in thread From: Eli Zaretskii @ 2010-04-01 6:52 UTC (permalink / raw) To: Jason Rumney; +Cc: emacs-devel > Date: Thu, 01 Apr 2010 13:00:39 +0800 > From: Jason Rumney <jasonr@gnu.org> > > On 01/04/2010 07:43, Christoph wrote: > > Can we provide debug symbols as additional download? Or do you have to > > have it compiled with debug support? > > I'm not sure that gcc supports having debug symbols in a separate file, It's not a GCC option, it's an objcopy option (--only-keep-debug). See the section in the GDB manual pointed to by Jan for more details. However, as this option is a close relative of `strip', I'm afraid that it might not work, for the same (unknown) reasons stripping the dumped Emacs executable doesn't work. I agree that if it does work, it's a good idea to pursue. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 6:52 ` Eli Zaretskii @ 2010-04-01 7:23 ` Jan Djärv 2010-04-01 7:44 ` Eli Zaretskii 2010-04-01 7:24 ` Eli Zaretskii 2010-04-01 13:17 ` Jason Rumney 2 siblings, 1 reply; 37+ messages in thread From: Jan Djärv @ 2010-04-01 7:23 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel, Jason Rumney Eli Zaretskii skrev: >> Date: Thu, 01 Apr 2010 13:00:39 +0800 >> From: Jason Rumney <jasonr@gnu.org> >> >> On 01/04/2010 07:43, Christoph wrote: >>> Can we provide debug symbols as additional download? Or do you have to >>> have it compiled with debug support? >> I'm not sure that gcc supports having debug symbols in a separate file, > > It's not a GCC option, it's an objcopy option (--only-keep-debug). > See the section in the GDB manual pointed to by Jan for more details. > > However, as this option is a close relative of `strip', I'm afraid > that it might not work, for the same (unknown) reasons stripping the > dumped Emacs executable doesn't work. How does the breakage manifest itself? It seems to work on GNU/Linux (Ubuntu), but I haven't run it extensively. Fedora has shipped Emacs with separate debug-info files for a long time. Jan D. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 7:23 ` Jan Djärv @ 2010-04-01 7:44 ` Eli Zaretskii 0 siblings, 0 replies; 37+ messages in thread From: Eli Zaretskii @ 2010-04-01 7:44 UTC (permalink / raw) To: Jan Djärv; +Cc: jasonr, emacs-devel > Date: Thu, 01 Apr 2010 09:23:56 +0200 > From: Jan Djärv <jan.h.d@swipnet.se> > Cc: emacs-devel@gnu.org, Jason Rumney <jasonr@gnu.org> > > > However, as this option is a close relative of `strip', I'm afraid > > that it might not work, for the same (unknown) reasons stripping the > > dumped Emacs executable doesn't work. > > How does the breakage manifest itself? "strip emacs.exe" produces an emacs.exe that Windows refuses to run, saying that it's an invalid executable. > It seems to work on GNU/Linux (Ubuntu), but I haven't run it > extensively. Oh, this is a Windows-specific problem. My guess is that either unexw32.c does something wrong, or maybe the special sections we add with addsection have that adverse effect. Someone who knows their way in binary executable formats on Windows should look into this. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 6:52 ` Eli Zaretskii 2010-04-01 7:23 ` Jan Djärv @ 2010-04-01 7:24 ` Eli Zaretskii 2010-04-01 13:21 ` Jason Rumney 2010-04-01 13:17 ` Jason Rumney 2 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-01 7:24 UTC (permalink / raw) To: jasonr, emacs-devel > Date: Thu, 01 Apr 2010 09:52:40 +0300 > From: Eli Zaretskii <eliz@gnu.org> > Cc: emacs-devel@gnu.org > > However, as this option is a close relative of `strip', I'm afraid > that it might not work, for the same (unknown) reasons stripping the > dumped Emacs executable doesn't work. > > I agree that if it does work, it's a good idea to pursue. Just tried it (GDB 7.0), and it does appear to work. There's one annoyance, though: "objcopy --add-gnu-debuglink" produces an invalid executable, probably for the same reason `strip' doesn't work. So GDB cannot locate the debug info file automatically, and you need to manually load it with the `symbol-file' command, inside GDB. You will then need to "source .gdbinit" manually as well, because the various breakpoints it sets automatically won't work until GDB has the symbol table loaded. After that, I was able to start Emacs under GDB and step through its `main' code. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 7:24 ` Eli Zaretskii @ 2010-04-01 13:21 ` Jason Rumney 2010-04-01 13:37 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Jason Rumney @ 2010-04-01 13:21 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel Eli Zaretskii <eliz@gnu.org> writes: > Just tried it (GDB 7.0), and it does appear to work. How did you produce the stripped executable after extracting the debug info? ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 13:21 ` Jason Rumney @ 2010-04-01 13:37 ` Eli Zaretskii 0 siblings, 0 replies; 37+ messages in thread From: Eli Zaretskii @ 2010-04-01 13:37 UTC (permalink / raw) To: Jason Rumney; +Cc: emacs-devel > From: Jason Rumney <jasonr@gnu.org> > Cc: emacs-devel@gnu.org > Date: Thu, 01 Apr 2010 21:21:44 +0800 > > Eli Zaretskii <eliz@gnu.org> writes: > > > Just tried it (GDB 7.0), and it does appear to work. > > How did you produce the stripped executable after extracting the debug > info? The hard way, i.e. by linking temacs.bin with "gcc -s", after extracting the debug info with `objcopy'. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 6:52 ` Eli Zaretskii 2010-04-01 7:23 ` Jan Djärv 2010-04-01 7:24 ` Eli Zaretskii @ 2010-04-01 13:17 ` Jason Rumney 2 siblings, 0 replies; 37+ messages in thread From: Jason Rumney @ 2010-04-01 13:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel Eli Zaretskii <eliz@gnu.org> writes: > It's not a GCC option, it's an objcopy option (--only-keep-debug). > See the section in the GDB manual pointed to by Jan for more details. > > However, as this option is a close relative of `strip', I'm afraid > that it might not work, for the same (unknown) reasons stripping the > dumped Emacs executable doesn't work. Right. In fact, looking at the documentation, objcopy is used to extract the debug info to a separate file, then strip is used to remove them from the original application. So it involves finding a way to make strip work. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 8:30 ` Eli Zaretskii 2010-03-31 14:57 ` Stefan Monnier @ 2010-04-01 1:48 ` Christoph 2010-04-01 7:34 ` Eli Zaretskii 1 sibling, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-01 1:48 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 2423 bytes --] On 3/31/2010 2:30 AM, Eli Zaretskii wrote: >> +echo. --distfiles path to files to be included when running make dist, e.g. libXpm.dll >> > Please make this text shorter, so it fits on a single 80-column line. > Done. >> +set distfilename=%~nx1 >> > I actually don't quite understand why you need to use %~nx1: it looks > like distfilename is only used to check for messages to the user, so > you could easily use distfilepath itself. Is it just for beauty? > Yes, just to show the filename. I removed all of that and just display a generic message. >> .PHONY: $(ALL) >> >> - >> addpm: stamp_BLD $(BLD)/addpm.exe >> > Please don't make gratuitous white-space changes, at least not as part > of a patch with real changes. > Sorry, about that. That was not intentional. >> + - zipdist.bat $(INSTALL_DIR) $(VERSION) >> > Why do you ignore errors in this command? It is the single most > important command in the `dist' target, so perhaps it should really > error out. > Yes it should. Fixed. >> +set ARG_PATH="%~f1" >> > Suggest SETLOCAL before the first command that sets environment > variables. Good point. Added. >> +set ARG_PATH=%ARG_PATH:\=;% >> > This warrants a comment, I think. > I had some trouble parsing the path with '\' in it. Someone suggested replacing it and it worked miraculously. Still would like to know why the '\' didnt work, but my batch-fu is not that great. Do you have any idea? >> +rem Check, if 7zip is installed and available on path >> +:ZIP_CHECK >> +7z a zipcheck zipdist.bat >> +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR >> +rm zipcheck.7z >> > I suggest instead to run 7z without arguments, which should fail only > if 7z cannot be invoked by the user. As a nice side-effect, you also > get rid of the need to have rm.exe on PATH. > Agreed. This is a better solution. >> +rem Build distributions >> +:ZIP_DIST >> +set CUR_DIR=%CD% >> +cd ..\.. >> [...] >> +:EXIT >> +cd %CUR_DIR% >> > Why not use pushd/popd instead? > Ignorance, I guess. ;) Fixed. >> +rem Build& verify full distribution >> > Beware of shell-special characters in REM comments: no one said that > the shell ignores them. Older Windows shells didn't. Just use "and" > here, to be safe. > Good point. Didn't think of that. Fixed. v2 of the patch with all the fixes above is attached. Thanks, Christoph [-- Attachment #2: makedistw32v2.txt --] [-- Type: text/plain, Size: 29601 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100401014558-cs8rubve1vxlprx5 # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: d805eb747d2a5c1188907cfbef960058b1d2252b # timestamp: 2010-03-31 19:46:37 -0600 # base_revision_id: cyd@stupidchicken.com-20100313195429-\ # ntt2gdnu64kb6vh8 # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-01 01:45:58 +0000 @@ -89,6 +89,7 @@ set doldflags= set sep1= set sep2= +set distfilepath= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +111,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +131,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +229,14 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +shift +set distfilepath=%1 +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +524,21 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +if [%distfilepath%] == [] goto distfilesDone + +echo Checking for distfiles... +if exist %distfilepath% goto haveDistfiles + +echo ...distfiles not found. +set distfilepath= +goto :distfilesDone + +:haveDistfiles +echo ...distfiles found. + +:distfilesDone + + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +558,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfilepath%)" == "()" echo DIST_FILES=%distfilepath%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-01 01:40:58 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -202,7 +204,6 @@ - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +239,16 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +.PHONY: install + +dist: install + - $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + - $(CP) README.W32 $(INSTALL_DIR) + zipdist.bat $(INSTALL_DIR) $(VERSION) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle 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 VGk9kgnN1i+xzv6fef+LuSKcKEgue8M+gA== ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 1:48 ` Christoph @ 2010-04-01 7:34 ` Eli Zaretskii 2010-04-02 4:26 ` Christoph 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-01 7:34 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Wed, 31 Mar 2010 19:48:44 -0600 > From: Christoph <cschol2112@googlemail.com> > CC: emacs-devel@gnu.org > > >> +set ARG_PATH=%ARG_PATH:\=;% > >> > > This warrants a comment, I think. > > > I had some trouble parsing the path with '\' in it. Someone suggested > replacing it and it worked miraculously. Still would like to know why > the '\' didnt work, but my batch-fu is not that great. Do you have any idea? Can't have any ideas until you show me the original code that didn't work ;-) Thanks, I have no further comments. When this is installed, please remember to give the *.bat files CRLF end-of-line format. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-01 7:34 ` Eli Zaretskii @ 2010-04-02 4:26 ` Christoph 2010-04-02 8:25 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-02 4:26 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 746 bytes --] On 4/1/2010 1:34 AM, Eli Zaretskii wrote: > Thanks, I have no further comments. When this is installed, please > remember to give the *.bat files CRLF end-of-line format. > While updating the documentation in INSTALL, I realized that my patch had changed the original behavior of make install, which now does not install the Start menu shortcuts. This is usually not desired when packaging the binary distribution. In order to not confuse people who rightfully expect the shortcuts to be installed, I changed the makefile to restore the original behavior of make install but still accommodate the needs of make dist. I also updated the INSTALL file with the supporting documentation. Find v3 of the patch attached. Thanks Christoph [-- Attachment #2: makedistw32v3.txt --] [-- Type: text/plain, Size: 32600 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100402041351-8628mz80f8ugkjfj # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: 08a68c06abd718e69bcc6719795d8e20219ec3e4 # timestamp: 2010-04-01 22:15:34 -0600 # base_revision_id: dann@ics.uci.edu-20100401230814-57m0yg3ga785prq2 # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === modified file 'nt/INSTALL' --- nt/INSTALL 2010-01-13 08:35:10 +0000 +++ nt/INSTALL 2010-04-02 04:13:51 +0000 @@ -403,6 +403,9 @@ Removes the installed files in the bin subdirectory in addition to the files removed by make cleanall. + make dist + Builds Emacs from the available sources and pre-compiled lisp files. + Packages Emacs binaries as full distribution and barebin distribution. The following targets are intended only for use with the Bazaar sources. @@ -425,7 +428,28 @@ bootstrap to rebuild. Occasionally it may be necessary to run this target after an update. - +* Creating binary distributions + + Binary distributions (full and barebin distributions) can be + automatically built and packaged from source tarballs or a bzr + checkout. + + When building Emacs binary distributions, the --distfiles argument + to configure.bat specifies the path to files to include in the binary + distribution. + + For example, specifying + + --distfiles D:/distfiles/libXpm.dll + + results in libXpm.dll being copied from D:/distfiles/ to the + /bin directory before packaging starts. + + For packaging the binary distributions, the 'dist' make target uses + 7-Zip (http://www.7-zip.org), which must be installed and available + on the Windows Path. + + * Trouble-shooting The main problems that are likely to be encountered when building === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-01 01:45:58 +0000 @@ -89,6 +89,7 @@ set doldflags= set sep1= set sep2= +set distfilepath= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +111,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +131,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +229,14 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +shift +set distfilepath=%1 +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +524,21 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +if [%distfilepath%] == [] goto distfilesDone + +echo Checking for distfiles... +if exist %distfilepath% goto haveDistfiles + +echo ...distfiles not found. +set distfilepath= +goto :distfilesDone + +:haveDistfiles +echo ...distfiles found. + +:distfilesDone + + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +558,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfilepath%)" == "()" echo DIST_FILES=%distfilepath%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-02 04:13:51 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -197,12 +199,15 @@ # # Build and install emacs in INSTALL_DIR # -install: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) +.PHONY: install-bin install-shortcuts + +install: install-bin install-shortcuts + +install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +243,14 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +dist: install-bin + - $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + - $(CP) README.W32 $(INSTALL_DIR) + zipdist.bat $(INSTALL_DIR) $(VERSION) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle 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 XIiZjzh/nxP/i7kinChIa5LDrwA= ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-02 4:26 ` Christoph @ 2010-04-02 8:25 ` Eli Zaretskii 2010-04-03 17:31 ` Christoph 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-02 8:25 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Thu, 01 Apr 2010 22:26:18 -0600 > From: Christoph <cschol2112@googlemail.com> > Cc: emacs-devel@gnu.org > > + When building Emacs binary distributions, the --distfiles argument > + to configure.bat specifies the path to files to include in the binary > + distribution. ^^^^^^^^^^^^^^^^^ First, in the GNU project's terminology, ``a path'' is a list of directories such as is found in PATH or in INFOPATH. What you mean here is ``a file name'', not a path. Second, you say ``files'', in plural, which begs a question: how to specify more than one such DLL? Do you use several --distfiles options? > + For example, specifying > + > + --distfiles D:/distfiles/libXpm.dll > + > + results in libXpm.dll being copied from D:/distfiles/ to the > + /bin directory before packaging starts. It would be nice if you said whether it's necessary to use forward slashes here. Also, since the files are copied to the `bin' directory, perhaps you should tell explicitly that this option is for DLLs that are not built as part of Emacs, e.g. image libraries. Your current description sounds like the option is more general, which it really isn't. Thanks! ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-02 8:25 ` Eli Zaretskii @ 2010-04-03 17:31 ` Christoph 2010-04-04 7:10 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-03 17:31 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1515 bytes --] On 4/2/2010 2:25 AM, Eli Zaretskii wrote: > First, in the GNU project's terminology, ``a path'' is a list of > directories such as is found in PATH or in INFOPATH. What you mean > here is ``a file name'', not a path. > Got it. > Second, you say ``files'', in plural, which begs a question: how to > specify more than one such DLL? Do you use several --distfiles > options? > Good question. In this latest version of the patch I added support for multiple --distfiles arguments. > It would be nice if you said whether it's necessary to use forward > slashes here. Actually, I don't need to use forward slashes for distfiles. I updated this. I had an issue with compiler flags though, where I want to say I needed to specify them with forward slashes. I have to look into that some more. > Also, since the files are copied to the `bin' > directory, perhaps you should tell explicitly that this option is for > DLLs that are not built as part of Emacs, e.g. image libraries. Your > current description sounds like the option is more general, which it > really isn't. > I updated this part in INSTALL. Find v4 of the patch attached. Major changes: - configure.bat takes multiple --distfiles arguments for packaging more than one library in the binary distribution - configure.bat verifies that all specified distfiles exist and warns if they don't - updated INSTALL documentation BTW, Eli, thanks for taking the time to review this with such attention to detail. I appreciate it. Christoph [-- Attachment #2: makedistw32v4.txt --] [-- Type: text/plain, Size: 35989 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100403170713-etyouxtz799jwdbc # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: c959dc469b753e50b99fb1d07d2066cb1dc5bcb0 # timestamp: 2010-04-03 11:07:56 -0600 # base_revision_id: eliz@gnu.org-20100403135953-jybtp47vbq6pm1wt # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === modified file 'nt/INSTALL' --- nt/INSTALL 2010-01-13 08:35:10 +0000 +++ nt/INSTALL 2010-04-03 17:01:17 +0000 @@ -403,6 +403,9 @@ Removes the installed files in the bin subdirectory in addition to the files removed by make cleanall. + make dist + Builds Emacs from the available sources and pre-compiled lisp files. + Packages Emacs binaries as full distribution and barebin distribution. The following targets are intended only for use with the Bazaar sources. @@ -425,7 +428,33 @@ bootstrap to rebuild. Occasionally it may be necessary to run this target after an update. - +* Creating binary distributions + + Binary distributions (full and barebin distributions) can be + automatically built and packaged from source tarballs or a bzr + checkout. + + When building Emacs binary distributions, the --distfiles argument + to configure.bat specifies files to be included in the bin directory + of the binary distributions. This is intended for libraries that are + not built as part of Emacs, e.g. image libraries. + + For example, specifying + + --distfiles D:\distfiles\libXpm.dll + + results in libXpm.dll being copied from D:\distfiles to the + bin directory before packaging starts. + + Multiple files can be specified using multiple --distfiles arguments: + + --distfiles D:\distfiles\libXpm.dll --distfiles C:\jpeglib\jpeg.dll + + For packaging the binary distributions, the 'dist' make target uses + 7-Zip (http://www.7-zip.org), which must be installed and available + on the Windows Path. + + * Trouble-shooting The main problems that are likely to be encountered when building === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-03 17:01:17 +0000 @@ -89,6 +89,8 @@ set doldflags= set sep1= set sep2= +set sep3= +set distfiles= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +112,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +132,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +230,16 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +set HAVE_DISTFILES=1 +shift +set distfiles=%distfiles%%sep3%%1 +set sep3= %nothing% +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +527,35 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +rem Any distfiles provided for building distribution? If no, we're done. +if "(%HAVE_DISTFILES%)"=="()" goto :distFilesDone + +rem Any arguments to --distfiles specified? If no, we're done. +if not "%distfiles%"=="" goto :checkDistFiles +set distFilesOk=0 +echo No arguments specified for option --distfiles! +goto distfilesDone + +:checkDistFiles +echo Checking for distfiles... +rem Check if all specified distfiles exist +set fileNotFound= +for %%d in (%distfiles%) do if not exist %%d set fileNotFound=%%d +if not "%fileNotFound%"=="" goto distFilesNotFound + +set distFilesOK=1 +echo ...all distfiles found. +goto :distFilesDone + +:distFilesNotFound +set distFilesOk=0 +echo ...%fileNotFound% not found. +set distfiles= +goto :distfilesDone + +:distFilesDone +set fileNotFound= + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +575,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y @@ -633,12 +677,19 @@ echo Install libtiff development files or use --without-tiff :checkgif -if not "(%HAVE_GIF%)" == "()" goto donelibchecks -if (%gifsupport%) == (N) goto donelibchecks +if not "(%HAVE_GIF%)" == "()" goto checkdistfiles +if (%gifsupport%) == (N) goto checkdistfiles set libsOK=0 echo GIF support is missing. echo Install giflib or libungif development files or use --without-gif +:checkdistfiles +if "(%HAVE_DISTFILES%)" == "()" goto donelibchecks +if (%distFilesOk%) == (1) goto donelibchecks +echo. +echo Files specified with option --distfiles could not be found. +echo Fix these issues before running make dist + :donelibchecks if (%libsOK%) == (1) goto success echo. @@ -670,6 +721,8 @@ set doldflags= set mingwflag= set mf= +set distfiles= +set HAVE_DISTFILES= goto skipArchTag arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-03 17:01:17 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -197,12 +199,15 @@ # # Build and install emacs in INSTALL_DIR # -install: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) +.PHONY: install-bin install-shortcuts + +install: install-bin install-shortcuts + +install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +243,14 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +dist: install-bin + $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + $(CP) README.W32 $(INSTALL_DIR) + zipdist.bat $(INSTALL_DIR) $(VERSION) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle 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 ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-03 17:31 ` Christoph @ 2010-04-04 7:10 ` Eli Zaretskii 2010-04-06 2:12 ` Christoph 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-04 7:10 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Sat, 03 Apr 2010 11:31:16 -0600 > From: Christoph <cschol2112@googlemail.com> > CC: emacs-devel@gnu.org > > Find v4 of the patch attached. > > Major changes: > - configure.bat takes multiple --distfiles arguments for packaging more > than one library in the binary distribution > - configure.bat verifies that all specified distfiles exist and warns if > they don't > - updated INSTALL documentation Thanks. A couple of nits: > +set distFilesOK=1 > +echo ...all distfiles found. > +goto :distFilesDone > + > +:distFilesNotFound > +set distFilesOk=0 > +echo ...%fileNotFound% not found. > +set distfiles= > +goto :distfilesDone You set distFilesOk here, but you never unset it before exiting the script. In general, type "set RET" after running the script, and pay attention to any variables from the script in the environment -- they need to be unset before you exit the script. > +dist: install-bin > + $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin > + $(CP) README.W32 $(INSTALL_DIR) > + zipdist.bat $(INSTALL_DIR) $(VERSION) Hmm... did you try running "make dist" with some sh.exe on your PATH? I think it's not a good idea to rely on a Unixy shell to know how to run Windows batch files. I would suggest to invoke through the Windows shell explicitly: $(COMSPEC) /c $(ARGQUOTE)zipdist.bat $(DQUOTE)$(INSTALL_DIR)$(DQUOTE) $(VERSION)$(ARGQUOTE) The $(*QUOTE) stuff is needed in case $(INSTALL_DIR) includes spaces, but please test that this works, both with cmd.exe and sh.exe as the shell, because I didn't. > BTW, Eli, thanks for taking the time to review this with such attention > to detail. I appreciate it. Thank _you_ for working on this in the first place. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-04 7:10 ` Eli Zaretskii @ 2010-04-06 2:12 ` Christoph 2010-04-06 18:00 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-06 2:12 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel On 4/4/2010 1:10 AM, Eli Zaretskii wrote: > You set distFilesOk here, but you never unset it before exiting the > script. > Missed one. Fixed. > Hmm... did you try running "make dist" with some sh.exe on your PATH? > I think it's not a good idea to rely on a Unixy shell to know how to > run Windows batch files. I would suggest to invoke through the > Windows shell explicitly: > > $(COMSPEC) /c $(ARGQUOTE)zipdist.bat $(DQUOTE)$(INSTALL_DIR)$(DQUOTE) $(VERSION)$(ARGQUOTE) > > The $(*QUOTE) stuff is needed in case $(INSTALL_DIR) includes spaces, > but please test that this works, both with cmd.exe and sh.exe as the > shell, because I didn't. > I tried this but it doesnt work, neither with a shell (cygwin) or cmd.exe: $(ComSpec) /c $(ARGQUOTE)zipdist.bat $(DQUOTE)$(INSTALL_DIR)$(DQUOTE) $(VERSION)$(ARGQUOTE) (Note the camelcase-ing of ComSpec which is necessary for Windows NT to find cmd.exe. The makefile has a couple of paragraphs on this topic in the NOTES section at the top.) However, I get the following error in both scenarios: Using Cygwin, mingw32: C:\Windows\system32\cmd.exe /c 'zipdist.bat "D:/devel/emacs/emacs-bzr/makedistw32/nt/.." 24.0.50' devel was unexpected at this time. mingw32-make: *** [dist] Error 255 Using Cmd.exe, GNU coreutils. mingw32: C:\Windows\system32\cmd.exe /c "zipdist.bat \"D:/devel/emacs/emacs-bzr/makedistw32/nt/..\" 24.0.50" devel was unexpected at this time. mingw32-make: *** [dist] Error 255 Remove $(DQUOTE) and it works fine in both cases, but this will cause trouble if $(INSTALL_PATH) contains spaces. Here is my preliminary final version: $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(INSTALL_DIR) $(VERSION)$(ARGQUOTE) This will work fine with the cygwin shell and Windows PreNT/NT cmd.exe as long as $(INSTALL_DIR) does not contain any spaces. However, is the rest of the makefile capable of handling this case correctly? I see $(INSTALL_DIR) quoted in some places, some don't have quotes. The NOTES section of the makefile says that quoting helps making the forward slashes work in cmd.exe. It does not mention the support of spaces in file names. Any ideas? Christoph ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-06 2:12 ` Christoph @ 2010-04-06 18:00 ` Eli Zaretskii 2010-04-07 1:53 ` Christoph 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-06 18:00 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Mon, 05 Apr 2010 20:12:53 -0600 > From: Christoph <cschol2112@googlemail.com> > CC: emacs-devel@gnu.org > > However, I get the following error in both scenarios: > > Using Cygwin, mingw32: > C:\Windows\system32\cmd.exe /c 'zipdist.bat > "D:/devel/emacs/emacs-bzr/makedistw32/nt/.." 24.0.50' > devel was unexpected at this time. > mingw32-make: *** [dist] Error 255 > > Using Cmd.exe, GNU coreutils. mingw32: > C:\Windows\system32\cmd.exe /c "zipdist.bat > \"D:/devel/emacs/emacs-bzr/makedistw32/nt/..\" 24.0.50" > devel was unexpected at this time. > mingw32-make: *** [dist] Error 255 Does it work to use backslashes instead of forward slashes? > Here is my preliminary final version: > > $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(INSTALL_DIR) > $(VERSION)$(ARGQUOTE) > > This will work fine with the cygwin shell and Windows PreNT/NT cmd.exe > as long as $(INSTALL_DIR) does not contain any spaces. Does it help to use $(DQUOTE) 3 times in a row instead, like this: $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat """$(INSTALL_DIR)""" $(VERSION)$(ARGQUOTE) > However, is the rest of the makefile capable of handling this case > correctly? I see $(INSTALL_DIR) quoted in some places, some don't have > quotes. The NOTES section of the makefile says that quoting helps making > the forward slashes work in cmd.exe. It does not mention the support of > spaces in file names. You are right, INSTALL_DIR with spaces will not work. But not because of lack of quoting; because it is used in targets and prerequisites, and GNU Make does not support targets and prerequisites with embedded blanks. So you might as well forget about the triple quotes I suggested above, it's not needed. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-06 18:00 ` Eli Zaretskii @ 2010-04-07 1:53 ` Christoph 2010-04-08 0:05 ` Christoph 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-07 1:53 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 852 bytes --] On 4/6/2010 12:00 PM, Eli Zaretskii wrote: > Does it work to use backslashes instead of forward slashes? > No. Same result. > You are right, INSTALL_DIR with spaces will not work. But not because > of lack of quoting; because it is used in targets and prerequisites, > and GNU Make does not support targets and prerequisites with embedded > blanks. > > So you might as well forget about the triple quotes I suggested above, > it's not needed. > Triple quotes didnt work either, btw. So, here is the final version of the patch. Major changes: - Use $(ComSpec) etc. to execute batch file zipdist accordingly with cygwin shell and cmd.exe - Added info to prerequisites for dist target. When packaging a snapshot from the trunk this might be necessary, for the tarball it is not. If the info files exist, it will not do anything. Christoph [-- Attachment #2: makedistw32v5.txt --] [-- Type: text/plain, Size: 36860 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100407014605-is9czsn353oehbgr # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: 560a4bd115be8f1e61d517fe677ec83f26200e9b # timestamp: 2010-04-06 19:46:29 -0600 # base_revision_id: jwiegley@gmail.com-20100406181755-jciyh4wnm41uf3aj # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === modified file 'nt/INSTALL' --- nt/INSTALL 2010-01-13 08:35:10 +0000 +++ nt/INSTALL 2010-04-03 17:01:17 +0000 @@ -403,6 +403,9 @@ Removes the installed files in the bin subdirectory in addition to the files removed by make cleanall. + make dist + Builds Emacs from the available sources and pre-compiled lisp files. + Packages Emacs binaries as full distribution and barebin distribution. The following targets are intended only for use with the Bazaar sources. @@ -425,7 +428,33 @@ bootstrap to rebuild. Occasionally it may be necessary to run this target after an update. - +* Creating binary distributions + + Binary distributions (full and barebin distributions) can be + automatically built and packaged from source tarballs or a bzr + checkout. + + When building Emacs binary distributions, the --distfiles argument + to configure.bat specifies files to be included in the bin directory + of the binary distributions. This is intended for libraries that are + not built as part of Emacs, e.g. image libraries. + + For example, specifying + + --distfiles D:\distfiles\libXpm.dll + + results in libXpm.dll being copied from D:\distfiles to the + bin directory before packaging starts. + + Multiple files can be specified using multiple --distfiles arguments: + + --distfiles D:\distfiles\libXpm.dll --distfiles C:\jpeglib\jpeg.dll + + For packaging the binary distributions, the 'dist' make target uses + 7-Zip (http://www.7-zip.org), which must be installed and available + on the Windows Path. + + * Trouble-shooting The main problems that are likely to be encountered when building === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-06 02:16:41 +0000 @@ -89,6 +89,8 @@ set doldflags= set sep1= set sep2= +set sep3= +set distfiles= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +112,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +132,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +230,16 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +set HAVE_DISTFILES=1 +shift +set distfiles=%distfiles%%sep3%%1 +set sep3= %nothing% +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +527,35 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +rem Any distfiles provided for building distribution? If no, we're done. +if "(%HAVE_DISTFILES%)"=="()" goto :distFilesDone + +rem Any arguments to --distfiles specified? If no, we're done. +if not "%distfiles%"=="" goto :checkDistFiles +set distFilesOk=0 +echo No arguments specified for option --distfiles! +goto distfilesDone + +:checkDistFiles +echo Checking for distfiles... +rem Check if all specified distfiles exist +set fileNotFound= +for %%d in (%distfiles%) do if not exist %%d set fileNotFound=%%d +if not "%fileNotFound%"=="" goto distFilesNotFound + +set distFilesOK=1 +echo ...all distfiles found. +goto :distFilesDone + +:distFilesNotFound +set distFilesOk=0 +echo ...%fileNotFound% not found. +set distfiles= +goto :distfilesDone + +:distFilesDone +set fileNotFound= + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +575,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y @@ -633,12 +677,19 @@ echo Install libtiff development files or use --without-tiff :checkgif -if not "(%HAVE_GIF%)" == "()" goto donelibchecks -if (%gifsupport%) == (N) goto donelibchecks +if not "(%HAVE_GIF%)" == "()" goto checkdistfiles +if (%gifsupport%) == (N) goto checkdistfiles set libsOK=0 echo GIF support is missing. echo Install giflib or libungif development files or use --without-gif +:checkdistfiles +if "(%HAVE_DISTFILES%)" == "()" goto donelibchecks +if (%distFilesOk%) == (1) goto donelibchecks +echo. +echo Files specified with option --distfiles could not be found. +echo Fix these issues before running make dist + :donelibchecks if (%libsOK%) == (1) goto success echo. @@ -670,6 +721,9 @@ set doldflags= set mingwflag= set mf= +set distfiles= +set HAVE_DISTFILES= +set distFilesOk= goto skipArchTag arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-06 02:16:41 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -197,12 +199,15 @@ # # Build and install emacs in INSTALL_DIR # -install: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) +.PHONY: install-bin install-shortcuts + +install: install-bin install-shortcuts + +install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +243,14 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +dist: info install-bin + $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + $(CP) README.W32 $(INSTALL_DIR) + $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(INSTALL_DIR) $(VERSION)$(ARGQUOTE) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle 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 ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-07 1:53 ` Christoph @ 2010-04-08 0:05 ` Christoph 2010-04-08 17:51 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: Christoph @ 2010-04-08 0:05 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 794 bytes --] On 4/6/2010 7:53 PM, I wrote: > So, here is the final version of the patch. > > Major changes: > - Use $(ComSpec) etc. to execute batch file zipdist accordingly with > cygwin shell and cmd.exe > - Added info to prerequisites for dist target. When packaging a > snapshot from the trunk this might be necessary, for the tarball it is > not. If the info files exist, it will not do anything. One more change: I removed the info prerequisite, since bootstrap already does this. Final version attached. If there are no more comments or suggestions...how do I get this installed? Personally, I think it would be nice to install this in the EMACS_23 branch to be used on any forthcoming pretests and the final release, but I understand if it is a little late in the game for this. Christoph [-- Attachment #2: makedistw32v6.txt --] [-- Type: text/plain, Size: 37131 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100407170207-6ffft60c82f6h0p1 # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: 9d6f3af7c4df463524ba2f2ad711e0697016bf6d # timestamp: 2010-04-07 11:05:35 -0600 # base_revision_id: jwiegley@gmail.com-20100406181755-jciyh4wnm41uf3aj # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-01-13 08:35:10 +0000 +++ admin/admin.el 2010-03-31 02:27:15 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === modified file 'nt/INSTALL' --- nt/INSTALL 2010-01-13 08:35:10 +0000 +++ nt/INSTALL 2010-04-03 17:01:17 +0000 @@ -403,6 +403,9 @@ Removes the installed files in the bin subdirectory in addition to the files removed by make cleanall. + make dist + Builds Emacs from the available sources and pre-compiled lisp files. + Packages Emacs binaries as full distribution and barebin distribution. The following targets are intended only for use with the Bazaar sources. @@ -425,7 +428,33 @@ bootstrap to rebuild. Occasionally it may be necessary to run this target after an update. - +* Creating binary distributions + + Binary distributions (full and barebin distributions) can be + automatically built and packaged from source tarballs or a bzr + checkout. + + When building Emacs binary distributions, the --distfiles argument + to configure.bat specifies files to be included in the bin directory + of the binary distributions. This is intended for libraries that are + not built as part of Emacs, e.g. image libraries. + + For example, specifying + + --distfiles D:\distfiles\libXpm.dll + + results in libXpm.dll being copied from D:\distfiles to the + bin directory before packaging starts. + + Multiple files can be specified using multiple --distfiles arguments: + + --distfiles D:\distfiles\libXpm.dll --distfiles C:\jpeglib\jpeg.dll + + For packaging the binary distributions, the 'dist' make target uses + 7-Zip (http://www.7-zip.org), which must be installed and available + on the Windows Path. + + * Trouble-shooting The main problems that are likely to be encountered when building === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-06 02:16:41 +0000 @@ -89,6 +89,8 @@ set doldflags= set sep1= set sep2= +set sep3= +set distfiles= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +112,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +132,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +230,16 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +set HAVE_DISTFILES=1 +shift +set distfiles=%distfiles%%sep3%%1 +set sep3= %nothing% +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +527,35 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +rem Any distfiles provided for building distribution? If no, we're done. +if "(%HAVE_DISTFILES%)"=="()" goto :distFilesDone + +rem Any arguments to --distfiles specified? If no, we're done. +if not "%distfiles%"=="" goto :checkDistFiles +set distFilesOk=0 +echo No arguments specified for option --distfiles! +goto distfilesDone + +:checkDistFiles +echo Checking for distfiles... +rem Check if all specified distfiles exist +set fileNotFound= +for %%d in (%distfiles%) do if not exist %%d set fileNotFound=%%d +if not "%fileNotFound%"=="" goto distFilesNotFound + +set distFilesOK=1 +echo ...all distfiles found. +goto :distFilesDone + +:distFilesNotFound +set distFilesOk=0 +echo ...%fileNotFound% not found. +set distfiles= +goto :distfilesDone + +:distFilesDone +set fileNotFound= + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +575,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y @@ -633,12 +677,19 @@ echo Install libtiff development files or use --without-tiff :checkgif -if not "(%HAVE_GIF%)" == "()" goto donelibchecks -if (%gifsupport%) == (N) goto donelibchecks +if not "(%HAVE_GIF%)" == "()" goto checkdistfiles +if (%gifsupport%) == (N) goto checkdistfiles set libsOK=0 echo GIF support is missing. echo Install giflib or libungif development files or use --without-gif +:checkdistfiles +if "(%HAVE_DISTFILES%)" == "()" goto donelibchecks +if (%distFilesOk%) == (1) goto donelibchecks +echo. +echo Files specified with option --distfiles could not be found. +echo Fix these issues before running make dist + :donelibchecks if (%libsOK%) == (1) goto success echo. @@ -670,6 +721,9 @@ set doldflags= set mingwflag= set mf= +set distfiles= +set HAVE_DISTFILES= +set distFilesOk= goto skipArchTag arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-07 17:02:07 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -197,12 +199,15 @@ # # Build and install emacs in INSTALL_DIR # -install: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) +.PHONY: install-bin install-shortcuts + +install: install-bin install-shortcuts + +install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +243,14 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +dist: install-bin + $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + $(CP) README.W32 $(INSTALL_DIR) + $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(INSTALL_DIR) $(VERSION)$(ARGQUOTE) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle 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 IV2rOInFXvmxfUH+n4H/4u5IpwoSAj628uA= ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-08 0:05 ` Christoph @ 2010-04-08 17:51 ` Eli Zaretskii 2010-04-08 18:08 ` Christoph 2010-07-03 17:08 ` Christoph 0 siblings, 2 replies; 37+ messages in thread From: Eli Zaretskii @ 2010-04-08 17:51 UTC (permalink / raw) To: Christoph; +Cc: emacs-devel > Date: Wed, 07 Apr 2010 18:05:43 -0600 > From: Christoph <cschol2112@googlemail.com> > CC: emacs-devel@gnu.org > > If there are no more comments or suggestions...how do I get this installed? Well, do you have assignment to FSF on record? I cannot see it. If you don't, please talk to Stefan and Yidong to start the paperwork. Once that is done, someone will install this for you. > Personally, I think it would be nice to install this in the EMACS_23 > branch to be used on any forthcoming pretests and the final release, but > I understand if it is a little late in the game for this. I don't think this is needed on the Emacs-23 branch, since it will not be used by Emacs end users, only by people who produce the binary distributions. And those can use this even if it's not part of the official pretest tarball. Thanks again for working on this. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-08 17:51 ` Eli Zaretskii @ 2010-04-08 18:08 ` Christoph 2010-07-03 17:08 ` Christoph 1 sibling, 0 replies; 37+ messages in thread From: Christoph @ 2010-04-08 18:08 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Chong Yidong, Stefan Monnier, emacs-devel On 4/8/2010 11:51 AM, Eli Zaretskii wrote: >> If there are no more comments or suggestions...how do I get this installed? >> > Well, do you have assignment to FSF on record? I cannot see it. If > you don't, please talk to Stefan and Yidong to start the paperwork. > > Once that is done, someone will install this for you. > I don't. The Emacs website is specific about low-level dev stuff (bzr etc.) but I couldnt find anything on what I would consider infrastructural things, like the paperwork or other requirements for contributors. Maybe I just didnt look in the right place. So, Stefan and Chong, what exactly is necessary to make this happen? Thanks! >> Personally, I think it would be nice to install this in the EMACS_23 >> branch to be used on any forthcoming pretests and the final release, but >> I understand if it is a little late in the game for this. >> > I don't think this is needed on the Emacs-23 branch, since it will not > be used by Emacs end users, only by people who produce the binary > distributions. And those can use this even if it's not part of the > official pretest tarball. > To use it right, you would have to have it installed before the tarball is created, because of admin.el setting the version number. OTOH, that can be changed manually, the other files 3 can be copied into the tarball's nt directory and it works. So, I guess you are right, it is not needed in the release branch. > Thanks again for working on this. > My pleasure. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-08 17:51 ` Eli Zaretskii 2010-04-08 18:08 ` Christoph @ 2010-07-03 17:08 ` Christoph 1 sibling, 0 replies; 37+ messages in thread From: Christoph @ 2010-07-03 17:08 UTC (permalink / raw) To: Eli Zaretskii; +Cc: Christoph, emacs-devel [-- Attachment #1: Type: text/plain, Size: 424 bytes --] On 4/8/2010 11:51 AM, Eli Zaretskii wrote: > Well, do you have assignment to FSF on record? I cannot see it. If > you don't, please talk to Stefan and Yidong to start the paperwork. > > Once that is done, someone will install this for you. I finally got my confirmation email from the FSF, that my paperwork has been processed. Find attached the patch to implement the make dist target for Windows. Thanks, Christoph [-- Attachment #2: makedistw32v6.txt --] [-- Type: text/plain, Size: 37587 bytes --] # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: cschol2112@gmail.com-20100703170202-awaatn9wd8yi6riw # target_branch: http://bzr.savannah.gnu.org/r/emacs/trunk/ # testament_sha1: 1bceda0ab603efcc57222ea2a7aadc6be15a1092 # timestamp: 2010-07-03 11:03:06 -0600 # base_revision_id: eliz@gnu.org-20100703151530-5i45u5wdw8d3c7ha # # Begin patch === modified file 'admin/admin.el' --- admin/admin.el 2010-05-15 21:12:44 +0000 +++ admin/admin.el 2010-07-03 17:02:02 +0000 @@ -95,6 +95,9 @@ (set-version-in-file root "lib-src/makefile.w32-in" version (rx (and "VERSION" (0+ space) "=" (0+ space) (submatch (1+ (in "0-9.")))))) + (set-version-in-file root "nt/makefile.w32-in" version + (rx (and "VERSION" (0+ space) "=" (0+ space) + (submatch (1+ (in "0-9.")))))) ;; nt/emacs.rc also contains the version number, but in an awkward ;; format. It must contain four components, separated by commas, and ;; in two places those commas are followed by space, in two other === modified file 'nt/INSTALL' --- nt/INSTALL 2010-01-13 08:35:10 +0000 +++ nt/INSTALL 2010-04-03 17:01:17 +0000 @@ -403,6 +403,9 @@ Removes the installed files in the bin subdirectory in addition to the files removed by make cleanall. + make dist + Builds Emacs from the available sources and pre-compiled lisp files. + Packages Emacs binaries as full distribution and barebin distribution. The following targets are intended only for use with the Bazaar sources. @@ -425,7 +428,33 @@ bootstrap to rebuild. Occasionally it may be necessary to run this target after an update. - +* Creating binary distributions + + Binary distributions (full and barebin distributions) can be + automatically built and packaged from source tarballs or a bzr + checkout. + + When building Emacs binary distributions, the --distfiles argument + to configure.bat specifies files to be included in the bin directory + of the binary distributions. This is intended for libraries that are + not built as part of Emacs, e.g. image libraries. + + For example, specifying + + --distfiles D:\distfiles\libXpm.dll + + results in libXpm.dll being copied from D:\distfiles to the + bin directory before packaging starts. + + Multiple files can be specified using multiple --distfiles arguments: + + --distfiles D:\distfiles\libXpm.dll --distfiles C:\jpeglib\jpeg.dll + + For packaging the binary distributions, the 'dist' make target uses + 7-Zip (http://www.7-zip.org), which must be installed and available + on the Windows Path. + + * Trouble-shooting The main problems that are likely to be encountered when building === added file 'nt/README.W32' --- nt/README.W32 1970-01-01 00:00:00 +0000 +++ nt/README.W32 2010-03-31 02:27:15 +0000 @@ -0,0 +1,264 @@ +Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation, Inc. +See the end of the file for license conditions. + + Emacs for Windows + + This README file describes how to set up and run a precompiled + version of GNU Emacs for Windows. This distribution can be found on + the ftp.gnu.org server and its mirrors: + + ftp://ftp.gnu.org/gnu/emacs/windows/ + + This server contains other distributions, including the full Emacs + source distribution and a barebin distribution which can be installed + over it, as well as older releases of Emacs for Windows. + + Answers to frequently asked questions, and further information about + this port of GNU Emacs and related software packages can be found via + http: + + http://www.gnu.org/software/emacs/windows/ + +* Preliminaries + + Along with this file should be six subdirectories (bin, etc, info, + lisp, leim, site-lisp). If you have downloaded the barebin + distribution, then it will contain only the bin directory and the + built in documentation in etc/DOC-X, the rest of the subdirectories + are in the src distribution, which the barebin distribution is + designed to be used with. + +* Setting up Emacs + + To install Emacs, simply unpack all the files into a directory of + your choice, but note that you might encounter minor problems if + there is a space anywhere in the directory name. To complete the + installation process, you can optionally run the program addpm.exe + in the bin subdirectory. This will put an icon for Emacs in the + Start Menu under "Start -> Programs -> Gnu Emacs". + + Some users have reported that the Start Menu item is not created for + them. If this happens, just create your own shortcut to runemacs.exe, + eg. by dragging it on to the desktop or the Start button. + + Note that running addpm is now an optional step; Emacs is able to + locate all of its files without needing any information to be set in + the environment or the registry, although such settings will still + be obeyed if present. This is convenient for running Emacs on a + machine which disallows registry changes, or on which software + should not be installed. For instance, you can now run Emacs + directly from a CD or USB flash drive without copying or installing + anything on the machine itself. + +* Starting Emacs + + To run Emacs, simply select Emacs from the Start Menu, or invoke + runemacs.exe directly from Explorer or from a command prompt. This + will start Emacs in its default GUI mode, ready to use. If you have + never used Emacs before, you should follow the tutorial at this + point (select Emacs Tutorial from the Help menu), since Emacs is + quite different from ordinary Windows applications in many respects. + + If you want to use Emacs in tty or character mode within a command + window, you can start it by typing "emacs -nw" at the command prompt. + (Obviously, you need to ensure that the Emacs bin subdirectory is in + your PATH first, or specify the path to emacs.exe.) The -nw + (non-windowed) mode of operation is most useful if you have a telnet + server on your machine, allowing you to run Emacs remotely. + +* EXE files included + + Emacs comes with the following executable files in the bin directory. + + + emacs.exe - The main Emacs executable. As this is designed to run + as both a text-mode application (emacs -nw) and as a GUI application, + it will pop up a command prompt window if run directly from Explorer. + + + runemacs.exe - A wrapper for running Emacs as a GUI application + without popping up a command prompt window. + + + emacsclient.exe - A command-line client program that can + communicate with a running Emacs process. See the `Emacs Server' + node of the Emacs manual. + + + emacsclientw.exe - A version of emacsclient that does not open + a command-line window. + + + addpm.exe - A basic installer that creates Start Menu icons for Emacs. + Running this is optional. + + + cmdproxy.exe - Used internally by Emacs to work around problems with + the native shells in various versions of Windows. + + + ctags.exe, etags.exe - Tools for generating tag files. See the + `Tags' node of the Emacs manual. + + + ebrowse.exe - A tool for generating C++ browse information. See the + `Ebrowse' manual. + + + ddeclient.exe - A tool for interacting with DDE servers. + + + hexl.exe - A tool for converting files to hex dumps. See the + `Editing Binary Files' node of the Emacs manual. + + + movemail.exe - A helper application for safely moving mail from + a mail spool or POP server to a local user mailbox. See the + `Movemail' node of the Emacs manual. + + + digest-doc.exe, sorted-doc.exe - Tools for rebuilding the + built-in documentation. + +* Image support + + Emacs has built in support for XBM and PPM/PGM/PBM images, and the + libXpm library is bundled, providing XPM support (required for color + toolbar icons and splash screen). Source for libXpm should be available + on the same place as you got this binary distribution from. The version + of libXpm bundled with this version of Emacs is 3.5.7, based on x.org's + libXpm library from X11R7.3. + + Emacs can also support some other image formats with appropriate + libraries. These libraries are all available as part of GTK, or from + gnuwin32.sourceforge.net. Emacs will find them if the directory they + are installed in is on the PATH. + + PNG: requires the PNG reference library 1.2 or later, which will + be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll + or libpng.dll. LibPNG requires zlib, which should come from the same + source as you got libpng. + + JPEG: requires the Independant JPEG Group's libjpeg 6b or later, + which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll. + + TIFF: requires libTIFF 3.0 or later, which will be called libtiff3.dll + or libtiff.dll. + + GIF: requires libungif or giflib 4.1 or later, which will be + called giflib4.dll, libungif4.dll or libungif.dll. + + In addition, Emacs can be compiled to support SVG. This precompiled + distribution has not been compiled that way, since the SVG library + or one or more of its extensive dependencies appear to be + unreliable under Windows. See nt/INSTALL in the src distribution if + you wish to compile Emacs with SVG support. + +* Uninstalling Emacs + + If you should need to uninstall Emacs, simply delete all the files + and subdirectories from the directory where it was unpacked (Emacs + does not install or update any files in system directories or + anywhere else). If you ran the addpm.exe program to create the + registry entries and the Start menu icon, then you can remove the + registry entries using regedit. All of the settings are written + under the Software\GNU\Emacs key in HKEY_LOCAL_MACHINE, or if you + didn't have administrator privileges when you installed, the same + key in HKEY_CURRENT_USER. Just delete the whole Software\GNU\Emacs + key. + + The Start menu entry can be removed by right-clicking on the Task bar + and selecting Properties, then using the Remove option on the Start + Menu Programs page. (If you installed under an account with + administrator privileges, then you need to click the Advanced button + and look for the Gnu Emacs menu item under All Users.) + +* Troubleshooting + + Unpacking the distributions + + If you encounter trouble trying to run Emacs, there are a number of + possible causes. Check the following for indications that the + distribution was not corrupted by the tools used to unpack it: + + * Be sure to disable CR/LF translation or the executables will + be unusable. Older versions of WinZipNT would enable this + translation by default. If you are using WinZipNT, disable it. + (I don't have WinZipNT myself, and I do not know the specific + commands necessary to disable it.) + + * Check that filenames were not truncated to 8.3. For example, + there should be a file lisp\abbrevlist.elc; if this has been + truncated to abbrevli.elc, your distribution has been corrupted + while unpacking and Emacs will not start. + + If you believe you have unpacked the distributions correctly and are + still encountering problems, see the section on Further Information + below. + + Virus scanners + + Some virus scanners interfere with Emacs' use of subprocesses. If you + are unable to use subprocesses and you use Dr. Solomon's WinGuard or + McAfee's Vshield, turn off "Scan all files" (WinGuard) or "boot sector + scanning" (McAfee exclusion properties). + +* Further information + + If you have access to the World Wide Web, I would recommend pointing + your favorite web browser to the following document (if you haven't + already): + + http://www.gnu.org/software/emacs/windows/ + + This document serves as an FAQ and a source for further information + about the Windows port and related software packages. + + In addition to the FAQ, there is a mailing list for discussing issues + related to the Windows port of Emacs. For information about the + list, see this Web page: + + http://lists.gnu.org/mailman/listinfo/help-emacs-windows + + To ask questions on the mailing list, send email to + help-emacs-windows@gnu.org. (You don't need to subscribe for that.) + To subscribe to the list or unsubscribe from it, fill the form you + find at http://lists.gnu.org/mailman/listinfo/help-emacs-windows as + explained there. + + Another valuable source of information and help which should not be + overlooked is the various Usenet news groups dedicated to Emacs. + These are particularly good for help with general issues which aren't + specific to the Windows port of Emacs. The main news groups to use + for seeking help are: + + gnu.emacs.help + comp.emacs + + There are also fairly regular postings and announcements of new or + updated Emacs packages on this group: + + gnu.emacs.sources + +* Reporting bugs + + If you encounter a bug in this port of Emacs, we would like to hear + about it. First check the FAQ on the web page above to see if the bug + is already known and if there are any workarounds. Then check whether + the bug has something to do with code in your .emacs file, e.g. by + invoking Emacs with the "-Q" option. + + If you decide that it is a bug in Emacs, use the built in bug + reporting facility to report it (from the menu; Help -> Send Bug Report). + If you have not yet configured Emacs for mail, then when you press + C-c C-c to send the report, it will ask you to paste the text of the + report into your mail client. If the bug is related to subprocesses, + also specify which shell you are using (e.g., include the values of + `shell-file-name' and `explicit-shell-file-name' in your message). + + Enjoy! + +\f +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. === modified file 'nt/configure.bat' --- nt/configure.bat 2010-01-13 08:35:10 +0000 +++ nt/configure.bat 2010-04-06 02:16:41 +0000 @@ -89,6 +89,8 @@ set doldflags= set sep1= set sep2= +set sep3= +set distfiles= rem ---------------------------------------------------------------------- rem Handle arguments. @@ -110,6 +112,7 @@ if "%1" == "--without-tiff" goto withouttiff if "%1" == "--without-xpm" goto withoutxpm if "%1" == "--with-svg" goto withsvg +if "%1" == "--distfiles" goto distfiles if "%1" == "" goto checkutils :usage echo Usage: configure [options] @@ -129,6 +132,7 @@ echo. --without-tiff do not use TIFF library even if it is installed echo. --without-xpm do not use XPM library even if it is installed echo. --with-svg use the RSVG library (experimental) +echo. --distfiles path to files for make dist, e.g. libXpm.dll goto end rem ---------------------------------------------------------------------- :setprefix @@ -226,6 +230,16 @@ goto again rem ---------------------------------------------------------------------- + +:distfiles +set HAVE_DISTFILES=1 +shift +set distfiles=%distfiles%%sep3%%1 +set sep3= %nothing% +shift +goto again + +rem ---------------------------------------------------------------------- rem Check that necessary utilities (cp and rm) are present. :checkutils echo Checking for 'cp'... @@ -513,6 +527,35 @@ :svgDone rm -f junk.c junk.obj junk.err junk.out +rem Any distfiles provided for building distribution? If no, we're done. +if "(%HAVE_DISTFILES%)"=="()" goto :distFilesDone + +rem Any arguments to --distfiles specified? If no, we're done. +if not "%distfiles%"=="" goto :checkDistFiles +set distFilesOk=0 +echo No arguments specified for option --distfiles! +goto distfilesDone + +:checkDistFiles +echo Checking for distfiles... +rem Check if all specified distfiles exist +set fileNotFound= +for %%d in (%distfiles%) do if not exist %%d set fileNotFound=%%d +if not "%fileNotFound%"=="" goto distFilesNotFound + +set distFilesOK=1 +echo ...all distfiles found. +goto :distFilesDone + +:distFilesNotFound +set distFilesOk=0 +echo ...%fileNotFound% not found. +set distfiles= +goto :distfilesDone + +:distFilesDone +set fileNotFound= + rem ---------------------------------------------------------------------- :genmakefiles echo Generating makefiles @@ -532,6 +575,7 @@ if (%profile%) == (Y) echo PROFILE=1 >>config.settings if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings +if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles%>>config.settings rem We go thru docflags because usercflags could be "-DFOO=bar" -something rem and the if command cannot cope with this for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y @@ -633,12 +677,19 @@ echo Install libtiff development files or use --without-tiff :checkgif -if not "(%HAVE_GIF%)" == "()" goto donelibchecks -if (%gifsupport%) == (N) goto donelibchecks +if not "(%HAVE_GIF%)" == "()" goto checkdistfiles +if (%gifsupport%) == (N) goto checkdistfiles set libsOK=0 echo GIF support is missing. echo Install giflib or libungif development files or use --without-gif +:checkdistfiles +if "(%HAVE_DISTFILES%)" == "()" goto donelibchecks +if (%distFilesOk%) == (1) goto donelibchecks +echo. +echo Files specified with option --distfiles could not be found. +echo Fix these issues before running make dist + :donelibchecks if (%libsOK%) == (1) goto success echo. @@ -670,6 +721,9 @@ set doldflags= set mingwflag= set mf= +set distfiles= +set HAVE_DISTFILES= +set distFilesOk= goto skipArchTag arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2010-01-13 08:35:10 +0000 +++ nt/makefile.w32-in 2010-04-07 17:02:07 +0000 @@ -23,6 +23,8 @@ # FIXME: This file uses DOS EOLs. Convert to Unix after 22.1 is out # (and remove or replace this comment). +VERSION = 24.0.50 + TRES = $(BLD)/emacs.res CLIENTRES = $(BLD)/emacsclient.res @@ -197,12 +199,15 @@ # # Build and install emacs in INSTALL_DIR # -install: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) +.PHONY: install-bin install-shortcuts + +install: install-bin install-shortcuts + +install-bin: all $(INSTALL_DIR)/bin install-other-dirs-$(MAKETYPE) - $(CP) $(BLD)/addpm.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/ddeclient.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/cmdproxy.exe $(INSTALL_DIR)/bin - $(CP) $(BLD)/runemacs.exe $(INSTALL_DIR)/bin - - "$(INSTALL_DIR)/bin/addpm" -q - $(DEL) ../same-dir.tst - $(DEL) $(INSTALL_DIR)/same-dir.tst echo SameDirTest > "$(INSTALL_DIR)/same-dir.tst" @@ -238,6 +243,14 @@ $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../lisp install $(MAKE) $(MFLAGS) $(XMFLAGS) -C ../leim install +install-shortcuts: + "$(INSTALL_DIR)/bin/addpm" -q + +dist: install-bin + $(CP) $(DIST_FILES) $(INSTALL_DIR)/bin + $(CP) README.W32 $(INSTALL_DIR) + $(COMSPEC)$(ComSpec) /c $(ARGQUOTE)zipdist.bat $(INSTALL_DIR) $(VERSION)$(ARGQUOTE) + force-info: # Note that doc/emacs/makefile knows how to # put the info files in $(infodir), === added file 'nt/zipdist.bat' --- nt/zipdist.bat 1970-01-01 00:00:00 +0000 +++ nt/zipdist.bat 2010-04-01 01:40:58 +0000 @@ -0,0 +1,66 @@ +@echo off +rem Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +rem Free Software Foundation, Inc. + +rem Author: Christoph Scholtes cschol2112 at gmail.com + +rem This file is part of GNU Emacs. + +rem GNU Emacs is free software: you can redistribute it and/or modify +rem it under the terms of the GNU General Public License as published by +rem the Free Software Foundation, either version 3 of the License, or +rem (at your option) any later version. + +rem GNU Emacs is distributed in the hope that it will be useful, +rem but WITHOUT ANY WARRANTY; without even the implied warranty of +rem MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +rem GNU General Public License for more details. + +rem You should have received a copy of the GNU General Public License +rem along with GNU Emacs. If not, see http://www.gnu.org/licenses/. + +SETLOCAL +rem arg 1: full path to Emacs root directory +set ARG_PATH="%~f1" +rem Path separator cannot be parsed correctly, substitute +set ARG_PATH=%ARG_PATH:\=;% + +rem arg 2: Emacs version number +set EMACS_VER=%2 + +rem Parse out last directory from passed in full path (arg 1) +for /f "tokens=* delims=;" %%G in (%ARG_PATH%) do call :PARSE_PATH %%G +goto :EXIT + +:PARSE_PATH +if "%1"=="" ( + goto :ZIP_CHECK +) +set ROOT_DIR=%1 +SHIFT +goto :PARSE_PATH + +rem Check, if 7zip is installed and available on path +:ZIP_CHECK +7z +if %ERRORLEVEL% NEQ 0 goto :ZIP_ERROR +goto ZIP_DIST + +:ZIP_ERROR +echo. +echo ERROR: Make sure 7zip is installed and available on the Windows Path! +goto EXIT + +rem Build distributions +:ZIP_DIST +pushd ..\.. +rem Build and verify full distribution +7z a -bd -tZIP -mx=9 -x!.bzrignore -x!.gitignore -xr!emacs.mdp -xr!*.pdb -xr!*.opt -xr!*~ -xr!CVS -xr!.arch-inventory emacs-%EMACS_VER%-bin-i386.zip %ROOT_DIR%/BUGS %ROOT_DIR%/COPYING %ROOT_DIR%/README %ROOT_DIR%/README.W32 %ROOT_DIR%/INSTALL %ROOT_DIR%/bin %ROOT_DIR%/etc %ROOT_DIR%/info %ROOT_DIR%/lisp %ROOT_DIR%/leim %ROOT_DIR%/site-lisp +7z t emacs-%EMACS_VER%-bin-i386.zip +rem Build and verify binary only distribution +7z a -bd -tZIP -mx=9 emacs-%EMACS_VER%-barebin-i386.zip %ROOT_DIR%/README.W32 %ROOT_DIR%/bin %ROOT_DIR%/etc/DOC-X %ROOT_DIR%/COPYING +7z t emacs-%EMACS_VER%-barebin-i386.zip +popd +goto EXIT + +:EXIT # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWarlDAcAIA5fgFg2d/////// //7////xYDY+997z44nuPZ9y332vp9ZvccoIumVA0ynd6+vdhz0vca9r1MKR8SN3ZxaDClK+uh3b 6N7eQCqe4fRW91rs2gt63XrU3ecedq7vUpzr14vfb7L5fPeTe1fe9Lue+PcgqFRR99nQK2KtoIUj VttitKNJWy+7V4L33unN493bN5shKhvY+EoQgBBo00yCaYp6ps1U/IYp6TJ6k21T2qfqTxJ6n6U0 aBhBKCACaE0gqe0pP02iU9Nqnin6iNNDEAAAD1AAGmQQgEmlP0TRkT1T9UzSZMgGmhoAeoAAaDQB JpRCaKegTKnininkm00nqaaGnqZGJoAAaaDQAARKE0TQJiZGiMiYJ6KehPTUwTCaJmUwGkaAAEiQ TQBAQaCam000RlT9UeUfpRiAaAGIAA9TEtADbBCjdnv/KpUgki2JhP8tL2kDDtn99SY+j6CddvGw D+zPl/vZg5tBU8wz+GOtmc04Jq17T0fu93v9Z0cFJfcBZNgDAGW5uMxiDpSQf6/Xa+VVPFwb7xfv P/JrH/IWLn/A9D/s/2GKd1prI+GxrGhNEjvTKMbJcoqoIlvI++4esHjfmGv/isvq6croow1kdzDS URtujW+L/c198YJinZG3ucDua1yEipqjieCMyEQ3kRGluOeOTxr7iXL58uuy3tai8y+DM9nb5f4g aaq4Iwaro+emHHacdRQJz5+D8uapJ8gbxoXg5WL1lPHhowC9XpTMPGUA7BmfzxR2R9svyxUi48ZU mEu7C1MDhrdn3/O113bAheZaDR1ZJjabS2zlIzcNGtIBtFzSm0gqwudY2vh1nffXQsgRWGNDG2hm nXpHX5ekmqrAwCGljgpMDkabRLLeOMAiSMChwzBVc1fA5YpWlnyOSTREmIcs+VpMB8LMNJanGHwX QJFzkVyyZhN7AUZhNmSoHHApl3bkmiLFDURS4vDh/r+HC/at3q1vHfhnKoruFM3KSuVfmv7LTpO5 mZpDe0HhZK7BTP4Kx30NMqlDOh4+ZxfzsZMWD2/C+kb8PXkPTjYS/HTNVFFmjZ475wz4aZ430/Zf e1s0b2GMtRV0sk0BkLrmRlOjcdl/Pzbnqm2u+3Cz2eBH3ICHznJwU2X0HEQLoiiQGQDxcDYvr82k MqkmolYsUrVrUS0lBVWWlBUBF6WxEVRVUWsACRFkCR4mwhHamrVlhu3Toyt+j7zE5SCMcFTRbNCe a/8vKfZ8Ycz8Zifnz1VWYCzFNiVWIb4yPPCDMv7RT6bp5nYG8OSZwqCYASVi9xLjWaOb2HkRwMOM 7bf95aPF/9hrHI68xDo8lexXwF4woJIkiSCSMWEiqKEFRET5+3/sgGfifjxAx8Xdn81BHHAMVeAw g+yCG2MbBteH3Y2WWH55/nxx0SutDcqpmHMUMXdgb3ehTZ4Ah4vT4phNUh2HvAFROrfR253QO883 LycPAfaaiIb8ywXK1VznFqUYsCEwuC8IXLg5oIWCCa12LjkmYJAqPKDkxiijjXrQltdLUvyfm/Ur GrZUGcOyKRui8H0yIkoCjkXD7raZdoEX1MgUWgndYhC009osREUXdCXp94v2xmX93vv31rtdtHpd hVHLE+NNqiY0Qn0oWn6dR0gdRrI9lgfUKvxuduewTn6G/vYytiy5D7yg3JHwSL3VEZ/SPl0r5o4x m+3unB+ilK0i3axP+ygOH8eLLfX19ZlSdO2OLqo2Nss6i36JXJn2FNTRIgopLvUqKYIg7+B2yJH+ b9iBY7x6zKfMwIBgUeQrleXCPMNryAL3ZWPIlkFp1kJjQacOnd3Cp5G2dLR0mwWIGFq1F+aiibhh NweTENTRADia4USBM6wv8jQLKOTv4b6OPT7EBMMt1S6T9ess/D8IvqJOYnyEyM8GyrpMQ+KisiaC 8CNsvtyKv4PY8H2ZY69MqN6jlXPafm/Vf5Mdnh0ae7CGu22Ae13NpvUWQ2+sDUFl97XZ/OlZQUmK vuHzPoc8tN4KXU5xhOFKQp+On2w083Ya6nyct8ZXx4SIDI8BmLKzylI2k7Ah26r6AmCSeiRoaPn3 /JWp3Bw/ZltOl+lXOZerFLO5DHFx7ea0Xxs3ImqXSL1pYfStPt2xG2NkmvS1vBlUk+L1qvYqRhOb u1HR8GmNEPhk3iyMs1q+3T0VFjlR8dLzxEKKkKAK29tTkEjYjFVmzvLP1ZZVZm5pK6tGbp0ezFLz P0329KeGSwuOf09B4ehhyePyLWdvVju65kvjWNCDljmZ4EO/dhKtHO71NvwXkdx7Dk0DmwLMERfd XNRkVx2RxtH4vZ15Mbc8gNoF1NPMw8OYBCXVVsq9snhmCabfC6cEcZ5Zi4CtRtE1LT3IRpAoQ/rx VkyxrftC+PoPAt9pLjZDZV7VuoqmCLcqsYbZ9Y+3sVjZ73qrS8vC2Prr6v+OfOvm54zBT1SmS4hE uKBGDlGWuA42NJAbjjyPeNg1SveAfDafVC04OOppNQMC+Iv1YIKuy2edIEJjQwwi+o0sitI4sreF mFHm/ECmIxgvnolyXjWrtrJy3JFATN6EdgyE1eU2MnN+i2ETdWLi1blL6KiFImUDDR1z4mtN+zTN IDeQva0vzMX9T+ssKnw6bb/lf3iBMng2yvZuVfhzlFQgk5KOvvF9q+lyJaFoHsT892U0wJZBSL52 mBRAsHH3xWt7aZWlLnknd6NBvtamKLRcDQ26jdTtKq1b19h5/M5++WpX2blZ/d+v+38ocy8F93bw Je/vxUqbkHgqPs6+AgQcFn53sQS1nvRCF4v7K9vwySXWKYusQhDhTPxjteV6kanwxepLxmQhRqSh phvgFqwgbdkESEK09FTHMvW0djrq+8GTBP8Ly7FVJ3y8Ik+1rfw/dKuKrWitlfJX8QW+RIPUYtWM t41VuBod5upQ52tecxdp8Dlo/Ocx69KW3h8oSUteO6imD0tre5GzggNWZcmS+AQXGLBQlpfG9mY5 Uyccl5SBo4cLthy7YvKFZviCQqknlHD/gVK3O60taULTtOl5eBXGzyrcJKXzs986ksNtuXGmQrKx SxpgNgp+mK5E8sYGW75Txes4OxLiziLDe2mUvUO14I7YlVrXv8qa8/vWsU77XkRZ83+Jt4/He3AE W6ay7xbFqHd5tmRK7cfQtYRndfkuVja1FO6spmGpRqXn+ZPdFCw25uz2ndDGY2aRQkzy7neak7Qg I7awmLIE6lKFnC5wQ6PVk+sCUHH1RFa/DPxdS407jr6oOB7isSWY0WZOzo5Q+W7dLjVlXG52L/HT H8X015mtDkFPPbf6/KySr0/y7+h06sL7PR7u98YvYEnFihDCw26mmxtDvEwfB7J5PL0WV+GrVfyT dhHskN7+/QaEFHOrqe/f2sutfRPktz7Z5sL4TYtSf08wMqIqn2qaVqqE5fWd3X19R1b8fPz9XPW6 2LIIkggSSIUNhFFZhDZwZO/fw+3lz5V02rlmMCj8XL97pV+vwMIUKiNkPRzCvf9jjXrANhDJmanZ /AQFXz4Tgy7zTy48feOp9XOaYPC+x8DDJxiqsEPnEQH+VgVUVFD8VBPyU8uSatOa339bM3CeKPwN JInD8y8gefKWvKad44NSCvlxlv8b8U+nQ6rGHHNnLRDk8ky6PFUQ6zJRTtxN7dxMdpxPsPUdp2HA +sq9ak9OfuwmmZYe5XuJByt18Yc753bGQkPps3RR80TDlFThi7oDPPpHhdQzH3PY1E1kWt03+LVX h9Z5wZdKfORqxPbsOBDpEd4VE2C0CgB7Q4vnKhQVLsBLMRGBB/JSovA816iKyQTAPehT0W2vqXZi +hU1RA6GvL0E56QenDyvgvLMitgda0+j1iXcjUY7ShdTwasAHYrprwDqzDxqZ3bnSryBtt8TgdCI xVlpbs/gg8XRrKUSfVwlr5a6zH0wwdZ5/G36p3jbacUh4xHl73naZofoigeLEhC8COt1ZDkqIfyS nQdWV0KV715xY1lUlVfhllthtiTChy1o6CxwefoKkOGsByZeU27Taq7dy744nPht6XQi7C5ChOvI GRFUVUEVBW1akUBAIGgzYp3INW9uSCv3wVeKTCLTot4lA+o2jn0Xp7IuZJ1RxxLiYxk/14+dYS1a RPY5WCyEOsGQ8QMYgNsTALj4fiOSrjj848mYV+jbaSLhQtsttq0tstWlq229I9rxN/c7fcM/n3vb oRiXEjhrrfeevkUwsYrBF9Oq28fp9gL16HxpMTY6/CXuADRgepmgnFODAnBKw1RYAmKrqg0gh6sb GhTv+sq6V+TAMstNYuyFAheFJIiBCe/S8ShYCaCEJ0SGC6jIiGtBoGCtG14I1WSSH4bscSLgOIJE MgcVGy4VqbVs2S7dIrBi0UdBsVOooXVEIV8IUa+O4mAKheeGBO9jvKpP7TPNwUSVKFeiSnrK+hMF ZrGZUnnnUuLIIShBRKEG57ixud07jfetmEioxAqVK2zmAjNXJIuO+2Bvpcb2fQHwQOpsUic9txuF tuOnhnuU2A7cjJGhvO4Hir2Ibj1iHM9/gQ41AC9NactJE2BAPV9dO0kXViUoCcoS7/Js+MgDCzgV XDQXNuGmmS4zMic34c9MdVtDr4nQa0dQNtlryoTmpcK1BEIc/61QeVIZKOJfWby+g9op3aPiU69G XA4gDWxuiIBjtDWAOzYY2V0G07tin51OhT6fIX256z1Z12BrYckqx7iHAs+0a4WuF9nEeffjxte8 5OuPWW+MSgiEBEAKF4nNxtsIcKhq6JOweASjuYQiAJBBeEEV0YrrBaXEqvlMIgRREtwAhiEd3jBe PNKCFovQUqpyUtcNw7NGyo70SrsLtMAh4g4Zar7Do5qacOVrA42zoy2k314K6UTNCLxxd1GtQmVF JVT28FIbpLab2G3+GdoAbgCS5EQo2RZJUcWcwS4iGlRCIgLghMucIPsTlEmULeQsGK72kePYtQkT qYbru7kCPp5atnctsdFnH22zGQqCPJcTK3HIzo7ScqDrECo0eNwRS7O13ZvXAM4UG7eLBqIkZNc7 GNw3slIHhAHxcq6IWBEJQbxeeZKI5ADoucJZCayUZ9MGhAGKRcC1uLayvhq1xIzm3IGrCbQipBrX RxxNsuPLsM7LXteiWczfAaM0JjxMe053zRVG46fN3HQuovLIjhyUeqsqqHdRwjvd0lzhrwKMwUen kZXqgI85O4g6CD+8Es5jqNZsvPYZ0RAg9qUXtbFEBIcsMoVmldII1bMkiOFpNjqRLiR3WQhaCSEO +xxd21PySWpqaXXLmfIiW00wh1b/77IZKY5OOSEsepgPFfSdpsktLv1ttV5Kw1tDmxQ6kOMzqcTJ VN81rrejAxUP2SJJZJdxgZaUsq4jRTFUB8uRyNjdUMnKyQqGc+rDAkapYOChCowS6TXA0/8DSM5f RB8sErACrqUSNhgr6DrU010SFPi+Z4GRxJ7eIZmT1368KQDMplDDUlOuKe2EDQphzOCU1OypucEC q24LRmd9imdWfnJrakDOcUtk+AaKEmxhyvNW10wuER4IoeZtW5JMBsm99uSDl8mTgmqdQHycNQ2Y WVPNlS9AgThUXWoaNqFCpU2KZkfFHCaJOmz6VFstVfuK+zXgozDULE5E4kRlNJEyVLF5ZVnfjvok YMClbWQIILFEk3REoKAO+GAQwWKkpRLBgE56WSCXHNpyJZAE7e5EFjqfxR24yBn0UpnbUDeFE598 7G83aLyfmGl+kXUqy6N5mAKKslHsTVDftUJD2HQQqb46THsTRAKUtpyJeKIvmcjQLk5hQ40P4nma lErA9iTimOcvogUTcyYGnNEojlIb1NqjlEjVJpGqEsBlxgGKqYmw1O2/dKRjO1YLXMaMGKjE9iNM FS7Jyie1Gxc/EKh27xsnAa0vFJh4W8B82iZUPSEINn1GWAhoYMMreaoCuI7mTuclOx5IxIrzvY4C KAbpI8Z8OilTro8DbJNenKuXDM5rlEkCRkSRJGQJGRh17tptpdfFLBW6cE30qV6GTKZNKZKolWyX IUcUylIhwdvFPA3sWkFoGJHMOhDBwR5iduEsxmEJkSxxxaBOOCPP0JHsAXENIiZXRBh0pQjxvrL8 wuXlMkwxxE+PpkvHObcCi4KMaiR79jdrXUpcqiJ4+YAszXDiqJpWXzAF+0oOPKt3N0oMzZOMYa1S rCSkmsIeHsRAIKl3BcOA9tWYQA2nJ3iiS+lArGdK8cSsk/GRTj3tJRSelfKCaMil5GfERSGiFNsM 7Y8klJNQCRCykRdLkLEiuJ6yON7wslJbLB6eyJrpVJ1ffoXl1fkskjGDkhTWLmtRtbOmD0RDYRE6 3LqS3LdHhdKG3EecOMXIEtEeu1zVZm3axY3UZ+YHR5IGkROED4h6J9AlASxZM7a8dOV+le1zAp8S KmIuC8siJkOcdQ7oCYDGTM0e7LEjZW60KKwohMYVXgaNurLJcUTVRDJ5E94wc8BSdNwVgS/4HJQD BrVTbBrNKwhVKFgevProUviIuM0zcTnkzByK5E7mUGwzTSMqsrkVojRlmZXwLixHuSzI6JGQCKF5 P2cRwY3IKNua6lzI50Q5PeGqliHVNnMDluipUATZMJRPy+aoeRXfrLEJxdjd5YUVbd+GAGpIdASq i7QTjxQSfBmQ9ZKjWpwqbRlIjJOcloIG0ReqhK/lGJSxcvPE0RIKlxmOZHI1rlCQT9oBfSlpJlTK pTAaqgiyTvanF2LG6i4ib7RpI28vKY8Lln3Ni0sxQfhXeKZRB/NEKHckbbULm1ckDkyWXc2PamTi 5g59yCHHrsYGi0HWipH6UELIJ8xEogmROZTMzWvpIk33THIJNgm+nFIvNus514DVQBdsbKpU5HTp nc77EYACi1KCJqCZeosyarY2f0KR4jOHoJOScRySOY0YqTHPMrUwYXFY7K2NVNZq9W0epPQqk9ii mtzsdt+9HJE7GZdmwPsQejLRHhjRQ20ic+giC9jg3iT37TJ4tA2dvFE9odcHbBrk5DjRI2eZCG5k o34giibkEGEwYfOvqbW81Y90lcX0VLmb4HsKSgD5GZKLEQoqaQd/cerrO2tZ2W75ovhdn2an7dQa lJe81Ka0R8jgZsuXCU0jE1KYKYUspZ0Ka1LItVKAJFKg5BTBF0IJlmpFNvb5eR6TaptEJFPF3/h8 3ha1KbskkP1T80ec4ncp4kKMBkY8SiMGHngsVEWIiKuJIVGKkWPl1TKbNcvTYV/X8pb9XADoB+tA jPjZ9J959CnDf194IPvYgGAfIOzEMXWJ+w+4f1rPCqs5nMue1/ifqOBY+0/EXJPot6iIc+7yJzSC LIwSEUFkfmPx8fL3bkOkt/0MR6u+f9M7mORAxsn9i+Vvxg71JMdlTqIPzZIBgVM0Sc4GM1IkNBkm yaD5ZiJCxEmiuFP1sCiLLNAJlmKy600d4Fxd8JVvY5FUUX5FA5/CJMEoYIO/y4+WuYnadIo4DHul EgyMiQ6ep816cCYtv2crjxbaBvU5n/EggGg9DVB5GhMcHNyMCAxILYzOO4UvygeA3YbYxekmQKUP 3A5UEDaHxMjwMACzSOt8Dbx9+4dhd/I9gHbxgqkr++yCupDqOfOX1Ju4r48t0tB8z8FLBaba7Shp Yr9CYAoqEBiQk4HBBsBjJIZp0MxYAVPGM4o4tKQCIxyhTMQmDIjyxFVVS3Xq/cd4mvDJ4a2rFSo1 FCS5dh8n0KhBWgMBPh9aTm7yDXBM853iu9Ct7B2GBMgoxIULdUIf22evqMgMdJPPpZE+VDY+1JMD NcEboBFmhfe5MChkzyjIvRCSzGG9BU0Ovr37UC8i8AvCXvzEtmkpAHret5+w7iFXyxLEg7BthnRG PL2rijZY2PYhoKNAeIzBD5JGZ8BjNh0Ls7vmbENYfJSMifafE+2S1fqe3/TcfD2cEl9qBxM4gyQR SkLvCfWjibV4KQCgBAU1/VUEPUcYQ/jBaRJEO/w+/4jpAEHn8z3noHiA+Id7Yj7nyEh3TeJKR+J4 rQqQIlnmqf1FSUFUp/gPepUY/uSdz1GLbE4MYYoJ/f/UTfl76T5F66dGh48+SwkWEUSiPQvSsuGL 3nE8NMPd0fpe6wfDBKqqfyNZgdWw8xrD7o9xX+s8UNQqMqSDzLWyMif2cfadeqS68uHBUhpDxQI/ qC0pH4cSwAh+QxKHpoU7J17mwFfvogGY/S8zW9j54Y2OvSl9aVjCGFEl7PTnge/oB1mlxcFHJT+R YyxIhJzpRK7C+ioNfnuiUBgmMdwdqsE6kvWCqJg2EOsQLw1Pj1Sr004cTVmQIMIkJAzXKuKIG2hk xOjfskaGc+mJ54XpDBtq17YDGcrBsfJw74REQtdcyO+aym5hxsKgwkNQRBuISREwXZ1dWMOELxMR AxjidjBQWbBOvRuyLNr2ZwZzwCA5xjzCRo/QQwolSIju0Sv7qMWDmUdNsdB3Ll2nNzSRSsfaWP1u /0xsfUaLFBs6sdjdjJS+42WqULVJEImMfL3py5TOxOm5mw24ibmeTz8vRUPIU+IiJv3yleefUZLj tdW1Au2MymxPj1cj3I3oL2m0fyMURCxN5jvykUXMaDvL/luKnA05HHkdnglHyOtM0TcgiRI85yHO JoP7jUwBsF1MDZOBGgfO4mjvxG763DyKWA6yvv20xDA1tULRPXCzU9tSqAQuJ92kAaiebSX4eGgR XpsPoJSasZfd4HIcaA3HJr0m8mykOQiaMhIz7xw5IbTaa6KB8civn5STsUC4K7zzPTALzZJVKlii tPGSnbJBTWiaUZOkmnlyaOClq9aiJ0osH3KqiOz4VqM65xs4ozmOHXxKnK3M7xlCpyLo1p3tqGOD aOefY4jYn2ztoMZjVEIleiap8dGsaOTDm57cpsu6oGnRBvBE+w2FJHedzm71C3MUA7AdTbTAb6fe 0KyVhGQSgMSxsts4ed3XDsT3sz2QkAYHffap6f6YWM6Oon8yPsT1JEoWIL37Aom1OiBIaRm5DPA4 EYcwEoMpEo2CWhSxKRKDKRLQpYlgloUo0EoSn/ql3UXpSQRy8iZ9lkI5PaHoWybO2fZDr9Rp5TH2 NMxEdEospYDLAWNSzmkw4LXawKzDUqMpfM0BxQzgojEY0A0xP32glVlcQiaB+vtkcDWvrwSMsvgb qnuxzmVI7eVVS157x+hbU9VY9TM4X2D4dyRcbGCw6M4Sx3ERNmO0djuAhzm6x0ivxdEKn5BH3O/e M7h48jdgcUkh7/mt8arJU7wGDmdRuSyNDFcjFNmJDKZjX7oAS6udRGZjBZAzZsLzLUWR0unspVnE Ipky/nCuGw72ndIWnb0n1SwtdehJ7x+GOt0GlA5sWRJ56If8QM1O8O1rJ5YxkCB72uK1hPZJKfTC 6V+EgXkmBsKKsB+XsOlzFOoHh40T6XQGwguKSKHzaElTlYyU1PXh5fQswBZh8EdmLhfD6RN/a/w1 LpLt8SL+Nt4pziLnVmIR3cTncbV89DCaAyTQMUDt52Gyb7Z7zkvoCTldNfBEDFwzERo7ziYsMaO2 rNjJxQuUWzaIGhNjChGBjPOFk9JhYZdpgOpfnBNVIkKjuZhfELCVq1M4hOGLKFSd8xkFFsQXaYUl G9ICDDxGYQly19dfj2QlsbekcOdACNULnMiLHVzY5X1fMmVBgDeBLK64Jh6yv1SpGfjkhmZDY4hf nMXeBlnhkwONMo9FvSSIEO4ftTkRoIERuvqrPqJOZ9fCySa6vz9dlzU1C8xConGhx0CEacVIjRIS ZDK+OOqiuIyHRly0Vx1vUzMqllEktitJWzS1PwnPfwMVj1zPqY3UmFGVOlGJRmbLW45I+4qXxy6a w+oQ7ADqSO1LhBeRIsJJEpIPMmCYkEMkE2F+nAZ5blU8p/I6zE38DPgZL3vgSy5xVUPs+aCw1+TD peC3pBFy3r2wJtAU8mAntpvG1obzCWXoyEPfzBX9ajBdpGPHK71cYjOe8ic7ClUNMv1Qx7wUpSs7 6tYvHehJ7O7t898u4eiMp6mqRx+KmALagXQfjIYEEjyeZ4np3hvaXMJuoAre1I93o+67fnr4c+32 9WSRkkeitw6Zlx83Ipc2AkDbufMeiBfvIHe1pj7F5L1qYljIzNfj1CYuTDPukWrVy6J0Q5DUt9Ln NGQRBlmpXUO0xQ7EQeJGYbjsjtXEZHWdUT7hceKPGsf3tsXb5UvEJzcCtT2cWjDpSplFd5L1I4Oc uo71Fp2pvtdhGFJBRHdLzWBZE+qQfHsj7oyyH/GL5Kec8tki6+8784huEh3xTBAs+7xIBrMBkCGn yYEVXO04PVJwLjmQSwHPvgI2OnBhEBYkU9rYLPVKzIQ6Ct7fLYHmhncDvndIZX6HTpCsjtztNGFY LmhigOwjq61w/WmYLNmCA6KooiWurWgWMFknHOANwfgFsVaWlUC7A9JtDmSPfYFmq9giC7kpChET lVTi42s0NjoBgUyqpmdVjhpXUwCGrnEccDpDeSzyrwvDwS2sY6aCQpyRhRd8gISv6u6AS+Ez5CxY dUfA9chy8Ap42he2hiERUn6ykS2MI1saqkWKHAg7nGOPo9P6+oqNHE6DZ0FEGSCRsMiJRD0Dozak kaWYdFiuq4PnAkfZ93zoLEpqZaBuT+zdWEKG6lQBK5J9iTOgmpDFC5QwVK3GS/t8BYC8cUSxG225 Cw5O+CkTuaKSFL2VBE3zfOvzZVXAE7er19hyzzpwMOBibOi4rt3oYoa1bIeYU4/YIQPS8kpZA98g feMwh7QLIoAoogxBVSIwiHwQjubgWGqoAbQYTskLAUAD3wbprQ9qJX0fb1o5tsomakNCGZ5iB2ON BKwXhGkjBbREiNqU9lYEa3LLQPjbeRy8zhQbxEYSYZtSxKylKZYPsRK6bBdxOVd93QGvmr/cHNGw agz+oBAzDpNFVIvHAOpjJEgSB43qSBR07k2uvWnMIe6HtHkntpPWEZRfeaLWw+hahhChMBgUBhRO SHsB84eNt8rdxyEXwa1DhGFAEJ53rA1zCH5UJFIERAim4eh22/WbqKREOBoMPJpPIJufJyvcxVCV oilW5MeuEMQnGbwucRhqIggqxFpCQMITOppQUgwvRJ3gncGPO+l9WDyB8KvwIoaFNT7tQPrD2Pev iHxeXGGMKP7oyUE7WQLADnSYuno+1pB6uAYQT3ITemqlWnSHg6OhT+CqdD4+G423U6C5NJDtdeyw 7QzheMmshFLadpyWSQZ2QDsoXNormhV1BUzCzpK1PHDkTLAE1/CqIeCG+wjpQALDqKSfKwUkFkiy CjATU598ziyDawaB8RvbimqhsaeypHGHCFWsdsKoTlCjEsUKIFVp8QPArUKDNk605Wqff1UKRNhm O89iCUzTORkQgdG0k28/RiHAixo+ru1cQfRyI2eYiFA7Atg4gI113HnwIkcaeiLmEYuV0rWtdm8q UkjmavfBRrcfeQjg0xpE35RQKQ7ezzqeCmKmB06wkWEVgQJBYDCRkiLIpEIRDlyJ9Yf2jGI2PnB8 EIewTv7dufZ83zaeHpVUYLBgjEEGRjJDguKc+4uoOqg6cm7+xtSQIQGQP7EVIQBKHAHsKoB5AsUU xHqg/jD1S0dXPOFTaIeYg6tWQYJjtU69mdLZkA94W6tjiNRCdS7QfScnnYIT4VnpR18Md34UoU/T yOxEt8y/A81dr5TSHT1cfRVpEkw/fRGMEw2NG/EH6MS1sqYKWgJKNtj69YPxIJbB4xsjco6P0hzk nfDxkDmRBSKdDA5S48bmZZK5ahSlNRXAqtIFQithlREC9gUuKAXoBUSJAkOgtCx2xnUGK4utagzF l4NIYz2ZDxHFuaVSBi1RFEQWJVSjCBuWFkh9vYLxWRj7AlPd57TATKSBWQB13e/E9L1fQd4cfLRT bUsIbk3hdSOYxipNnaZmZYlasMWcgpcLmaqQxxA2+1PkummWGg4xmYqOmhcmSojpckSFEID0SIAO QMm6pDVSXdiVoXy657jazQxHMTJwLEzMM1cHTYZgDdS1Qm8ZPOWM8jE5cXTTTSvi14x5MJQZFTjZ qmFa2iLWtBpApoLYWAALSon1OKtHQ4rgpyCbX8dEGEBkUSLAILmfqlmpLoIFKPEgPlUn5xqsHceA Fh1A9sU1xDifVy4mBIQewgJoucIm2OlMMabVNylYp0olswKwo5qYIniqlImaQlNCmhFoNCZJxoY0 6C0023dx+OE4Gu/DGGcFbQooyMUzWOcUXFMdwlnt2TTXIlbrgJYplLEcsMYDklwlBmdbmGYWyZMG rgRY4bWIWoDR5sqTDGQEkLKTZxIXKda5h2DXBQ3ONUqpkZ1qWlnYbFCkmEJeg2MZe8YQmMEQuBrA wwrBxa1hLimFEZEsCFmEGZsmNqUCaXEmJJGF6dZRKo2cUMzlTjcbimQmcBAox6R0hm1SalNGkCv8 5g9lA6dCubRmaWWOoPbPfo3FQNUQO/7q1PzGabdYA80Svyq7VMmG9g0LYkICks2SnAnPxAJAGUQI MSNzBhIUhAQkRTpZifuKIbhTU0smBal94gHWC9fy5F6D17j8IiBMQ0MGNH6vw2HShUA9hkw41xrn DMsNEqVANEz4CXCGkAe/f5HIqUSibvg88zCBh8a3cgU1/uBiZRHvDT7DL7nuiAmJADvjcF+tFMFg SckEAAWQ+xve9sWsIdaBqHhDVOTASLLUVpCCQkI7ugqhaI75eKDX51xLnyKQsKZtnPELSQGB4sDQ 8J1ExOM30rgVMzBGwOg6lb28LoYPSUMeWqoUSBAkrdsB8BgsVbW0j+1bZ9cS9aXTY7sQyjDbZBKW OTgyW0mwUrUb9noPswQDcHRvQNYPtawSSHm9EdzAbF1uHDDwAdOvYl1u4uFJ9iP84oQg7DYm+Mh0 SmXI33lCLFpdIGKm974nW9GlnRQoevFd5WH+MuZlNnfDtzqw2EqySJNBULP9M88wbivqEe6lCXMz grQhb7dpj7AKqTwbOUQpg5B0dEiwI2+VSghAEgP7SVW5r0HxD5vXsRbqXPg7diPFbaTDhKiPWuto Zj2YZbfm06zFulqEI/lzjIsfufthDyk5yTkcn4nlF7BoJRY08s1YdcBwNYuTAOal6Gr9zxE0HRog UKIXNU+NWqfD5XuAHY8gfuW2/QRZ4GjgTTMIkI65SBKUCorEK1ltLbJlqxgshga2lgopSuMKGGCi xlSjJ4Sa2T3ugLB2Il8a/t5WQTjZdCa9wPmOgnrqBd02JzNyFnJiWgaTB+4pgQxRFrkxMOPo4zIE zLBtQj6fXoav4B99UphibugNoDJ00qfIPma6bLSJ1/07wWro4ERAomX1US2k260lpA7FNClEXmY5 uSpRo3CDUrjsDmgH673K0IHDKh6mFPKdD4Ap9PDI94pnJJO1t8t/olAAQM6LKBhVMxmEEYJcRW6C glxH21HsvSIuBQ9Gh1HT0UoVLgsJgxhSIsViDEFFJ7BKSE5EQR/EI2AzGmDFoWLku/ERfeIM4FJa MhVYitQI6c+7ycXxCaZ5X0MiZg/OROUQXjMC0fg2xR8bi6YB35EpzfDGb0CYHSqyTXMFlCEgpqLh IOCqccawwmHdnd5dvIwiJBcFrPcERxO0RgYlycKWsoZwQCCtDh2F52zCpiRkJzE2qaRzeKqgcIgi LQIiBsE8YoC5afuQ41IR5b541l8aTAECONnyMigWARYSVqgSkFTs4cJs9EzRs5xU6Jw6ZKITnnFp 6ypffKhixvAYqqYQuYMRoldUwDLXlUAtd28dYNaNI5oIE6nHCKXzIe6roWYhhR+IjvUaN6cwIiKn ix66Ylj87pO/xaUBLy5NeZ9OENBHn6ymx18e5RirBVWCrbQeQgxmVP7ax+nEN0ppiNMZkkXk2N8Q HxkLECCP1tOp5kDcN+0h40FFigooKLFFHUpx8Ek9UjN5xGHyIdo8yMjpgRA1R+DPASbYYVMJhAwh WIutAKKTFL9lMFRhDG521B6kEr0VQT4mKYpzYYtclcQL1d7o38QX4Ev7Et179MHwvpiN8HG8UmQ+ mOKyJ9yswPIR3OKcBHQUZe4h8xmQJmYtanMJGAGfcaUKlpvbKWMbA1m1VbMimxBLtd7lwB9a97ZP SxFw94EOpIJDpO9hVipLDYVUCFJrJkVmgKfykRCQAoZg6IZxW9hr1w8VplemiY4SoNQ3dTvFb4Bo xUoDtXyGgQ2AhmBvtwZQlZCQw+pDQ2NskphhuB2cngcwQhNouRY+kwiHEQVSIqVVBSOLWqPvgvhQ 2TMcFKNyb1LSVFCil1RyLEHREpAikjgKnmgoH3xV6NmJGYksHkjXvrSaFuyqjFIpEXiXiSzO8SGV 1ndduiE90mXMwHIHtEoioK6Ys2yYMYQwYtEbGF1bWZe8YzruwpOYcpBHNKwRkQUgEiAU9+Wksnt0 A6NDQRLlUMgYMUY0jsNlfDS4YWBBVQSYRIIsaLQdFvyy3F5S0rpAI2agFZFDoBjZOjrJI0QvMJGt 9C49a6W7EZEIQhFJGHMR9DBSgp7mPlRJwifIbUyPcPYVA6ROk8iuu3qdI/BUpKH8HxH74Gv5UaVS Mg4AZg9j7vHkLUQ7j3fbrORlkSMd3ADthpFKLsKVaOdion8aKohoYzxWKCRQYIhXgidj6mpW4ed4 Br1wjnTbXp/jPMtAoaq2BpIhn1aEsZ/jRTPoaWXQrkOw4x/F8oA2T0QxjShSno0iVKlgsSwSA4k2 Td4SiAOjCdJ5qdSliLX2rVCFBbvExK2MSSRpUlA8++BbyoVUgPqDc5jpwRifYPWu9sFk050O5GgU faRH1yTJivpgcn9DNAVAfj9xV+x6wBwHeEsPUQQ62wA9SaU7L7jWZaOdxPKYiBdE+MKftEh+BklI E78nHsMG713q9OFxFPS9FpkpTNymAzlnLMHBJgKhECkIcdw8Qgni6a6kPNoe2F88zMhMr92RQG1K fJe1VKFNyvYr+ws2bBHuMH0NcCSfKnXk835B38dd0B4gVOzZxfUvoVuuCPQGoeMUPSGJ26n9k/vw PIQrtWcVOKukqROgP8+4/+LuSKcKEhVcoYDg ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows @ 2010-03-31 10:49 grischka 2010-03-31 11:18 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: grischka @ 2010-03-31 10:49 UTC (permalink / raw) To: eliz; +Cc: emacs-devel > This is not a good idea. configure.bat needs to be able to run on > older Windows 9X systems, where ... Note that neither does configure.bat work correctly on Windows 9X nor does the native shell based part of the makefiles work there nor would emacs run on such system at all. --- grischka ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 10:49 grischka @ 2010-03-31 11:18 ` Eli Zaretskii 2010-04-02 11:12 ` grischka 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-03-31 11:18 UTC (permalink / raw) To: grischka; +Cc: emacs-devel > Date: Wed, 31 Mar 2010 12:49:35 +0200 > From: grischka <grishka@gmx.de> > CC: emacs-devel@gnu.org > > > This is not a good idea. configure.bat needs to be able to run on > > older Windows 9X systems, where ... > > Note that neither does configure.bat work correctly on Windows 9X nor > does the native shell based part of the makefiles work there nor would > emacs run on such system at all. Please report any specific problems you find. Thanks. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-03-31 11:18 ` Eli Zaretskii @ 2010-04-02 11:12 ` grischka 2010-04-02 13:01 ` Eli Zaretskii 0 siblings, 1 reply; 37+ messages in thread From: grischka @ 2010-04-02 11:12 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel Eli Zaretskii wrote: >> Date: Wed, 31 Mar 2010 12:49:35 +0200 >> From: grischka <grishka@gmx.de> >> CC: emacs-devel@gnu.org >> >> > This is not a good idea. configure.bat needs to be able to run on >> > older Windows 9X systems, where ... >> >> Note that neither does configure.bat work correctly on Windows 9X nor >> does the native shell based part of the makefiles work there nor would >> emacs run on such system at all. > > Please report any specific problems you find. Thanks. > I don't support tendencies that replace concepts by adaptive hacking. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-02 11:12 ` grischka @ 2010-04-02 13:01 ` Eli Zaretskii 2010-04-06 13:17 ` grischka 0 siblings, 1 reply; 37+ messages in thread From: Eli Zaretskii @ 2010-04-02 13:01 UTC (permalink / raw) To: grischka; +Cc: emacs-devel > Date: Fri, 02 Apr 2010 13:12:33 +0200 > From: grischka <grishka@gmx.de> > CC: emacs-devel@gnu.org > > Eli Zaretskii wrote: > >> Date: Wed, 31 Mar 2010 12:49:35 +0200 > >> From: grischka <grishka@gmx.de> > >> CC: emacs-devel@gnu.org > >> > >> > This is not a good idea. configure.bat needs to be able to run on > >> > older Windows 9X systems, where ... > >> > >> Note that neither does configure.bat work correctly on Windows 9X nor > >> does the native shell based part of the makefiles work there nor would > >> emacs run on such system at all. > > > > Please report any specific problems you find. Thanks. > > > > I don't support tendencies that replace concepts by adaptive hacking. Then perhaps you should stop posting sarcastic notes about Emacs not working on platforms about which you don't care enough to help solving the problems. ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-02 13:01 ` Eli Zaretskii @ 2010-04-06 13:17 ` grischka 2010-04-06 13:46 ` joakim 0 siblings, 1 reply; 37+ messages in thread From: grischka @ 2010-04-06 13:17 UTC (permalink / raw) To: Eli Zaretskii; +Cc: emacs-devel Eli Zaretskii wrote: >> Date: Fri, 02 Apr 2010 13:12:33 +0200 >> From: grischka <grishka@gmx.de> >> CC: emacs-devel@gnu.org >> >> Eli Zaretskii wrote: >>>> Date: Wed, 31 Mar 2010 12:49:35 +0200 >>>> From: grischka <grishka@gmx.de> >>>> CC: emacs-devel@gnu.org >>>> >>>> > This is not a good idea. configure.bat needs to be able to run on >>>> > older Windows 9X systems, where ... >>>> >>>> Note that neither does configure.bat work correctly on Windows 9X nor >>>> does the native shell based part of the makefiles work there nor would >>>> emacs run on such system at all. >>> Please report any specific problems you find. Thanks. >>> >> I don't support tendencies that replace concepts by adaptive hacking. > > Then perhaps you should stop posting sarcastic notes about Emacs not > working on platforms about which you don't care enough to help solving > the problems. Have a win98 running under e.g. vmware, virtualbox or qemu, and you'll find the given information more than sufficient to solve the "problem". No sarcasm intended. --- grischka ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-06 13:17 ` grischka @ 2010-04-06 13:46 ` joakim 2010-04-08 20:45 ` grischka 0 siblings, 1 reply; 37+ messages in thread From: joakim @ 2010-04-06 13:46 UTC (permalink / raw) To: grischka; +Cc: Eli Zaretskii, emacs-devel grischka <grishka@gmx.de> writes: > Eli Zaretskii wrote: >>> Date: Fri, 02 Apr 2010 13:12:33 +0200 >>> From: grischka <grishka@gmx.de> >>> CC: emacs-devel@gnu.org >>> >>> Eli Zaretskii wrote: >>>>> Date: Wed, 31 Mar 2010 12:49:35 +0200 >>>>> From: grischka <grishka@gmx.de> >>>>> CC: emacs-devel@gnu.org >>>>> >>>>> > This is not a good idea. configure.bat needs to be able to run on >>>>> > older Windows 9X systems, where ... >>>>> >>>>> Note that neither does configure.bat work correctly on Windows 9X nor >>>>> does the native shell based part of the makefiles work there nor would >>>>> emacs run on such system at all. >>>> Please report any specific problems you find. Thanks. >>>> >>> I don't support tendencies that replace concepts by adaptive hacking. >> >> Then perhaps you should stop posting sarcastic notes about Emacs not >> working on platforms about which you don't care enough to help solving >> the problems. > > Have a win98 running under e.g. vmware, virtualbox or qemu, and you'll > find the given information more than sufficient to solve the "problem". How does one legaly obtain a w98 license today? I'm loosely contemplating setting up a build server for Emacs that would build and deploy all bzr revisions of Emacs on each supported platform. I would like to use VirtualBox for virtualization. Free OS:es are of course easy to obtain, modern non-free also, except osx, because apple weirdly doesnt want to support virtualization in their license. Old non-free os:es seems difficult to obtain in a legal way. > > No sarcasm intended. > > --- grischka > > -- Joakim Verona ^ permalink raw reply [flat|nested] 37+ messages in thread
* Re: make dist target for Windows 2010-04-06 13:46 ` joakim @ 2010-04-08 20:45 ` grischka 0 siblings, 0 replies; 37+ messages in thread From: grischka @ 2010-04-08 20:45 UTC (permalink / raw) To: joakim; +Cc: Eli Zaretskii, emacs-devel Joakim Verona wrote: > How does one legaly obtain a w98 license today? Someone selling an OEM version (Current bid at US $6) wrote: "To comply with eBay and Microsoft OEM policies, this package will be shipped with a random piece of hardware" :D Retail versions are available too. --- grischka ^ permalink raw reply [flat|nested] 37+ messages in thread
end of thread, other threads:[~2010-07-03 17:08 UTC | newest] Thread overview: 37+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-03-31 3:03 make dist target for Windows Christoph 2010-03-31 8:30 ` Eli Zaretskii 2010-03-31 14:57 ` Stefan Monnier 2010-03-31 16:13 ` Eli Zaretskii 2010-03-31 17:55 ` Stefan Monnier 2010-03-31 23:12 ` Jason Rumney 2010-03-31 23:39 ` Sean Sieger 2010-03-31 23:43 ` Christoph 2010-04-01 5:00 ` Jason Rumney 2010-04-01 6:13 ` Jan Djärv 2010-04-01 6:52 ` Eli Zaretskii 2010-04-01 7:23 ` Jan Djärv 2010-04-01 7:44 ` Eli Zaretskii 2010-04-01 7:24 ` Eli Zaretskii 2010-04-01 13:21 ` Jason Rumney 2010-04-01 13:37 ` Eli Zaretskii 2010-04-01 13:17 ` Jason Rumney 2010-04-01 1:48 ` Christoph 2010-04-01 7:34 ` Eli Zaretskii 2010-04-02 4:26 ` Christoph 2010-04-02 8:25 ` Eli Zaretskii 2010-04-03 17:31 ` Christoph 2010-04-04 7:10 ` Eli Zaretskii 2010-04-06 2:12 ` Christoph 2010-04-06 18:00 ` Eli Zaretskii 2010-04-07 1:53 ` Christoph 2010-04-08 0:05 ` Christoph 2010-04-08 17:51 ` Eli Zaretskii 2010-04-08 18:08 ` Christoph 2010-07-03 17:08 ` Christoph -- strict thread matches above, loose matches on Subject: below -- 2010-03-31 10:49 grischka 2010-03-31 11:18 ` Eli Zaretskii 2010-04-02 11:12 ` grischka 2010-04-02 13:01 ` Eli Zaretskii 2010-04-06 13:17 ` grischka 2010-04-06 13:46 ` joakim 2010-04-08 20:45 ` grischka
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.