]> granicus.if.org Git - python/commitdiff
install: New target that installs shared modules in
authorFred Drake <fdrake@acm.org>
Sat, 4 Oct 1997 04:56:40 +0000 (04:56 +0000)
committerFred Drake <fdrake@acm.org>
Sat, 4 Oct 1997 04:56:40 +0000 (04:56 +0000)
$exec_prefix/lib/python$VERSION/site-packages by default.

Misc/Makefile.pre.in

index a8db76480e5f30ae4e63aefda79782ee6761afc0..31d491ddcbbc0f140c6243f8d05b5de2ad77c081 100644 (file)
@@ -149,6 +149,7 @@ BINLIBDEST= $(LIBDIR)/python$(VERSION)
 LIBDEST=       $(SCRIPTDIR)/python$(VERSION)
 INCLUDEPY=     $(INCLUDEDIR)/python$(VERSION)
 LIBP=          $(exec_installdir)/lib/python$(VERSION)
+DESTSHARED=    $(BINLIBDEST)/site-packages
 
 LIBPL=         $(LIBP)/config
 
@@ -164,6 +165,13 @@ SYSLIBS=   $(LIBM) $(LIBC)
 
 ADDOBJS=       $(LIBPL)/python.o config.o
 
+# Portable install script (configure doesn't always guess right)
+INSTALL=       $(LIBPL)/install-sh -c
+# Shared libraries must be installed with executable mode on some systems;
+# rather than figuring out exactly which, we always give them executable mode.
+# Also, making them read-only seems to be a good idea...
+INSTALL_SHARED=        ${INSTALL} -m 555
+
 # === Fixed rules ===
 
 # Default target.  This builds shared libraries only
@@ -182,6 +190,15 @@ $(TARGET): $(ADDOBJS) lib.a $(PYTHONLIBS) Makefile $(BASELIB)
                 $(LINKPATH) $(BASELIB) $(MODLIBS) $(LIBS) $(SYSLIBS) \
                 -o $(TARGET)
 
+install:       sharedmods
+               if test ! -d $(DESTSHARED) ; then \
+                       mkdir $(DESTSHARED) ; else true ; fi
+               -for i in X $(SHAREDMODS); do \
+                       if test $$i != X; \
+                       then $(INSTALL_SHARED) $$i $(DESTSHARED)/$$i; \
+                       fi; \
+               done
+
 # Build the library containing our extension modules
 lib.a:         $(MODOBJS)
                -rm -f lib.a