# Local.rules - Site-Local definitions. # ${XEMACS_PACKAGES_BASE} is defined in XEmacs.rules, and is always # the full / rooted path to the directory where this "Local.rules" # makefile is supposed to be. Don't override it here. ##################### Begin settings that commonly need to be changed # Path to XEmacs to use for byte compilation. # # Using SXEmacs is also possible, though not supported by the XEmacs # maintainers. See 'BUILD_WITH_SXEMACS' below. # # (Double-quote path under native MS Windows if there are embedded spaces.) XEMACS_BINARY = xemacs # Are we running XEmacs 21.5 or greater? If set, this will generate # custom-defines.el files for use with Custom (esp. the Custom menu), and # use the new interface in autoload.el for generating auto-autoloads.el files. # # Ben has yet to commit the workspace that enables these new features, # so I have defaulted this to 'off' until he does. SY. XEMACS_21_5 = ## SXEmacs # SXEmacs has _some_ 21.5 features, but not quite enough to build all # the packages with XEMACS_21_5 set, so when building with SXEmacs, # set BUILD_WITH_SXEMACS to 't' and leave XEMACS_21_5 unset. BUILD_WITH_SXEMACS = # Should we build the Mule packages? Set to 't' if you do not have/want Mule. # BUILD_WITHOUT_MULE = # Following test, which would be performed by every makefile # including XEmacs.rules, slows down the make process terribly # according to # # From: Gunnar Evermann # Subject: building xemacs-pacakges on unix # To: XEmacs Developers # Date: 14 Oct 2000 12:28:44 +0100 # # XEMACS_NATIVE_NT = \ # $(shell $(XEMACS) $(BATCH) \ # -eval "(princ (eq system-type 'windows-nt))") # # Therefore this has become a make variable instead: # # Set XEMACS_NATIVE_NT to 't' if you are building using a native # Microsoft Windows version of XEmacs (not a Cygwin-built version). # NOTE: You still need the Cygwin environment to build the packages! # This only concerns how XEmacs itself was built. XEMACS_NATIVE_NT = # # The directory tree under which the installed packages go. Under this # directory will be directories xemacs-packages/ (non-Mule packages), # mule-packages/ (Mule packages, if you built XEmacs with Mule, # i.e. international, support), and maybe site-packages/ (packages you # created yourself). If you are installing XEmacs normally, this should be # /share/xemacs for XEmacs from 21.5 on and # /lib/xemacs for XEmacsen before 21.5, where # is the topmost-level directory under which everything # is installed -- normally /usr/local, and set using the `--prefix' # parameter to `configure'. See the INSTALL file. XEMACS_INSTALLED_PACKAGES_ROOT = /usr/local/share/xemacs # XEMACS_INSTALLED_PACKAGES_ROOT = /usr/local/lib/xemacs # If you are developing XEmacs, you probably don't want to install the # packages under /usr/local, which is where the stable, released version of # XEmacs goes. Instead, we suggest a layout as described in the base # README file of recent versions of XEmacs. In a nutshell, we suggest you # put your source under /src/xemacs, and under this put the package sources # in package-src/, and the installed packages in xemacs-packages/ and # mule-packages/. If you do everything this way, you might want to set things as follows: # #XEMACS_INSTALLED_PACKAGES_ROOT = ${XEMACS_PACKAGES_BASE}/.. # # which puts the xemacs-packages/ and mule-packages/ directories as sisters # of the package-src/ directory, and you have to tell configure the # location of the installed packages using `--package-path', something like # # configure --package-path=/src/xemacs/xemacs-packages;/src/xemacs/mule-packages ... # # When `t', a symlink tree will be built for running a live CVS # checkout. Requires GNU `cp', and that you configure your XEmacs # to use ${STAGING} in the package-path. Create the tree with `make # install'. # symlink = # If `t', the build process will build and install .html versions of the # doc files. NOTE: texi2html and texi2any both issue complaints about a # large number of files that pass `makeinfo' just fine. This doesn't # prevent it from building the .html files, though. INSTALL_HTML = ##################### End settings that commonly need to be changed # How to actually run XEmacs. # Under MS Windows, when you run a non-console-mode program, stdin and # stdout don't normally point anywhere, even when you run the program from # a console (e.g. a DOS window)! Hence the console-mode helper program # lib-src/i.exe was written. Formerly, this was not needed when running # XEmacs from a Cygwin program, but at some point around 2003-2004 the # behavior of Cygwin was broken^H^H^H^H^H^Hchanged to match normal Windows # in this respect. ifeq ($(XEMACS_NATIVE_NT),t) XEMACS = $(dir $(XEMACS_BINARY))../lib-src/i $(XEMACS_BINARY) else XEMACS = $(XEMACS_BINARY) endif # Flags to run XEmacs from Makefiles. # VANILLA = -vanilla BATCH = $(VANILLA) -batch -eval '(setq stack-trace-on-error t load-always-display-messages t load-ignore-out-of-date-elc-files t load-show-full-path-in-messages t)' # # Where to install the non-Mule packages, or where the symlink tree will # go. You probably don't want to change this. # NONMULE_INSTALLED_PACKAGES_ROOT = ${XEMACS_INSTALLED_PACKAGES_ROOT}/xemacs-packages # # Where to install the Mule packages, or where the symlink tree will go. # You probably don't want to change this. # MULE_INSTALLED_PACKAGES_ROOT = ${XEMACS_INSTALLED_PACKAGES_ROOT}/mule-packages # Non-Mule packages or groups of packages to build/install. 'make bindist' # doesn't look at this, it's used by 'make install'. You probably don't # want to change this. # # The format for this is: pkg1 pkg2... # e.g. xemacs-base bbdb # # Or you can use the symbol 'xemacs-packages' which means to build ALL # the non-Mule packages. NONMULE_PACKAGES = xemacs-packages # Mule packages or groups of packages to build/install. 'make bindist' # doesn't look at this, it's used by 'make install'. You probably don't # want to change this. If you don't want any Mule packages, don't change # this, instead set BUILD_WITHOUT_MULE above. # # The format for this is the same as for 'NONMULE_PACKAGES' except you # can use the symbol 'mule-packages' to mean ALL Mule packages. MULE_PACKAGES = mule-packages PACKAGE_INDEX = package-index #### Path to various programs # Path to BSD install. # INSTALL = ginstall -c # INSTALL = install -c # Define to build tarfiles for installation/distribution # ifneq ('$(symlink)','t') BUILD_TARS = t else BUILD_TARS = endif # Path to GNU tar. # TAR = tar # if you run FreeBSD install the gtar package in archivers/gtar # and use this option # TAR = gtar # Path to bzip2 # If this is set, then tar.bz2 packages will be created. # BZIP2 = bzip2 # BZIP2 = # Stuff tar should never archive # EXCLUDES = \ --exclude 'CVS' \ --exclude 'RCS' \ --exclude 'SCCS' \ --exclude '*~' \ --exclude '*.orig' \ --exclude '*.rej' \ --exclude '.\#*' # path to makeinfo # MAKEINFO = makeinfo # path to texi2html or texi2any # TEXI2HTML = texi2any ifeq ($(TEXI2HTML),texi2html) TEXI2HTML_FLAGS = -split chapter else TEXI2HTML_FLAGS = --html --split=chapter endif # path to texi2dvi, dvips, texi2pdf; If not defined, no conversion will # happen # TEXI2DVI = texi2dvi DVIPS = dvips TEXI2PDF = texi2pdf # path to tex # # If you are getting errors like this: # cd texi && tex math-ref # This is TeX, Version 3.14159 (Web2C 7.4.5) # kpathsea: Running mktexfmt tex.fmt # fmtutil: config file `fmtutil.cnf' not found. # I can't find the format file `tex.fmt'! # Then somehow you installed tex without installing all the library files. # Go back to Cygwin setup, look under `publishing' and select all the # TeX components. # TEX = tex # path to latex # # If you are getting errors like this: # cd preview/latex && \ # '\nonstopmode \input preview.drv' && \ # '\nonstopmode \input preview.drv' && \ # '\nonstopmode \input preview.drv' # /bin/sh: \nonstopmode \input preview.drv: not found # then check that latex is installed on your system and that you point # to the correct location (or have it referenced in your PATH environment) # LATEX = latex # path to msgfmt # # Under Cygwin, you need to install the gettext-devel package under the # `Devel' component to get this. # MSGFMT = msgfmt ifneq ('$(symlink)','t') # path to GNU cp, use the latter if no GNU cp is available. # use the latter option if you are running FreeBSD. # RCOPY = cp -af # RCOPY = cp -pR else # This next one is for running in-place from a CVS checkout. # NOTE: cp on FreeBSD does not have a --symbolic-link option # so this will not work. You could try something like # `pax -rw -l -p p', but this will create hard links rather than # symbolic links. # RCOPY = cp --force --recursive --symbolic-link endif # # Local Variables: # mode: makefile # End: #