the Fink project is an effort to port
popular Unix programs to Mac OS X
diff -u -Naur emacs/Makefile.in emacs.fink/Makefile.in
--- emacs/Makefile.in Thu Nov 11 15:04:25 2004
+++ emacs.fink/Makefile.in Thu Nov 11 16:42:09 2004
@@ -418,7 +418,7 @@
(cd $${dir}; tar -chf - . ) \
| (cd $${dest}; umask 022; \
tar -xvf - && cat > /dev/null) || exit 1; \
- find $${dest} -exec chown $${LOGNAME:-$$USERNAME} {} ';' ;\
+ find $${dest} -exec chown root:admin {} ';' ;\
for subdir in `find $${dest} -type d ! -name RCS ! -name CVS -print` ; do \
chmod a+rx $${subdir} ; \
rm -rf $${subdir}/RCS ; \
@@ -458,7 +458,7 @@
echo "Copying etc/DOC-* to ${docdir} ..." ; \
(cd ./etc; tar -chf - DOC*) \
|(cd ${docdir}; umask 022; tar -xvf - && cat > /dev/null) || exit 1; \
- (cd $(docdir); chown $${LOGNAME:-$$USERNAME} DOC*; chmod a+r DOC*; \
+ (cd $(docdir); chown root:admin DOC*; chmod a+r DOC*; \
if test "`echo DOC-*`" != "DOC-*"; then rm DOC; fi); \
else true; fi
-unset CDPATH; \
@@ -470,7 +470,7 @@
echo "Copying lisp/*.el and lisp/*.elc to ${lispdir} ..." ; \
(cd lisp; tar -chf - *.el *.elc) \
|(cd ${lispdir}; umask 022; tar -xvf - && cat > /dev/null) || exit 1; \
- (cd ${lispdir}; find . -exec chown $${LOGNAME:-$$USERNAME} {} ';') ; \
+ (cd ${lispdir}; find . -exec chown root:admin {} ';') ; \
else true; fi
-unset CDPATH; \
thisdir=`/bin/pwd`; \
diff -u -Naur emacs/fix-info emacs.fink/fix-info
--- emacs/fix-info Wed Dec 31 19:00:00 1969
+++ emacs.fink/fix-info Thu Nov 11 16:48:48 2004
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+THE_INFO_PREFIX=$1
+
+for file in ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq \
+ eintr elisp emacs emacs-mime emacs-xtra eshell eudc flymake forms \
+ gnus idlwave info message mh-e pcl-cvs pgg reftex sc ses sieve \
+ smtpmail speedbar tramp vip viper widget woman
+do
+ ./mangle-info ${THE_INFO_PREFIX}/${file}
+done
diff -u -Naur emacs/lisp/startup.el emacs.fink/lisp/startup.el
--- emacs/lisp/startup.el Thu Nov 11 15:04:25 2004
+++ emacs.fink/lisp/startup.el Thu Nov 11 16:42:09 2004
@@ -278,6 +278,10 @@
(defvar pure-space-overflow nil
"Non-nil if building Emacs overflowed pure space.")
+(defconst fink-emacs-flavor 'emacs21
+ "A symbol representing the particular fink flavor of emacs running.
+Something like 'emacs20, 'xemacs20, etc.")
+
(defun normal-top-level-add-subdirs-to-load-path ()
"Add all subdirectories of current directory to `load-path'.
More precisely, this uses only the subdirectories whose names
@@ -786,8 +790,19 @@
;; Run the site-start library if it exists. The point of this file is
;; that it is run before .emacs. There is no point in doing this after
;; .emacs; that is useless.
- (if site-run-file
- (load site-run-file t t))
+
+ ;; (if site-run-file
+ ;; (load site-run-file t t))
+
+ ;; Fink version of site-start.
+ (if site-run-file
+ (progn
+ ;; Load all the fink package snippets.
+ ;; It's in here because we want -q to kill it too.
+ (if (load "fink-startup" t t nil)
+ (fink-startup fink-emacs-flavor))
+ ;; Now the normal site file...
+ (load site-run-file t t nil)))
;; Sites should not disable this. Only individuals should disable
;; the startup message.
diff -u -Naur emacs/mangle-info emacs.fink/mangle-info
--- emacs/mangle-info Wed Dec 31 19:00:00 1969
+++ emacs.fink/mangle-info Thu Nov 11 16:42:09 2004
@@ -0,0 +1,17 @@
+#!/usr/bin/perl -w -i
+
+use English;
+use strict;
+
+$RS = undef;
+
+my $prefix = "emacs-21";
+
+my $x = <>;
+if(!($x =~ m/^(\s*START-INFO-DIR-ENTRY\s+\*\s*[^:]+:\s*)\(([^\)]+)\)/mo)) {
+ die "Couldn't find START-INFO-DIR-ENTRY.";
+}
+
+print ${PREMATCH};
+print "$1($prefix/$2)";
+print ${POSTMATCH};