3 # Makefile for g2 library
10 # g2 installation directories
12 LIBDIR = /usr/local/lib
13 INCDIR = /usr/local/include
16 #LIBDIR = $(HOME)/local/lib
17 #INCDIR = $(HOME)/local/include
20 #------------------------ do not edit ------------------------
26 INCLUDES = -I./src -g -O2 -I/usr/local/include -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DLINUX=1 -DDO_PS=1 -DDO_FIG=1 -DDO_X11=1 -DDO_GD=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1
27 INSTALL = /usr/bin/install -c
28 INSTALL_DATA = ${INSTALL} -m 644
35 LDFLAGS = -L/usr/local/lib -lm -lX11 -lgd
39 BASE_SRC = $(BASE_DIR)/g2_device.c $(BASE_DIR)/g2_ui_control.c \
40 $(BASE_DIR)/g2_util.c $(BASE_DIR)/g2_fif.c \
41 $(BASE_DIR)/g2_virtual_device.c $(BASE_DIR)/g2_physical_device.c \
42 $(BASE_DIR)/g2_graphic_pd.c $(BASE_DIR)/g2_control_pd.c \
43 $(BASE_DIR)/g2_ui_graphic.c $(BASE_DIR)/g2_ui_virtual_device.c \
44 $(BASE_DIR)/g2_ui_device.c $(BASE_DIR)/g2_splines.c
45 BASE_INS = $(BASE_DIR)/g2.h
49 PS_SRC = $(PS_DIR)/g2_PS.c
50 PS_INS = $(PS_DIR)/g2_PS.h
53 FIG_SRC = $(FIG_DIR)/g2_FIG.c
54 FIG_INS = $(FIG_DIR)/g2_FIG.h
57 X11_SRC = $(X11_DIR)/g2_X11.c
58 X11_INS = $(X11_DIR)/g2_X11.h
60 #WIN32_DIR = ./src/WIN32
61 #WIN32_SRC = $(WIN32_DIR)/g2_win32.c $(WIN32_DIR)/g2_win32_thread.c
62 #WIN32_INS = $(WIN32_DIR)/g2_win32.h
65 GD_SRC = $(GD_DIR)/g2_gd.c
66 GD_INS = $(GD_DIR)/g2_gd.h
69 SRC = $(BASE_SRC) $(PS_SRC) $(FIG_SRC) $(X11_SRC) $(WIN32_SRC) $(GD_SRC)
72 INS = $(BASE_INS) $(PS_INS) $(FIG_INS) $(X11_INS) $(WIN32_INS) $(GD_INS)
75 # define some phony targets
77 .PHONY: all shared clean doc release demo
83 $(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
87 test -d ./include || mkdir ./include
90 shared: libg2.so.0.$(G2_VERSION)
95 $(AR) $(ARFLAGS) libg2.a $(OBJ)
96 test ! -n "$(RANLIB)" || $(RANLIB) $@
98 libg2.so.0.$(G2_VERSION): $(OBJ)
99 ld -shared -soname libg2.so.0 -o $@ $(OBJ)
102 test -d $(LIBDIR) || mkdir -p $(LIBDIR)
103 test -d $(INCDIR) || mkdir -p $(INCDIR)
104 $(INSTALL_DATA) libg2.a $(LIBDIR)
105 for IFILE in $(INS); do \
106 $(INSTALL_DATA) $$IFILE $(INCDIR); \
109 uninstall: uninstall-libg2 uninstall-inc
112 test -n $(LIBDIR)/libg2.a || exit 0; \
113 rm -f $(LIBDIR)/libg2.a
116 test -d $(INCDIR) || exit 0; \
117 for IFILE in $(INS); do \
118 rm -f $(INCDIR)/`printf "%s" $$IFILE | sed 's/.*\///'`; \
123 cp ./doc/latex/refman.ps ./doc/g2_refman.ps
124 cp ./doc/latex/refman.pdf ./doc/g2_refman.pdf
128 (cd ./doc ; doxygen Doxyfile)
129 (cd ./doc/latex ; make ps ; make pdf)
133 -(cd ./demo ; $(MAKE) clean)
135 -rm -f libg2.a config.cache config.log Makefile.bak config.status
136 -$(FIND) . -name "*~" -exec rm -f {} \;
137 -(cd ./g2_perl ; $(MAKE) clean)
138 -rm -f ./g2_perl/test.ps
139 -rm -f ./g2_perl/test.png
140 -rm -f ./g2_perl/test.jpg
141 -rm -f ./g2_perl/test.fig
142 -rm -f ./g2_perl/Makefile.old
143 -rm -f ./libg2.so.0.$(G2_VERSION)
144 -rm -f libg2.$(G2_VERSION).a
146 -rm -fr doc/html/ doc/latex/ doc/g2_refman.ps doc/g2_refman.pdf
150 maintainer-clean: clean
156 $(MAKEDEPEND) -- $(CFLAGS) $(INCLUDES) -- $(SRC)
158 @echo "Run 'make' to build g2 library."
165 # DO NOT DELETE THIS LINE -- make depend depends on it.