1# include Husky-Makefile-Config
2include ../huskymak.cfg
3
4UMAPIVER=0.1
5UMAPIVERHI=0
6UMAPIVERLO=1
7
8# program settings
9
10ifeq ($(DEBUG), 1)
11  COPT = $(WARNFLAGS) $(DEBCFLAGS) -I.
12  LFLAGS = $(DEBLFLAGS)
13else
14  COPT = $(WARNFLAGS) $(OPTCFLAGS) -I.
15  LFLAGS = $(OPTLFLAGS)
16endif
17
18CDEFS = -D$(OSTYPE) $(ADDCDEFS)
19
20LOPTCL = -L. -lumapicl
21LOPTSRV = -L. -lumapisrv
22
23ifeq ($(SHORTNAME), 1)
24  LIBUMAPICL = umapicl
25  LIBUMAPISRV = umapisrv
26else
27  LIBUMAPICL = libumapicl
28  LIBUMAPISRV = libumapisrv
29endif
30
31default: all
32
33ifeq ($(DYNLIBS), 1)
34  all: $(LIBUMAPICL)$(LIB) $(LIBUMAPICL).so.$(UMAPIVER) $(LIBUMAPISRV)$(LIB)
35else
36  all: $(LIBUMAPICL)$(LIB) $(LIBUMAPISRV)$(LIB)
37endif
38
39clean:
40	-$(RM) $(RMOPT) *.o
41	-$(RM) $(RMOPT) *~
42	-$(RM) $(RMOPT) *.bak
43
44distclean: clean
45	-$(RM) $(RMOPT) $(LIBUMAPICL).so.$(UMAPIVER)
46	-$(RM) $(RMOPT) $(LIBUMAPICL)$(LIB)
47	-$(RM) $(RMOPT) $(LIBUMAPISRV)$(LIB)
48	-$(RM) $(RMOPT) umapid$(EXE)
49	-$(RM) $(RMOPT) test$(EXE)
50
51UMAPIHDRS = umapi.h umapisq.h umapisdm.h umdate.h typesize.h
52UMAPIOBJS = umapi$(OBJ) umapisq$(OBJ) umapisdm$(OBJ) \
53            umdate$(OBJ) umaddr$(OBJ)
54UMAPICLOBJS = $(UMAPIOBJS) umapicl$(OBJ)
55UMAPISRVOBJS = $(UMAPIOBJS) umapisrv$(OBJ)
56
57$(LIBUMAPICL)$(LIB): $(UMAPICLOBJS) $(UMAPIHDRS)
58	$(AR) $(AR_R) $(LIBUMAPICL)$(LIB) $(UMAPICLOBJS)
59
60$(LIBUMAPISRV)$(LIB): $(UMAPISRVOBJS) $(UMAPIHDRS)
61	$(AR) $(AR_R) $(LIBUMAPISRV)$(LIB) $(UMAPISRVOBJS)
62
63$(LIBUMAPICL).so.$(UMAPIVER): $(UMAPICLOBJS) $(UMAPIHDRS)
64	$(CC) -shared -Wl,-soname,$(LIBUMAPICL).so.$(UMAPIVERHI) \
65	  -o $(LIBUMAPICL).so.$(UMAPIVER) $(UMAPICLOBJS)
66
67test$(EXE): all test$(OBJ)
68	$(CC) $(LFLAGS) -o test$(EXE) test$(OBJ) $(LOPTCL)
69
70umapid$(EXE): $(LIBUMAPISRV)$(LIB) umapid$(OBJ)
71	$(CC) $(LFLAGS) -o umapid$(EXE) umapid$(OBJ) $(LOPTSRV)
72
73%.o: %.c
74	$(CC) $(CDEFS) $(COPT) $*.c
75
76ifeq ($(DYNLIBS), 1)
77instdyn: $(LIBUMAPICL).so.$(UMAPIVER)
78	$(INSTALL) $(ILOPT) $(LIBUMAPICL).so.$(UMAPIVER) $(LIBDIR)
79	$(LN) $(LNOPT) $(LIBDIR)/$(LIBUMAPICL).so.$(UMAPIVER) \
80	  $(LIBDIR)/$(LIBUMAPICL).so.$(UMAPIVERHI)
81	$(LN) $(LNOPT) $(LIBDIR)/$(LIBUMAPICL).so.$(UMAPIVERHI) \
82	  $(LIBDIR)/$(LIBUMAPICL).so
83	$(LDCONFIG)
84
85else
86instdyn:
87	@echo
88endif
89
90install: $(LIBUMAPICL)$(LIB) instdyn
91	-$(MKDIR) $(MKDIROPT) $(INCDIR)/$(UMAPI)
92	$(INSTALL) $(ILOPT) $(LIBUMAPICL)$(LIB) $(LIBDIR)
93
94uninstall:
95	-$(RM) $(RMOPT) $(LIBDIR)$(DIRSEP)$(LIBUMAPICL)$(LIB)
96	-$(RM) $(RMOPT) $(LIBDIR)$(DIRSEP)$(LIBUMAPICL).so.$(UMAPIVER)
97	-$(RM) $(RMOPT) $(LIBDIR)$(DIRSEP)$(LIBUMAPICL).so.$(UMAPIVERHI)
98	-$(RM) $(RMOPT) $(LIBDIR)$(DIRSEP)$(LIBUMAPICL).so
99
100