New files

This commit is contained in:
Guido van Rossum 1993-12-24 10:39:16 +00:00
parent 6fa6343f0e
commit 627b2d7cd7
4 changed files with 1523 additions and 0 deletions

38
Makefile.in Normal file
View file

@ -0,0 +1,38 @@
MAKE= make
SUBDIRS= Parser Grammar Objects Python
all: config.status
for i in $(SUBDIRS); do (echo $$i; cd $$i; $(MAKE) all); done
localclean:
-rm -f core *~ [@,#]* *.old *.orig *.rej
-(cd Py; rm -f core *~ [@,#]* *.old *.orig *.rej)
clean: localclean
-for i in $(SUBDIRS); do \
(echo $$i;cd $$i;$(MAKE) clean); \
done
clobber: localclean
-for i in $(SUBDIRS); do \
(echo $$i;cd $$i;$(MAKE) clobber); \
done
distclean: clobber
-for i in $(SUBDIRS); do \
if test -f $$i/Makefile.in; then \
rm -f $$i/Makefile; \
fi; \
done
-rm -f config.status
Makefiles: config.status
./config.status
config.status: configure
./configure
configure: configure.in
autoconf

61
README Normal file
View file

@ -0,0 +1,61 @@
This is an ALPHA release of Python 1.0 for UNIX. Currently it builds
a rather minimal executable and requires that you already have Python
0.9.9 (or at least its library).
Instructions for building:
(1) Run the configure shell script:
./configure
This may take a minute or two -- it does a rather thorough
investigation of your system to find out many compile-time flags. It
prints messages but does not ask questions. When finished, it will
create config.status in the current directory, as well as Makefile in
each of the subdirectories Parser, Objects and Python. Note that
unless you have the CC shell environment variable set to the name of
your C compiler, it will attempt to find the GNU C compiler (gcc) and
use it if it finds it. On some systems a broken gcc may be installed;
put CC=cc in the environment to override it. On some systems it may
be interesting to compare both compilers. (Note: the Makefile has
been rigged in such a way that it will run configure if you haven't
done so.)
(2) Run Make:
make
This will recursively run Make in each of the Parser, Objects and
Python subdirectories. In Parser it builds an executable "pgen" and a
library libParser.a. In Objects it builds a library libObjects.a. In
Python it builds a library libPython.a and an executable "python".
(3) Test the resulting executable:
Python/python -c 'import testall'
For now, this will assume that you have a working version of Python
release 0.9.9 installed in /usr/local (it uses the Python library from
/usr/local/lib/python) or that your PYTHONPATH shell environment
variable points to the 0.9.9 Python library.
(4) Optionally: read Extensions/README and try to build a Python with
all the extensions that make sense on your system. (Note: some
extensions are not supported yet.)
(5) Give feedback:
Mail guido@cwi.nl
Please tell me whether the build succeeded or not. If you needed to
edit *any* file, tell me which file, why and how (send me a diff or a
copy of the modified file if you can). If you get stuck, please send
me the error output. Don't forget to mention the operating system,
compiler and hardware version that you used, e.g. "Solaris 2.2 with
gcc version cygnus-2.0.2 on a dual processor Sparcstation 10" or "IRIX
5.1 with standard cc on an Indigo XS-24 with R4000 CPU". If you can
build the core interpreter but get stuck building an extended version,
let me know which extensions gave problems and how.
--Guido van Rossum, CWI, Amsterdam <Guido.van.Rossum@cwi.nl>
URL: <http://www.cwi.nl/cwi/people/Guido.van.Rossum.html>

1347
configure vendored Executable file

File diff suppressed because it is too large Load diff

77
configure.in Normal file
View file

@ -0,0 +1,77 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(Py/object.h)
# checks for alternative programs
AC_PROG_CC
AC_PROG_RANLIB
# checks for UNIX variants that set C preprocessor variables
AC_AIX
AC_ISC_POSIX
AC_MINIX
dnl DYNIX test runs compile so must be last
AC_DYNIX_SEQ
# checks for header files
AC_STDC_HEADERS
AC_HAVE_HEADERS(dlfcn.h signal.h stdarg.h unistd.h utime.h sys/param.h sys/select.h sys/times.h sys/utsname.h)
AC_DIR_HEADER
# checks for typedefs
AC_GETGROUPS_T
AC_MODE_T
AC_OFF_T
AC_PID_T
AC_RETSIGTYPE
AC_SIZE_T
AC_UID_T
# checks for libraries
AC_HAVE_LIBRARY(dl)
LIBS="${LIBS} -L${READLINESRC-${PWD-${CWD-`pwd`}}/readline}"
AC_HAVE_LIBRARY(readline)
if test -n "${have_lib}"; then
AC_HAVE_LIBRARY(termcap)
fi
# Check for IRIX or SOLARIS thread interface
AC_HAVE_LIBRARY(mpc)
if test -n "${have_lib}"; then
DEFS="${DEFS} -DUSE_THREAD"
LIBOBJS="${LIBOBJS} thread.o"
fi
AC_HAVE_LIBRARY(thread)
if test -n "${have_lib}"; then
DEFS="${DEFS} -DUSE_THREAD"
LIBOBJS="${LIBOBJS} thread.o"
fi
# checks for library functions
AC_HAVE_FUNCS(clock ftime gettimeofday getpgrp getwd lstat readlink readline select setsid setpgid setpgrp siginterrupt symlink tcgetpgrp tcsetpgrp times uname waitpid)
AC_REPLACE_FUNCS(dup2 getcwd strerror strtoul strtod memmove)
AC_FUNC_CHECK(getpgrp, AC_COMPILE_CHECK([argument to getpgrp], [#include <unistd.h>], [getpgrp(0);], AC_DEFINE(GETPGRP_HAVE_ARG)))
# checks for structures
AC_TIME_WITH_SYS_TIME
AC_STRUCT_TM
AC_TIMEZONE
# checks for compiler characteristics
AC_CONST
echo checking for prototypes
AC_TEST_PROGRAM([int foo(int x){return 0;} int main(){return foo(10);}], AC_DEFINE(HAVE_PROTOTYPES) have_prototypes=1)
if test "$have_prototypes"; then
AC_COMPILE_CHECK(["bad exec* prototypes"], [#include <unistd.h>], [char *const*t;execve("@",t,t);], , AC_DEFINE(BAD_EXEC_PROTOTYPES))
fi
# checks for system services
# (none yet)
# other checks for UNIX variants
AC_IRIX_SUN
AC_XENIX_DIR
# generate output files
AC_OUTPUT(Objects/Makefile Parser/Makefile Python/Makefile)