Commit 0e5b70d4 authored by Ronald Oussoren's avatar Ronald Oussoren

mv Mac/OSX/BuildScript one level up

parent c629be8a
Building a MacPython distribution
=================================
The ``build-install.py`` script creates MacPython distributions, including
sleepycat db4, sqlite3 and readline support. It builds a complete
framework-based Python out-of-tree, installs it in a funny place with
$DESTROOT, massages that installation to remove .pyc files and such, creates
an Installer package from the installation plus other files in ``resources``
and ``scripts`` and placed that on a ``.dmg`` disk image.
Here are the steps you ned to follow to build a MacPython installer:
- Run ``./build-installer.py``. Optionally you can pass a number of arguments
to specify locations of various files. Please see the top of
``build-installer.py`` for its usage.
- When done the script will tell you where the DMG image is.
The script needs to be run on Mac OS X 10.4 with Xcode 2.2 or later and
the 10.4u SDK.
When all is done, announcements can be posted to at least the following
places:
- pythonmac-sig@python.org
- python-dev@python.org
- python-announce@python.org
- archivist@info-mac.org
- adcnews@apple.com
- news@macnn.com
- http://www.macupdate.com
- http://guide.apple.com/usindex.lasso
- http://www.apple.com/downloads/macosx/submit
- http://www.versiontracker.com/ (userid Jack.Jansen@oratrix.com)
- http://www.macshareware.net (userid jackjansen)
Also, check out Stephan Deibels http://pythonology.org/market contact list
This diff is collapsed.
diff -r -u ncurses-5.5-orig/test/Makefile.in ncurses-5.5/test/Makefile.in
--- ncurses-5.5-orig/test/Makefile.in 2006-03-24 12:47:40.000000000 +0100
+++ ncurses-5.5/test/Makefile.in 2006-03-24 12:47:50.000000000 +0100
@@ -75,7 +75,7 @@
MATH_LIB = @MATH_LIB@
LD = @LD@
-LINK = @LINK_TESTS@ $(LIBTOOL_LINK) $(CC) $(CFLAGS)
+LINK = @LINK_TESTS@ $(LIBTOOL_LINK) $(CC)
usFLAGS = @LD_MODEL@ @LOCAL_LDFLAGS@ @LDFLAGS@
diff -ru ncurses-5.5-orig/ncurses/tinfo/read_entry.c ncurses-5.5/ncurses/tinfo/read_entry.c
--- ncurses-5.5-orig/ncurses/tinfo/read_entry.c 2004-01-11 02:57:05.000000000 +0100
+++ ncurses-5.5/ncurses/tinfo/read_entry.c 2006-03-25 22:49:39.000000000 +0100
@@ -474,7 +474,7 @@
}
/* truncate the terminal name to prevent buffer overflow */
- (void) sprintf(ttn, "%c/%.*s", *tn, (int) sizeof(ttn) - 3, tn);
+ (void) sprintf(ttn, "%x/%.*s", *tn, (int) sizeof(ttn) - 3, tn);
/* This is System V behavior, in conjunction with our requirements for
* writing terminfo entries.
diff -ru ncurses-5.5-orig/configure ncurses-5.5/configure
--- ncurses-5.5-orig/configure 2005-09-24 23:50:50.000000000 +0200
+++ ncurses-5.5/configure 2006-03-26 22:24:59.000000000 +0200
@@ -5027,7 +5027,7 @@
darwin*)
EXTRA_CFLAGS="-no-cpp-precomp"
CC_SHARED_OPTS="-dynamic"
- MK_SHARED_LIB='$(CC) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $@` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $@'
+ MK_SHARED_LIB='$(CC) $(CFLAGS) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $@` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $@'
test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi
cf_cv_shlib_version_infix=yes
;;
This package will install MacPython $FULL_VERSION for Mac OS X
$MACOSX_DEPLOYMENT_TARGET for the following
architecture(s): $ARCHITECTURES.
Separate installers are available for older versions
of Mac OS X, see the homepage, below.
Installation requires approximately $INSTALL_SIZE MB of disk
space, ignore the message that it will take zero bytes.
You must install onto your current boot disk, even
though the installer does not enforce this, otherwise
things will not work.
MacPython consists of the Python programming language
interpreter, plus a set of programs to allow easy
access to it for Mac users (an integrated development
environment, an applet builder), plus a set of pre-built
extension modules that open up specific Macintosh technologies
to Python programs (Carbon, AppleScript, Quicktime, more).
The installer puts the applications in "MacPython $VERSION"
in your Applications folder, command-line tools in
/usr/local/bin and the underlying machinery in
$PYTHONFRAMEWORKINSTALLDIR.
More information on MacPython can be found at
http://www.cwi.nl/~jack/macpython and
http://pythonmac.org/. More information on
Python in general can be found at
http://www.python.org.
{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf330
{\fonttbl\f0\fswiss\fcharset77 Helvetica;\f1\fswiss\fcharset77 Helvetica-Bold;}
{\colortbl;\red255\green255\blue255;}
\paperw11900\paperh16840\margl1440\margr1440\vieww9920\viewh10660\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
\f0\fs24 \cf0 This package will install
\f1\b MacPython $FULL_VERSION
\f0\b0 for
\f1\b Mac OS X $MACOSX_DEPLOYMENT_TARGET
\f0\b0 .\
\
MacPython consists of the Python programming language interpreter, plus a set of programs to allow easy access to it for Mac users (an integrated development environment, an applet builder), plus a set of pre-built extension modules that open up specific Macintosh technologies to Python programs (Carbon, AppleScript, Quicktime, more).\
\
See the ReadMe file for more information.}
\ No newline at end of file
This diff was suppressed by a .gitattributes entry.
#!/bin/sh
# FIXME
PYVER="@PYVER@"
if [ -d /Developer/Documentation ]; then
if [ ! -d /Developer/Documentation/Python ]; then
mkdir -p /Developer/Documentation/Python
fi
ln -fhs /Library/Frameworks/Python.framework/Versions/${PYVER}/Resources/English.lproj/Documentation "/Developer/Documentation/Python/Reference Documentation"
fi
#!/bin/sh
#
# Recompile the .py files.
#
PYVER="@PYVER@"
FWK="/Library/Frameworks/Python.framework/Versions/@PYVER@/"
"${FWK}/bin/python" -Wi -tt \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/lib/python${PYVER}"
"${FWK}/bin/python" -Wi -tt -O \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/lib/python${PYVER}"
"${FWK}/bin/python" -Wi -tt \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/Mac/Tools"
"${FWK}/bin/python" -Wi -tt -O \
"${FWK}/lib/python${PYVER}/compileall.py" \
-x badsyntax -x site-packages \
"${FWK}/Mac/Tools"
chown -R admin "${FWK}"
chmod -R g+w "${FWK}"
exit 0
#!/bin/sh
echo "This script will update your shell profile when the 'bin' directory"
echo "of python is not early enough of the PATH of your shell."
echo "These changes will be effective only in shell windows that you open"
echo "after running this script."
PYVER=@PYVER@
PYTHON_ROOT="/Library/Frameworks/Python.framework/Versions/Current"
# Make sure the directory ${PYTHON_ROOT}/bin is on the users PATH.
BSH="`basename "${SHELL}"`"
case "${BSH}" in
bash|ksh|sh|*csh)
P="`${SHELL} -c 'echo $PATH'`"
;;
*)
echo "Sorry, I don't know how to patch $BSH shells"
exit 0
;;
esac
# Now ensure that our bin directory is on $P and before /usr/bin at that
for elem in `echo $P | tr ':' ' '`
do
if [ "${elem}" == "${PYTHON_ROOT}/bin" ]; then
echo "All right, you're a python lover already"
exit 0
elif [ "${elem}" == "/usr/bin" ]; then
break
fi
done
echo "${PYTHON_ROOT}/bin is not on your PATH or at least not early enough"
case "${BSH}" in
*csh)
# Create backup copy before patching
if [ -f "${HOME}/.cshrc" ]; then
cp -fp "${HOME}/.cshrc" "${HOME}/.cshrc.pysave"
fi
echo "" >> "${HOME}/.cshrc"
echo "# Setting PATH for MacPython ${PYVER}" >> "${HOME}/.cshrc"
echo "# The orginal version is saved in .cshrc.pysave" >> "${HOME}/.cshrc"
echo "set path=(${PYTHON_ROOT}/bin "'$path'")" >> "${HOME}/.cshrc"
exit 0
;;
bash)
if [ -e "${HOME}/.profile" ]; then
PR="${HOME}/.profile"
else
PR="${HOME}/.bash_profile"
fi
;;
*sh)
PR="${HOME}/.profile"
;;
esac
# Create backup copy before patching
if [ -f "${PR}" ]; then
cp -fp "${PR}" "${PR}.pysave"
fi
echo "" >> "${PR}"
echo "# Setting PATH for MacPython ${PYVER}" >> "${PR}"
echo "# The orginal version is saved in `basename ${PR}`.pysave" >> "${PR}"
echo 'PATH="'"${PYTHON_ROOT}/bin"':${PATH}"' >> "${PR}"
echo 'export PATH' >> "${PR}"
if [ `id -ur` = 0 ]; then
chown "${LOGNAME}" "${PR}"
fi
exit 0
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment