*** empty log message ***

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@976 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Dave Beazley 2001-01-02 04:15:00 +00:00
commit fdd40da28b
6 changed files with 571 additions and 61 deletions

View file

@ -1,26 +1,29 @@
# Generated automatically from Makefile.in by configure.
SRCS = stab.c elf.c object.c init.c segment.c signal.c # Generated automatically from Makefile.in by configure.
OBJS = stab.o elf.o object.o signal.o segment.o init.o main.o
all::
CC -Kpic -c main.cxx
cc -c $(SRCS)
CC -G $(OBJS) -o libwad.so
swig::
swig -python wad.i
CC -Kpic -c main.cxx
cc -c $(SRCS) wad_wrap.c -I/usr/local/include/python1.6
CC -G $(OBJS) wad_wrap.o -o wadmodule.so
some:: # Location of your Python installation
cc -g bar.c blah.c -L. -lwad -R /u0/beazley/Projects/WAD -lelf PYINCLUDE = -I/usr/local/include/python1.5 -I/usr/local/lib/python1.5/config
wc:: # Location of your Tcl installation
wc $(SRCS) TCLINCLUDE = -I/usr/local/include
semi:: # Location of your Perl installation
egrep ";" $(SRCS) | wc PERLINCLUDE = -I/usr/lib/perl5/5.00503/i386-linux/CORE
all: wad python tcl perl
wad:
@cd Wad; $(MAKE) wad
python:
@cd Wad; $(MAKE) SINCLUDE='$(PYINCLUDE)' python
tcl:
@cd Wad; $(MAKE) SINCLUDE='$(TCLINCLUDE)' tcl
perl:
@cd Wad; $(MAKE) SINCLUDE='$(PERLINCLUDE)' perl

View file

@ -0,0 +1,28 @@
# Generated automatically from Makefile.in by configure.
# Location of your Python installation
PYINCLUDE = @PYINCLUDE@
# Location of your Tcl installation
TCLINCLUDE = @TCLINCLUDE@
# Location of your Perl installation
PERLINCLUDE = @PERL5EXT@
all: wad @MAKEPYTHON@ @MAKETCL@ @MAKEPERL@
wad:
@cd Wad; $(MAKE) wad
python:
@cd Wad; $(MAKE) SINCLUDE='$(PYINCLUDE)' python
tcl:
@cd Wad; $(MAKE) SINCLUDE='$(TCLINCLUDE)' tcl
perl:
@cd Wad; $(MAKE) SINCLUDE='$(PERLINCLUDE)' perl

View file

@ -21,7 +21,7 @@ AT ALL. PLEASE KEEP AWAY FROM SMALL CHILDREN, PETS, NUCLEAR REACTORS,
AIR-TRAFFIC CONTROL, VOTING MACHINES, AND MEDICAL EQUIPMENT. SIDE AIR-TRAFFIC CONTROL, VOTING MACHINES, AND MEDICAL EQUIPMENT. SIDE
EFFECTS MAY INCLUDE NAUSEA, VOMITING, AND HEADACHE. OTHER THAN THIS, EFFECTS MAY INCLUDE NAUSEA, VOMITING, AND HEADACHE. OTHER THAN THIS,
IT'S PERFECTLY SAFE. IT'S PERFECTLY SAFE.
1. Introduction 1. Introduction
WAD is an embedded error-recovery mechanism that attempts to convert WAD is an embedded error-recovery mechanism that attempts to convert

View file

