1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
CC = gcc
SRC = ./src
LIB = .
DEBUG = -g
OPTIMIZE = -O2
PYTHON = 1.5
PYTHONDIR = /usr/lib/python$(PYTHON)
PYTHONLIB = $(PYTHONDIR)/site-packages
PYTHONINC = /usr/include/python$(PYTHON)
CCSHARED = -fpic
INCLUDES = -I. -I$(PYTHONINC)
GCCWARN = -Wall -Wstrict-prototypes
CFLAGS = $(DEBUG) $(GCCWARN) $(OPTIMIZE) $(INCLUDES) $(CCSHARED)
LDSHARED = -shared
LDLIBS =
INSTALL_LIB = install -m 755
INSTALL_HEAD = install -m 644
all: xmlrpcmodule.so
xmlrpcmodule.so: $(SRC)/xmlrpcmodule.o $(SRC)/xmlrpc.o \
$(SRC)/rpcBase64.o $(SRC)/rpcBoolean.o \
$(SRC)/rpcClient.o $(SRC)/rpcDate.o $(SRC)/rpcDispatch.o \
$(SRC)/rpcInternal.o $(SRC)/rpcServer.o $(SRC)/rpcSource.o \
$(SRC)/rpcUtils.o
$(CC) $(CFLAGS) $(LDSHARED) -o $(LIB)/_xmlrpcmodule.so \
$(SRC)/xmlrpcmodule.o $(SRC)/xmlrpc.o \
$(SRC)/rpcBase64.o $(SRC)/rpcBoolean.o $(SRC)/rpcClient.o \
$(SRC)/rpcDate.o $(SRC)/rpcDispatch.o $(SRC)/rpcInternal.o \
$(SRC)/rpcServer.o $(SRC)/rpcSource.o $(SRC)/rpcUtils.o \
$(LDLIBS)
xmlrpcmodule.o: $(SRC)/xmlrpc.o
$(CC) $(CFLAGS) -o $(SRC)/xmlrpcmodule.o -c $(SRC)/xmlrpcmodule.c
xmlrpc.o: $(SRC)/rpcBase64.o $(SRC)/rpcBoolean.o \
$(SRC)/rpcClient.o $(SRC)/rpcDate.o $(SRC)/rpcDispatch.o \
$(SRC)/rpcInternal.o $(SRC)/rpcServer.o $(SRC)/rpcSource.o \
$(SRC)/rpcUtils.o
$(CC) $(CFLAGS) -o $(SRC)/xmlrpc.o $(SRC)/xmlrpc.c
install:
cp $(LIB)/_xmlrpcmodule.so $(LIB)/xmlrpc.py $(PYTHONLIB)
chown root.root $(PYTHONLIB)/_xmlrpcmodule.so
chown root.root $(PYTHONLIB)/xmlrpc.py
chmod 644 $(PYTHONLIB)/_xmlrpcmodule.so
chmod 644 $(PYTHONLIB)/xmlrpc.py
rpcBase64.o: $(SRC)/rpcBase64.h
rpcBoolean.o: $(SRC)/rpcBoolean.h
rpcClient.o: $(SRC)/rpcClient.h
rpcDate.o: $(SRC)/rpcDate.h
rpcDispatch.o: $(SRC)/rpcDispatch.h
rpcInternal.o: $(SRC)/rpcInternal.h
rpcServer.o: $(SRC)/rpcServer.h
rpcSource.o: $(SRC)/rpcSource.h
rpcUtils.o: $(SRC)/rpcUtils.h
clean:
rm -f $(SRC)/*.o
rm -f $(LIB)/*.so
rm -f $(LIB)/*.pyc
rm -f $(LIB)/*.pyo
|