mirror of https://github.com/python/cpython
59 lines
1.7 KiB
Plaintext
59 lines
1.7 KiB
Plaintext
|
# Makefile to do general-coverage creation of dynamic-load libraries
|
||
|
# from python C-module sources.
|
||
|
|
||
|
# $Id$
|
||
|
# Created by Ken Manheimer, Jul-1994. ken.manheimer@nist.gov, 301 975-3539
|
||
|
|
||
|
# To configure for your site, select the appropriate SOURCES and macro
|
||
|
# def and assign the right path to the prefix macro.
|
||
|
|
||
|
ARCH= sun4
|
||
|
prefix= /depot/sundry
|
||
|
DESTLIB= $(prefix)/lib/python/$(ARCH)
|
||
|
|
||
|
### For Sun Make; tested in v 1.0, under both SunOS 4.1.3 and SunOS 5.3:
|
||
|
#SOURCES:sh= echo *.c
|
||
|
### For Gnu Make; works at least for v 3.59:
|
||
|
SOURCES= $(wildcard *.c)
|
||
|
|
||
|
# To configure for a new module:
|
||
|
# - put the module in the current directory
|
||
|
# - if it doesn't require any special compile or load options, that's it.
|
||
|
# - if it does require special compile or load options, create a macro
|
||
|
# composed of the (full) module name, sans suffix, plus 'CFLAGS' or
|
||
|
# 'LDFLAGS', depending on the compile phase in question.
|
||
|
metalbasemoduleCFLAGS= -I$(prefix)/include/mbase51 -DNO_TIMEB -DNO_USHORT -DNO_ENCRYPT
|
||
|
metalbasemoduleLDFLAGS= -L/depot/sundry/plat/lib -lmb
|
||
|
cursesmoduleCFLAGS= -I/usr/5include
|
||
|
cursesmoduleLDFLAGS= -L/usr/5lib -lcurses -ltermcap
|
||
|
|
||
|
OBJS= $(SOURCES:.c=.so)
|
||
|
|
||
|
CC= gcc
|
||
|
OPT= -g -O
|
||
|
DEFS= -DHAVE_CONFIG_H
|
||
|
INCLDIR= $(prefix)/include/python
|
||
|
CFLAGS= $(OPT) -I$(INCLDIR) -I.. $(DEFS)
|
||
|
LD= ld
|
||
|
|
||
|
all: $(OBJS)
|
||
|
|
||
|
%.o: %.c
|
||
|
$(CC) -c $(CFLAGS) $(CPPFLAGS) $($*CFLAGS) -o $@ $<
|
||
|
|
||
|
%.so: %.o
|
||
|
$(LD) $(LDFLAGS) -o $@ $< $($*LDFLAGS) $(LOADLIBES)
|
||
|
|
||
|
PHONY: echo # For testing derivation of $(OBJS).
|
||
|
echo:
|
||
|
@echo "(Set SOURCES def if you don't see a '.so' for each '.c' between the brackets)"
|
||
|
@echo :$(OBJS):
|
||
|
|
||
|
PHONY : install
|
||
|
install: $(OBJS)
|
||
|
ls $(OBJS) | cpio -pm $(DESTLIB)
|
||
|
|
||
|
PHONY : clean
|
||
|
clean:
|
||
|
rm -f *.o *.so
|