@ -1,55 +1,70 @@
# Generated automatically from Makefile.in by configure.
#######################################################################
# WAD Makefile
#
# David Beazley
# January 1, 2001
#######################################################################
SRCS = return.c default.c stack.c stab.c elf.c object.c init.c segment.c signal.c # These are the files that make up the WAD core
OBJS = return.o default.o stack.o stab.o elf.o object.o signal.o segment.o init.o WADSRCS = return.c default.c stack.c stab.c elf.c object.c init.c segment.c signal.c
INCLUDE = -I../Include -I. WADOBJS = return.o default.o stack.o stab.o elf.o object.o signal.o segment.o init.o
OPT = -DWAD_SOLARIS INCLUDE = -I../Include -I. $(SINCLUDE)
LIBS = WADOPT = -DWAD_LINUX
#PYINCLUDE = -I/usr/local/include/python2.0 # Location of your Python installation
PYINCLUDE = -I/usr/local/include/python1.5 PYINCLUDE = -I/usr/local/include/python1.5 -I/usr/local/lib/python1.5/config
PYSRCS = wadpy.cxx
PYOBJS = wadpy.o
# Location of your Tcl installation
TCLINCLUDE = -I/usr/local/include TCLINCLUDE = -I/usr/local/include
PERLINCLUDE = -I/usr/local/lib/perl5/5.6.0/sun4-solaris/CORE TCLSRCS = wadtcl.cxx
TCLOBJS = wadtcl.o
all:: # Location of your Perl installation
CC -Kpic -c $(OPT) $(INCLUDE) main.cxx PERLINCLUDE = -I/usr/lib/perl5/5.00503/i386-linux/CORE
cc -c $(OPT) $(INCLUDE) $(SRCS) PERLSRCS = wadpl.cxx
CC -G $(OBJS) main.o -o libwad.so $(LIBS) PERLOBJS = wadpl.o
# C Compiler
CC = gcc
CFLAGS = -fpic
# C++ Compiler
CXX = c++
CXXFLAGS = -fpic
# Linking options
CLINK =
CXXLINK = g++ -shared
# Rules for creation of a .o file from .cxx
.SUFFIXES: .cxx
.cxx.o:
$(CXX) $(CXXFLAGS) $(WADOPT) $(INCLUDE) -c -o $*.o $<
.c.o:
$(CC) $(CFLAGS) $(WADOPT) $(INCLUDE) -c -o $*.o $<
wad: $(WADOBJS) main.o
$(CXXLINK) $(WADOBJS) main.o -o libwad.so
cp libwad.so .. cp libwad.so ..
python:: python: $(WADOBJS) $(PYOBJS)
cc -c $(OPT) $(INCLUDE) $(SRCS) $(CXXLINK) $(WADOBJS) $(PYOBJS) -o libwadpy.so
CC -Kpic -c $(INCLUDE) $(PYINCLUDE) wadpy.cxx
CC -G $(OBJS) main.o wadpy.o -o libwadpy.so $(LIBS)
cp libwadpy.so .. cp libwadpy.so ..
tcl:: tcl: $(WADOBJS) $(TCLOBJS)
cc -c $(OPT) $(INCLUDE) $(SRCS) $(CXXLINK) $(WADOBJS) $(TCLOBJS) -o libwadtcl.so
CC -Kpic -c $(INCLUDE) $(TCLINCLUDE) wadtcl.cxx
CC -G $(OBJS) wadtcl.o -o wad.so $(LIBS)
cp wad.so libwadtcl.so
cp libwadtcl.so .. cp libwadtcl.so ..
perl:: perl: wad_perl_handler.c $(WADOBJS) $(PERLOBJS)
makehandler.py $(CXXLINK) $(WADOBJS) $(PERLOBJS) -o libwadpl.so
cc -c $(OPT) $(INCLUDE) $(SRCS)
CC -Kpic -c $(INCLUDE) $(PERLINCLUDE) wadpl.cxx
CC -G $(OBJS) wadpl.o -o libwadpl.so $(LIBS)
cp libwadpl.so .. cp libwadpl.so ..
linux:: wad_perl_handler.c:
g++ -fpic -c -DWAD_LINUX $(INCLUDE) main.cxx python makehandler.py
gcc -g -c -DWAD_LINUX $(INCLUDE) $(SRCS)
g++ -shared $(OBJS) main.o -o libwad.so $(LIBS)
cp libwad.so ..
linux-python::
gcc -c -DWAD_LINUX $(INCLUDE) $(SRCS)
g++ -fpic -c -DWAD_LINUX $(INCLUDE) $(PYINCLUDE) wadpy.cxx
g++ -shared $(OBJS) wadpy.o -o libwadpy.so $(LIBS)
cp libwadpy.so ..
linux2::
cc -DWAD_LINUX $(INCLUDE) signal.c stack.c default.c demangle.c return.c stab.c elf.c object.c segment.c init.c debug.c
debug:: debug::
cc -g debug.c $(INCLUDE) -L. -R. -lwad cc -g debug.c $(INCLUDE) -L. -R. -lwad
@ -67,3 +82,6 @@ semi::
clean:: clean::
rm -f *.o *.so *~ rm -f *.o *.so *~

