Mercurial > emacs
view mac/osx-install @ 46324:d992f5698971
(compilation-normalize-filename):
New subroutine, taken out of compilation-parse-errors.
(compilation-parse-errors): Use that, and for directories too.
Don't check whether a directory really exists.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 12 Jul 2002 17:39:45 +0000 |
parents | 01b93e5e53a7 |
children |
line wrap: on
line source
#!/bin/sh #### osx-install: create the file ~/.MacOSX/environment.plist with #### appropriate paths for Emacs to access lisp and bin directories. #### On Mac OS X, this file contains values for environment variables #### seen by Aqua application launched in the Finder. This script #### must be run at the top level of a Mac OS X binary distribution. # Copyright (C) 2002 Free Software Foundation, Inc. # # 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 2, 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; see the file COPYING. If not, write to the # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. progname="$0" ### Exit if a command fails. #set -e ### Print out each line we read, for debugging's sake. set -v LANGUAGE=C LC_ALL=C LC_MESSAGES= LANG= export LANGUAGE LC_ALL LC_MESSAGES LANG ## Don't restrict access to any files. umask 0 ### Make sure we're running in the right place. if [ ! -d Emacs.app -o ! -d libexec -o ! -d share ]; then echo "${progname} must be run in the top directory of the Emacs" >&2 echo "binary distribution tree for Mac OS. cd to that directory" >&2 echo "and try again." >&2 exit 1 fi versionfile=`ls share/emacs/21.*/lisp/version.el` ### Find out which version of Emacs this is. shortversion=`grep 'defconst[ ]*emacs-version' ${versionfile} \ | sed -e 's/^.*"\([0-9][0-9]*\.[0-9][0-9]*\).*$/\1/'` version=`grep 'defconst[ ]*emacs-version' ${versionfile} \ | sed -e 's/^[^"]*"\([^"]*\)".*$/\1/'` if [ ! "${version}" ]; then echo "${progname}: can't find current Emacs version in \`./lisp/version.el'" >&2 exit 1 fi echo Version numbers are $version and $shortversion homedir=`ls -d ~` initfile="${homedir}/.MacOSX/environment.plist" if [ -f ${initfile} ]; then mv ${initfile} ${initfile}.old fi if [ -d ${homedir}/.MacOSX ]; then mkdir ${homedir}/.MacOSX fi execpath=`ls -d libexec/emacs/21.*/powerpc-apple-*/` echo '<?xml version="1.0" encoding="UTF-8"?>' > ${initfile} echo '<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">' >> ${initfile} echo '<plist version="0.9">' >> ${initfile} echo '<dict>' >> ${initfile} echo ' <key>EMACSLOADPATH</key>' >> ${initfile} echo " <string>`pwd`/share/emacs/${version}/lisp/</string>" >> ${initfile} echo ' <key>EMACSPATH</key>' >> ${initfile} echo " <string>`pwd`/${execpath}:`pwd`/bin/</string>" >> ${initfile} echo ' <key>EMACSDATA</key>' >> ${initfile} echo " <string>`pwd`/share/emacs/${version}/etc/</string>" >> ${initfile} echo ' <key>EMACSDOC</key>' >> ${initfile} echo " <string>`pwd`/share/emacs/${version}/etc/</string>" >> ${initfile} echo ' <key>INFOPATH</key>' >> ${initfile} echo " <string>`pwd`/info/</string>" >> ${initfile} echo '</dict>' >> ${initfile} echo '</plist>' >> ${initfile} ### osx-install ends here