#!/bin/ksh

#################################
#   AIX shared library helper	#
#################################

#   ------------------------------------------------------------
#   This script should be in the Modules directory, and I run it
#   (from there) after having built all the shared objects.
#   ------------------------------------------------------------

#   --------------------------------------------------
#   Create the export file which will list all symbols
#   that the statically linked python executable has
#   to make available to dynamically loaded modules.
#   --------------------------------------------------
sort -u *.imp > python.exp

#   ---------------------------------------------------------------------
#   Link the python executable.  I think this is exactly the same command
#   which the unmodified python makefile comes up with, except for the
#   addition of the -bE: argument.
#   ---------------------------------------------------------------------
cc -O main.o config.o getpath.o libModules.a ../Python/libPython.a      \
    ../Objects/libObjects.a ../Parser/libParser.a -lm -lc -lg           \
    -H512 -T512 -bE:python.exp                                          \
    -o python

#   -----------------------------------------------------------------
#   Install the Python executable up one directory from Modules (just
#   like the unmodified makefile does).
#   -----------------------------------------------------------------
mv python ..