View file

@ -0,0 +1,86 @@
#######################################################################
# WAD Makefile
#
# David Beazley
# January 1, 2001
#######################################################################
# These are the files that make up the WAD core
WADSRCS = return.c default.c stack.c stab.c elf.c object.c init.c segment.c signal.c
WADOBJS = return.o default.o stack.o stab.o elf.o object.o signal.o segment.o init.o
INCLUDE = -I../Include -I. $(SINCLUDE)
WADOPT = @WADOPT@
# Location of your Python installation
PYINCLUDE = @PYINCLUDE@
PYSRCS = wadpy.cxx
PYOBJS = wadpy.o
# Location of your Tcl installation
TCLINCLUDE = @TCLINCLUDE@
TCLSRCS = wadtcl.cxx
TCLOBJS = wadtcl.o
# Location of your Perl installation
PERLINCLUDE = @PERL5EXT@
PERLSRCS = wadpl.cxx
PERLOBJS = wadpl.o
# C Compiler
CC = @CC@
CFLAGS = @CCSHARED@
# C++ Compiler
CXX = @CXX@
CXXFLAGS = @CXXSHARED@
# Linking options
CLINK =
CXXLINK = @CXXLINK@
# Rules for creation of a .o file from .cxx
.SUFFIXES: .cxx
.cxx.o:
$(CXX) $(CXXFLAGS) $(WADOPT) $(INCLUDE) -c -o $*.o $<
.c.o:
$(CC) $(CFLAGS) $(WADOPT) $(INCLUDE) -c -o $*.o $<
wad: $(WADOBJS) main.o
$(CXXLINK) $(WADOBJS) main.o -o libwad.so
cp libwad.so ..
python: $(WADOBJS) $(PYOBJS)
$(CXXLINK) $(WADOBJS) $(PYOBJS) -o libwadpy.so
cp libwadpy.so ..
tcl: $(WADOBJS) $(TCLOBJS)
$(CXXLINK) $(WADOBJS) $(TCLOBJS) -o libwadtcl.so
cp libwadtcl.so ..
perl: wad_perl_handler.c $(WADOBJS) $(PERLOBJS)
$(CXXLINK) $(WADOBJS) $(PERLOBJS) -o libwadpl.so
cp libwadpl.so ..
wad_perl_handler.c:
python makehandler.py
debug::
cc -g debug.c $(INCLUDE) -L. -R. -lwad
plus::
CC -g debug.cxx $(INCLUDE) -L. -R. -lwad
wc::
wc $(SRCS)
semi::
egrep ";" $(SRCS) wadpy.cxx | wc
clean::
rm -f *.o *.so *~

375
SWIG/Tools/WAD/configure.in Normal file
View file

