source: trunk/src/data_exchange/slink2ew/libslink/Makefile @ 1793

Revision 1793, 1.3 KB checked in by luetgert, 15 years ago (diff)

.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# Standard compiler parameters
2CFLAGS = -O
3
4# GCC specific parameters
5GCC = gcc
6GCCFLAGS = -O2 -Wall
7
8LIB_OBJS = gswap.o unpack.o msrecord.o genutils.o strutils.o \
9           logging.o network.o statefile.o config.o \
10           slplatform.o slutils.o
11
12CURRENT_VER = 1.1
13COMPAT_VER = 1.0
14
15LIB_A = libslink.a
16LIB_SO = libslink.so.$(CURRENT_VER)
17LIB_SO_ALIAS = libslink.so
18LIB_DYN = libslink.$(CURRENT_VER).dylib
19LIB_DYN_ALIAS = libslink.dylib
20
21all: static
22
23static: $(LIB_A)
24
25shared: $(LIB_SO)
26
27dynamic: $(LIB_DYN)
28
29$(LIB_A): $(LIB_OBJS)
30        ar -rcs $(LIB_A) $(LIB_OBJS)
31
32$(LIB_SO): $(LIB_OBJS)
33        $(CC) -shared -Wl,-soname -Wl,$(LIB_SO_ALIAS) -o $(LIB_SO) $(LIB_OBJS)
34        ln -s $(LIB_SO) $(LIB_SO_ALIAS)
35
36$(LIB_DYN): $(LIB_OBJS)
37        $(CC) -dynamiclib -compatibility_version $(COMPAT_VER) -current_version $(CURRENT_VER) -install_name $(LIB_DYN_ALIAS) -o $(LIB_DYN) $(LIB_OBJS)
38        ln -s $(LIB_DYN) $(LIB_DYN_ALIAS)
39
40cc:
41        @$(MAKE) "CC=$(CC)" "CFLAGS=$(CFLAGS)"
42
43gcc:
44        @$(MAKE) "CC=$(GCC)" "CFLAGS=$(GCCFLAGS)"
45
46debug:
47        $(MAKE) "CC=$(CC)" "CFLAGS=-g $(CFLAGS)"
48
49gccdebug:
50        $(MAKE) "CC=$(GCC)" "CFLAGS=-g $(GCCFLAGS)"
51
52clean:
53        rm -f $(LIB_OBJS) $(LIB_A) $(LIB_SO) $(LIB_SO_ALIAS) $(LIB_DYN) $(LIB_DYN_ALIAS)
54
55install:
56        @echo
57        @echo "No install method, copy the library, header file, and"
58        @echo "documentation to the preferred install location"
59        @echo
Note: See TracBrowser for help on using the repository browser.