Update of /cvsroot/fink/experimental/todai/ecc/main/finkinfo/editors In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18299
Added Files: emacs22-carbon.info emacs22-carbon.patch Log Message: emacs22-carbon with some nice patches and elisp's. --- NEW FILE: emacs22-carbon.info --- Package: emacs22-carbon Version: 22.0.50.cvs20060118 Revision: 2 BuildDepends: libncurses5, fink (>= 0.24.2) Depends: emacsen-common, passwd, macosx Provides: emacsen Conflicts: user-ja (<< 2.2) Source: http://www.j10n.org/files/emacs-%v.tar.bz2 Source-MD5: b9e7f98a24abc252c379109b92709bbb Source2: http://downloads.sourceforge.jp/macemacsjp/18551/inline_patch-20060118.tar.gz Source2-MD5: 10b08573c6c1114c1d552f36e222a4a4 Source3: http://downloads.sourceforge.jp/macemacsjp/16865/transparency-2.1.1.tar.gz Source3-MD5: fcc6c8803c31c1081c5b26bcb90d4c46 Source4: http://downloads.sourceforge.jp/macemacsjp/16789/fixed-width-fontset-0.9.0.tar.gz Source4-MD5: dabad41eb11f64d5351ff628ca8a11e7 Source5: http://downloads.sourceforge.jp/macemacsjp/17718/mac-functions.patch Source5Rename: mac-functions-20051116.patch Source5-MD5: 6d122157a8c1c98b2b569e07da545206 Source6: http://downloads.sourceforge.jp/macemacsjp/17715/utf-8m.el Source6Rename: utf-8m-20051124.el Source6-MD5: 54197bdbfcca0755be10625bef2d9ea6 Description: Flexible real-time text editor, Aqua native DocFiles: << AUTHORS COPYING README mac/README:mac.README ../transparency2/readme:transparency2.readme ../transparency2/readme.ja:transparency2.readme.ja ../fixed-width-fontset/readme:fixed-width-fontset.readme ../fixed-width-fontset/readme.ja:fixed-width-fontset.readme.ja << ConfFiles: %p/var/games/%n/tetris-scores %p/var/games/%n/snake-scores AppBundles: finktmp/mac/Emacs22.app PatchScript: << #!/bin/sh -ev # Remove CVS date from version number (%v) and append '-carbon' suffix v=`expr "%v" : '\(.*\)\.cvs'`-carbon sed -e 's|@PREFIX@|%p|g' \ -e 's|@EMACS-FLAVOR@|%n|g' \ -e "s|@EMACS-VERSION@|$v|g" \ %a/%n.patch | patch -p1 patch -p0 < ../inline_patch-20060118/emacs-inline.patch patch -p0 < ../transparency2/transparency2.patch mkdir finktmp cp ../fixed-width-fontset/carbon-font.el ../fixed-width-fontset/fixed-width-fontset.el finktmp patch -p0 < ../mac-functions-20051116.patch cp ../utf-8m-20051124.el finktmp/utf-8m.el << SetMAKEFLAGS: -j1 SetCPPFLAGS: -DUSE_ATSUI SetCFLAGS: -fconstant-cfstrings ConfigureParams: --build=%m-apple-darwin`uname -r|sed 's/\..*//'` --infodir='${prefix}/share/info' --mandir='${prefix}/share/man' --libexecdir='${prefix}/lib' --with-carbon --enable-carbon-appdir= --without-x --without-gif --without-toolkit-scroll-bars CompileScript: << #!/bin/sh -ev # Remove CVS date from version number (%v) and append '-carbon' suffix v=`expr "%v" : '\(.*\)\.cvs'`-carbon case `uname -r` in 7.*) if fgrep -q '7.0.4' /System/Library/Frameworks/QuickTime.framework/Resources/version.plist; then echo 'QuickTime 7.0.4 breaks the build on 10.3.' >&2 echo 'Get 7.0.1 reinstaller and downgrade QuickTime.' >&2 echo 'http://www.apple.com/support/downloads/quicktime701reinstallerforquicktime704.html' >&2 exit 1 fi;; esac ./configure %c # Sync .elc's with patched .el's (cd src && make bootstrap) || exit (cd lisp && make recompile EMACS=../src/bootstrap-emacs) || exit # Compile emacs with new *.elc make /usr/bin/find mac/Emacs.app ! -path "*/CVS" ! -name CVS ! -name .cvsignore > app.list /usr/bin/cpio -pdL finktmp < app.list mv finktmp/mac/Emacs.app finktmp/mac/Emacs22.app EMACSLOADPATH=$PWD/finktmp:$PWD/lisp src/emacs -batch --no-init-file --no-site-file --multibyte -f batch-byte-compile 01carbon-emacs.el finktmp/*.el << InstallScript: << #!/bin/sh -ev # Remove CVS date from version number (%v) and append '-carbon' suffix v=`expr "%v" : '\(.*\)\.cvs'`-carbon # Install Everything (except Emacs.app) make prefix=%i install case `id -u` in 0) chown games %i/var/games/%n/*;; esac # Move some files to avoid conflicts with other emacsen for f in %i/share/man/man1/{emacs.1,ctags.1,emacsclient.1,etags.1} \ %i/bin/{ctags,emacsclient,etags} \ %i/bin/{b2m,rcs-checkin,ebrowse,grep-changelog}; do mv "$f" "$f.%n" done # Wrapper script for the command-line invokation rm %i/bin/emacs %i/bin/emacs-$v install -m 755 emacs.bash %i/bin/emacs-$v ln -s emacs-$v %i/bin/%n ln -s emacs-$v %i/bin/Emacs22.app mkdir -p %i/etc/emacs mkdir -p %i/etc/%n/site-start.d mkdir -p %i/share/%n mv %i/share/emacs/$v/site-lisp %i/share/%n/ (cd %i/share/emacs/$v; ln -s ../../%n/site-lisp site-lisp) || exit mv %i/share/info %i/share/info-%n mkdir -p %i/share/info mv %i/share/info-%n %i/share/info/%n rm %i/share/info/%n/dir %i/share/info/%n/dir.old chmod 755 fix-info mangle-info ./fix-info %i/share/info/%n rm %i/share/emacs/site-lisp/subdirs.el install -m 644 finktmp/*.el finktmp/*.elc %i/share/%n/site-lisp install -m 644 01carbon-emacs.el 01carbon-emacs.elc %i/etc/%n/site-start.d # Patch Emacs22.app to load %p/bin/init.sh ebd="finktmp/mac/Emacs22.app/Contents/MacOS/" mv "$ebd/Emacs" "$ebd/Emacs.bin" install -m 755 Emacs.finkwrap "$ebd/Emacs" << PostInstScript: << # Remove CVS date from version number (%v) and append '-carbon' suffix v=`expr "%v" : '\(.*\)\.cvs'`-carbon mkdir -p %p/etc/lisp/emacs/$v/site-lisp mkdir -p %p/etc/lisp/emacs/site-lisp # Priorities are set to low not to disturb non-carbon emacsen... update-alternatives --install %p/bin/emacs emacs %p/bin/%n 35 \ --slave %p/share/man/man1/emacs.1 emacs.1 %p/share/man/man1/emacs.1.%n update-alternatives --install %p/bin/ctags ctags %p/bin/ctags.%n 35 \ --slave %p/share/man/man1/ctags.1 ctags.1 %p/share/man/man1/ctags.1.%n update-alternatives --install %p/bin/etags etags %p/bin/etags.%n 55 \ --slave %p/share/man/man1/etags.1 etags.1 %p/share/man/man1/etags.1.%n update-alternatives \ --install %p/bin/emacsclient emacsclient %p/bin/emacsclient.%n 35 \ --slave %p/share/man/man1/emacsclient.1 emacsclient.1 \ %p/share/man/man1/emacsclient.1.%n update-alternatives --install %p/bin/b2m b2m %p/bin/b2m.%n 35 update-alternatives \ --install %p/bin/rcs-checkin rcs-checkin %p/bin/rcs-checkin.%n 35 update-alternatives --install %p/bin/ebrowse ebrowse %p/bin/ebrowse.%n 35 update-alternatives --install %p/bin/grep-changelog grep-changelog \ %p/bin/grep-changelog.%n 35 # Regiser ourselves with emacsen-common %p/lib/emacsen-common/emacs-install %n # Since we're placing our info files in a subdirectory of %p/share/info # we need to manually add each doc to the info dir-file # NOTE: list of info docs also present in prerm script and "fixinfo" # included in the emacs22-carbon.patch for file in ada-mode autotype ccmode cl dired-x ebrowse ediff efaq eintr \ elisp emacs emacs-mime emacs-xtra eshell eudc forms gnus idlwave \ info message mh-e newsticker org pcl-cvs pgg reftex sc ses sieve \ smtpmail speedbar tramp url vip viper widget woman do install-info --infodir=%p/share/info \ --section "Carbon Emacs" "Carbon Emacs" %p/share/info/%n/${file} done << PreRmScript: << # Remove CVS date from version number (%v) and append '-carbon' suffix v=`expr "%v" : '\(.*\)\.cvs'`-carbon # Manually remove all of our info docs from the dir-file for file in ada-mode autotype ccmode cl dired-x ebrowse ediff efaq eintr \ elisp emacs emacs-mime emacs-xtra eshell eudc forms gnus idlwave \ info message mh-e newsticker org pcl-cvs pgg reftex sc ses sieve \ smtpmail speedbar tramp url vip viper widget woman do install-info --infodir=%p/share/info --remove-exactly %n/${file} done if [ $1 != "upgrade" ]; then update-alternatives --remove emacs %p/bin/%n update-alternatives --remove emacsclient %p/bin/emacsclient.%n update-alternatives --remove ctags %p/bin/ctags.%n update-alternatives --remove etags %p/bin/etags.%n update-alternatives --remove b2m %p/bin/b2m.%n update-alternatives --remove rcs-checkin %p/bin/rcs-checkin.%n update-alternatives --remove ebrowse %p/bin/ebrowse.%n %p/lib/emacsen-common/emacs-remove %n fi << DescDetail: << GNU Emacs is an extensible, customizable, self-documenting real-time display editor. Through its extensibility, it is actually much more than an editor. You can use it as a file manager, mail reader, web browser, and for many other tasks. Some people even use it to control their coffee machine. This package installs Carbon port of GNU Emacs, which can natively run on Mac OS X window system. Also supports input methods for international languages. Use -nw option to use this emacs on terminal. << DescPackaging: << This .info file is essentially based on the emacs21 package by: Christian Swinehart <[EMAIL PROTECTED]> The first author of this package is: NAKAHASHI Ichiro <[EMAIL PROTECTED]> update-alternatives is used for emacs, emacsclient, ctags, etags, b2m rcs-checkin, ebrowse, and grep-changelog to allow parallel installation of emacs22 & xemacs & emacs22-carbon. Its info files are installed into the emacs22-carbon subdirectory of <fink-root>/share/info for the same reason. << DescPort: << You can lauch emacs22 from Finder, as well as terminal using usual command line syntax. For this purpose, Emacs22.app is placed on %p/Applications and will be symlinked to /Applications/Fink. To gain a better integration with the fink environments, it automatically loads %p/bin/init.sh at startup. I don't know why nichiro set $0 to Emacs instead of Emacs.bin. The patchfile modifies startup.el, and brings in the scripts fix-info and mangle-info, in order to implement our emacs packaging system. Since this package comes from the CVS repository none of the elisp files are byte-compiled by default. So before making the source tarball used by fink the CVS version must first be `make bootstrap'ed then the .elc's produced are injected into a fresh copy of the source tree and tarred up again. If .el's are patched, .elc's are updated by `make recompile'. How to make tarball containing .elc's: $ cvs -d :pserver:[EMAIL PROTECTED]:/sources/emacs login <password is empty> $ cvs -d :pserver:[EMAIL PROTECTED]:/sources/emacs co \ -d emacs-%v -D "dd mm yyyy UTC" emacs $ cd emacs-%v $ ./configure --without-carbon --without-x $ make bootstrap MAKEINFO="LC_ALL=C %p/bin/makeinfo --force" $ make distclean << DescUsage: << You can launch emacs22-carbon, not just by double-clicking, but also by typing $ emacs22-carbon or $ Emacs22.app in the terminal. In this way, you can pass runtime options to emacs, e.g. $ emacs22-carbon --no-site-file If you want to input characters via MacIM in inline style, add your .emacs.el: (if (eq window-system 'mac) (mac-setup-inline-input-method)) << License: GPL Maintainer: Todai Fink Team <[EMAIL PROTECTED]> Homepage: http://www.emacswiki.org/cgi-bin/wiki --- NEW FILE: emacs22-carbon.patch --- diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/01carbon-emacs.el emacs-22.0.50.cvs20060118/01carbon-emacs.el --- emacs-22.0.50.cvs20060118.orig/01carbon-emacs.el Thu Jan 1 00:00:00 1970 +++ emacs-22.0.50.cvs20060118/01carbon-emacs.el Mon Mar 6 15:42:52 2006 @@ -0,0 +1,13 @@ +(if (eq window-system 'mac) + (progn + ;; append "PREFIX/sbin" "PREFIX/bin" to exec-path + (if (not (member "@PREFIX@/sbin" exec-path)) + (setq exec-path (append '("@PREFIX@/sbin") exec-path)) + ) + (if (not (member "@PREFIX@/bin" exec-path)) + (setq exec-path (append '("@PREFIX@/bin") exec-path)) + ) + + ;; inline image support + (auto-image-file-mode) + )) diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/Emacs.finkwrap emacs-22.0.50.cvs20060118/Emacs.finkwrap --- emacs-22.0.50.cvs20060118.orig/Emacs.finkwrap Thu Jan 1 00:00:00 1970 +++ emacs-22.0.50.cvs20060118/Emacs.finkwrap Mon Mar 6 15:42:52 2006 @@ -0,0 +1,3 @@ +#!/bin/bash +. @PREFIX@/bin/init.sh +exec -a "$0" "$0.bin" "$@" diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/Makefile.in emacs-22.0.50.cvs20060118/Makefile.in --- emacs-22.0.50.cvs20060118.orig/Makefile.in Thu Nov 3 17:00:25 2005 +++ emacs-22.0.50.cvs20060118/Makefile.in Mon Mar 6 16:01:14 2006 @@ -422,8 +422,7 @@ && (echo "Copying $${dir} to $${dest}..." ; \ (cd $${dir}; tar -chf - . ) \ | (cd $${dest}; umask 022; \ - tar -xvf - && cat > /dev/null) || exit 1; \ - find $${dest} -exec chown $${LOGNAME:-$$USERNAME} {} ';' ;\ + gtar -xvf - --no-same-owner && cat > /dev/null) || exit 1; \ for subdir in `find $${dest} -type d ! -name RCS ! -name CVS -print` ; do \ chmod a+rx $${subdir} ; \ rm -rf $${subdir}/RCS ; \ @@ -462,8 +461,8 @@ then \ 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}; umask 022; gtar -xvf - --no-same-owner && cat > /dev/null) || exit 1; \ + (cd $(docdir); chmod a+r DOC*; \ if test "`echo DOC-*`" != "DOC-*"; then rm DOC; fi); \ else true; fi -unset CDPATH; \ @@ -474,8 +473,7 @@ then \ 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}; umask 022; gtar -xvf - --no-same-owner && cat > /dev/null) || exit 1; \ else true; fi -unset CDPATH; \ if [ -n "${GZIP_PROG}" ]; \ diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/configure emacs-22.0.50.cvs20060118/configure --- emacs-22.0.50.cvs20060118.orig/configure Thu Jan 12 22:42:41 2006 +++ emacs-22.0.50.cvs20060118/configure Mon Mar 6 15:42:52 2006 @@ -1359,7 +1359,7 @@ etcdir='${datadir}/emacs/${version}/etc' archlibdir='${libexecdir}/emacs/${version}/${configuration}' docdir='${datadir}/emacs/${version}/etc' -gamedir='${localstatedir}/games/emacs' +gamedir='${localstatedir}/games/@EMACS-FLAVOR@' gameuser=games @@ -22779,6 +22779,7 @@ echo "$as_me: error: can't find current emacs version in \`${srcdir}/lisp/version.el'." >&2;} { (exit 1); exit 1; }; } fi +version="@EMACS-VERSION@" ### Specify what sort of things we'll be editing into Makefile and config.h. ### Use configuration here uncanonicalized to avoid exceeding size limits. diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/emacs.bash emacs-22.0.50.cvs20060118/emacs.bash --- emacs-22.0.50.cvs20060118.orig/emacs.bash Thu Jan 1 00:00:00 1970 +++ emacs-22.0.50.cvs20060118/emacs.bash Mon Mar 6 15:42:52 2006 @@ -0,0 +1,3 @@ +#!/bin/bash +exec -a "@PREFIX@/Applications/Emacs22.app/Contents/MacOS/Emacs" \ + "@PREFIX@/Applications/Emacs22.app/Contents/MacOS/Emacs.bin" "$@" diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/fix-info emacs-22.0.50.cvs20060118/fix-info --- emacs-22.0.50.cvs20060118.orig/fix-info Thu Jan 1 00:00:00 1970 +++ emacs-22.0.50.cvs20060118/fix-info Mon Mar 6 15:42:52 2006 @@ -0,0 +1,10 @@ +#!/bin/sh + +THE_INFO_PREFIX=$1 + +for file in ada-mode autotype ccmode cl dired-x ebrowse ediff efaq \ + emacs emacs-mime eshell eudc forms gnus idlwave info message mh-e \ + pcl-cvs reftex sc speedbar vip viper widget woman +do + ./mangle-info ${THE_INFO_PREFIX}/${file} +done diff -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/lisp/startup.el emacs-22.0.50.cvs20060118/lisp/startup.el --- emacs-22.0.50.cvs20060118.orig/lisp/startup.el Thu Jan 12 02:27:00 2006 +++ emacs-22.0.50.cvs20060118/lisp/startup.el Mon Mar 6 15:42:52 2006 @@ -287,6 +287,10 @@ (defvar default-frame-background-mode) +(defconst fink-emacs-flavor '@EMACS-FLAVOR@ + "A symbol representing the particular fink flavor of emacs running. +Something like 'emacs20, 'xemacs20, etc.") + (defvar pure-space-overflow nil "Non-nil if building Emacs overflowed pure space.") @@ -804,8 +808,20 @@ ;; 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)) + + ;; Fink version of site-start. (if site-run-file - (load site-run-file t t)) + (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 -Naur --exclude=*.orig emacs-22.0.50.cvs20060118.orig/mangle-info emacs-22.0.50.cvs20060118/mangle-info --- emacs-22.0.50.cvs20060118.orig/mangle-info Thu Jan 1 00:00:00 1970 +++ emacs-22.0.50.cvs20060118/mangle-info Mon Mar 6 15:42:52 2006 @@ -0,0 +1,17 @@ +#!/usr/bin/perl -w -i + +use English; +use strict; + +$RS = undef; + +my $prefix = "@EMACS-FLAVOR@"; + +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}; ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ Fink-commits mailing list Fink-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/fink-commits