@ -0,0 +1,375 @@
dnl Process this file with autoconf to produce a configure script.
dnl NOTES:
dnl * As of 1.34, we no longer use and test for "nope" to indicate
dnl an empty variable. Instead, we use `VAR=' (set the variable
dnl to nothing) and `test -z "$VAR"' or `test -n "$VAR"' as the
dnl case may be. --ttn, 2000/08/04 12:11:26
AC_INIT(Include/wad.h)
AC_PREREQ(2.0)
# Set name for machine-dependent library files
AC_SUBST(MACHDEP)
AC_MSG_CHECKING(MACHDEP)
if test -z "$MACHDEP"
then
if test -f /usr/lib/NextStep/software_version; then
set X `hostinfo | grep 'NeXT Mach.*:' | \
sed -e 's/://' -e 's/\./_/'` && \
ac_sys_system=next && ac_sys_release=$4
MACHDEP="$ac_sys_system$ac_sys_release$ac_sys_cpu"
else
ac_sys_system=`uname -s`
if test "$ac_sys_system" = "AIX" ; then
ac_sys_release=`uname -v`
else
ac_sys_release=`uname -r`
fi
ac_md_system=`echo $ac_sys_system |
tr -d '[/ ]' | tr '[[A-Z]]' '[[a-z]]'`
ac_md_release=`echo $ac_sys_release |
tr -d '[/ ]' | sed 's/\..*//'`
MACHDEP="$ac_md_system$ac_md_release"
fi
case MACHDEP in
'') MACHDEP=unknown;;
esac
fi
AC_MSG_RESULT($MACHDEP)
AC_PROG_CC
AC_PROG_CXX
AC_PROG_RANLIB
dnl Checks for programs.
AC_SUBST(AR)
AC_CHECK_PROGS(AR, ar aal, ar)
dnl Checks for header files.
AC_HEADER_STDC
dnl Checks for library functions.
# Set info about shared libraries.
AC_SUBST(SO)
AC_SUBST(LDSHARED)
AC_SUBST(CCSHARED)
# SO is the extension of shared libraries `(including the dot!)
# -- usually .so, .sl on HP-UX
AC_MSG_CHECKING(SO)
if test -z "$SO"
then
case $ac_sys_system in
hp*|HP*) SO=.sl;;
*) SO=.so;;
esac
fi
AC_MSG_RESULT($SO)
# WAD Options
AC_SUBST(WADOPT)
AC_MSG_CHECKING(WADOPT)
if test -z "$WADOPT"
then
case $ac_sys_system/$ac_sys_release in
SunOS/5*) WADOPT="-DWAD_SOLARIS";;
Linux*) WADOPT="-DWAD_LINUX";;
*) WADOPT="-DWAD_UNKWOWN";;
esac
fi
AC_MSG_RESULT($WADOPT)
# LDSHARED is the ld *command* used to create shared library
# -- "ld" on SunOS 4.x.x, "ld -G" on SunOS 5.x, "ld -shared" on IRIX 5
# (Shared libraries in this instance are shared modules to be loaded into
# Python, as opposed to building Python itself as a shared library.)
AC_MSG_CHECKING(LDSHARED)
if test -z "$LDSHARED"
then
case $ac_sys_system/$ac_sys_release in
AIX*) LDSHARED="\$(srcdir)/ld_so_aix \$(CC)";;
IRIX/5*) LDSHARED="ld -shared";;
IRIX*/6*) LDSHARED="ld ${SGI_ABI} -shared -all";;
SunOS/4*) LDSHARED="ld";;
SunOS/5*) LDSHARED="ld -G";;
hp*|HP*) LDSHARED="ld -b";;
OSF*) LDSHARED="ld -shared -expect_unresolved \"*\"";;
DYNIX/ptx*) LDSHARED="ld -G";;
next/*)
if test "$ns_dyld"
then LDSHARED='$(CC) $(LDFLAGS) -bundle -prebind'
else LDSHARED='$(CC) $(CFLAGS) -nostdlib -r';
fi
if test "$with_next_framework" ; then
LDSHARED="$LDSHARED \$(LDLIBRARY)"
fi ;;
Linux*) LDSHARED="gcc -shared";;
dgux*) LDSHARED="ld -G";;
FreeBSD*/3*) LDSHARED="gcc -shared";;
FreeBSD*|OpenBSD*) LDSHARED="ld -Bshareable";;
NetBSD*)
if [[ "`$CC -dM -E - </dev/null | grep __ELF__`" != "" ]]
then
LDSHARED="cc -shared"
else
LDSHARED="ld -Bshareable"
fi;;
SCO_SV*) LDSHARED="cc -G -KPIC -Ki486 -belf -Wl,-Bexport";;
*) LDSHARED="ld";;
esac
fi
AC_MSG_RESULT($LDSHARED)
# CXXSHARED is the C++ *command* used to create shared library
AC_SUBST(CXXLINK)
AC_MSG_CHECKING(CXXLINK)
if test -z "$CXXLINK"
then
case $ac_sys_system/$ac_sys_release in
SunOS/5*) if test "$GCC" = yes;
then CXXLINK="g++ -shared";
else CXXLINK="CC -G";
fi;;
Linux*) CXXLINK="g++ -shared";;
*) CXXLINK="g++";;
esac
fi
AC_MSG_RESULT($CXXLINK)
# CCSHARED are the C *flags* used to create objects to go into a shared
# library (module) -- this is only needed for a few systems
AC_MSG_CHECKING(CCSHARED)
if test -z "$CCSHARED"
then
case $ac_sys_system/$ac_sys_release in
hp*|HP*) if test "$GCC" = yes;
then CCSHARED="-fpic";
else CCSHARED="+z";
fi;;
Linux*) CCSHARED="-fpic";;
FreeBSD*|OpenBSD*) CCSHARED="-fpic";;
NetBSD*) CCSHARED="-fPIC";;
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
*) CCSHARED="";;
esac;;
esac
fi
AC_MSG_RESULT($CCSHARED)
AC_SUBST(CXXSHARED)
# CCSHARED are the C *flags* used to create objects to go into a shared
# library (module) -- this is only needed for a few systems
AC_MSG_CHECKING(CXXSHARED)
if test -z "$CXXSHARED"
then
case $ac_sys_system/$ac_sys_release in
Linux*) CXXSHARED="-fpic";;
SunOS/5*) if test "$GCC" = yes;
then CXXSHARED="-fpic";
else CXXSHARED="-Kpic";
fi;;
esac
fi
AC_MSG_RESULT($CXXSHARED)
#--------------------------------------------------------------------
# Try to locate the Tcl package
#--------------------------------------------------------------------
TCLINCLUDE=
TCLLIB=
TCLPACKAGE=
MAKETCL=
AC_ARG_WITH(tcl,[ --with-tcl=path Set location of Tcl package],[
TCLPACKAGE="$withval"], [TCLPACKAGE=])
AC_ARG_WITH(tclincl,[ --with-tclincl=path Set location of Tcl include directory],[
TCLINCLUDE="-I$withval"], [TCLINCLUDE=])
AC_ARG_WITH(tcllib,[ --with-tcllib=path Set location of Tcl library directory],[
TCLLIB="-L$withval"], [TCLLIB=])
if test -z "$TCLINCLUDE"; then
if test -n "$TCLPACKAGE"; then
TCLINCLUDE="-I$TCLPACKAGE/include"
fi
fi
if test -z "$TCLLIB"; then
if test -n "$TCLPACKAGE"; then
TCLLIB="-L$TCLPACKAGE/lib"
fi
fi
AC_MSG_CHECKING(for Tcl header files)
if test -z "$TCLINCLUDE"; then
AC_TRY_CPP([#include <tcl.h>], , TCLINCLUDE="")
if test -z "$TCLINCLUDE"; then
dirs="$prefix/include /usr/local/include /usr/include /opt/local/include /home/sci/local/include"
for i in $dirs ; do
if test -r $i/tcl.h; then
AC_MSG_RESULT($i)
TCLINCLUDE="-I$i"
MAKETCL="tcl"
break
fi
done
fi
if test -z "$TCLINCLUDE"; then
TCLINCLUDE=""
MAKETCL=""
AC_MSG_RESULT(not found)
fi
else
AC_MSG_RESULT($TCLINCLUDE)
fi
AC_SUBST(TCLINCLUDE)
AC_SUBST(MAKETCL)
#----------------------------------------------------------------
# Look for Python
#----------------------------------------------------------------
PYINCLUDE=
MAKEPYTHON=
PYLIB=
PYPACKAGE=
AC_ARG_WITH(py,[ --with-py=path Set location of Python],[
PYPACKAGE="$withval"], [PYPACKAGE=])
AC_ARG_WITH(pyincl,[ --with-pyincl=path Set location of Python include directory],[
PYINCLUDE="$withval"], [PYINCLUDE=])
AC_ARG_WITH(pylib,[ --with-pylib=path Set location of Python library directory],[
PYLIB="$withval"], [PYLIB=])
if test -z "$PYINCLUDE"; then
if test -n "$PYPACKAGE"; then
PYINCLUDE="$PYPACKAGE/include"
fi
fi
if test -z "$PYLIB"; then
if test -n "$PYPACKAGE"; then
PYLIB="$PYPACKAGE/lib"
fi
fi
AC_MSG_CHECKING(for Python header files)
dirs="$PYINCLUDE $PYINCLUDE/python1.6 $PYINCLUDE/python1.5 $PYINCLUDE/python1.4 $PYINCLUDE/Py $prefix=/include/python1.6 $prefix/include/python1.5 $prefix/include/python1.4 /usr/local/include/python1.6 /usr/local/include/python1.5 /usr/include/python1.5 /usr/local/include/python1.4 /usr/include/python1.4 $prefix/include/Py /usr/local/include/Py /usr/include/Py"
for i in $dirs ; do
if test -r $i/Python.h; then
AC_MSG_RESULT($i)
PYINCLUDE="-I$i"
MAKEPYTHON="python"
break
fi
done
if test -z "$PYINCLUDE"; then
PYINCLUDE=""
MAKEPYTHON=""
AC_MSG_RESULT(not found)
fi
AC_MSG_CHECKING(for Python library)
dirs="$PYLIB $PYLIB/config $PYLIB/lib $PYLIB/python1.6/config $PYLIB/python1.5/config $PYLIB/python1.4/config $PYLIB/python/lib $prefix/lib/python1.6/config $prefix/lib/python1.5/config $prefix/lib/python1.4/config /usr/local/lib/python1.6/config /usr/local/lib/python1.5/config /usr/lib/python1.5 /usr/local/lib/python1.4/config /usr/lib/python1.4 $prefix/lib/python/lib /usr/local/lib/python/lib /usr/lib/python/lib /home/sci/local/lib/python"
for i in $dirs ; do
if test -r $i/libpython1.6.a; then
AC_MSG_RESULT($i)
PYLIB="$i"
PYINCLUDE="$PYINCLUDE -I$i"
PYLINK="-lpython1.6"
break
fi
if test -r $i/libpython1.5.a; then
AC_MSG_RESULT($i)
PYLIB="$i"
PYINCLUDE="$PYINCLUDE -I$i"
PYLINK="-lpython1.5"
break
fi
if test -r $i/libPython.a; then
AC_MSG_RESULT($i)
PYLIB="$i"
PYINCLUDE="$PYINCLUDE -I$i"
break
fi
done
AC_SUBST(PYINCLUDE)
AC_SUBST(PYLIB)
AC_SUBST(PYLINK)
AC_SUBST(MAKEPYTHON)
#----------------------------------------------------------------
# Look for Perl5
#----------------------------------------------------------------
PERLBIN=
MAKEPERL=
AC_ARG_WITH(perl5,[ --with-perl5=path Set location of Perl5 executable],[ PERLBIN="$withval"], [PERLBIN=])
# First figure out what the name of Perl5 is
if test -z "$PERLBIN"; then
AC_CHECK_PROGS(PERL, perl5.004 perl5.003 perl5.002 perl5.001 perl5 perl)
else
PERL="$PERLBIN"
fi
AC_MSG_CHECKING(for Perl5 header files)
if test -n "$PERL"; then
PERL5DIR=`($PERL -e 'use Config; print $Config{archlib};') 2>/dev/null`
if test "$PERL5DIR" != ""; then
dirs="$PERL5DIR $PERL5DIR/CORE"
PERL5EXT=none
for i in $dirs; do
if test -r $i/perl.h; then
AC_MSG_RESULT($i)
PERL5EXT="-I$i"
MAKEPERL="perl"
break;
fi
done
if test "$PERL5EXT" = none; then
PERL5EXT=""
MAKEPERL=""
AC_MSG_RESULT(could not locate perl.h...using $PERL5EXT)
fi
else
AC_MSG_RESULT(unable to determine perl5 configuration)
PERL5EXT=""
MAKEPERL=""
fi
else
AC_MSG_RESULT(could not figure out how to run perl5)
PERL5EXT=""
MAKEPERL=""
fi
AC_SUBST(PERL5EXT)
AC_SUBST(MAKEPERL)
# NOTE: The following ref to `Source' should NOT be prefixed w/ `$srcdir/'.
# We can remove it if `Source' ever has a generated file but not before.
test -d Source || mkdir Source
dnl We use the following in `AC_OUTPUT' and "make distclean".
configure_substituted_files=`echo \
Wad/Makefile \
Makefile \
`
AC_SUBST(configure_substituted_files)
AC_OUTPUT([$configure_substituted_files])
dnl configure.in ends here