File: Makefile

package info (click to toggle)
dnprogs 2.18-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 1,896 kB
  • ctags: 3,051
  • sloc: ansic: 18,586; cpp: 9,436; makefile: 669; sh: 502; awk: 13
file content (62 lines) | stat: -rw-r--r-- 1,582 bytes parent folder | download
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
include ../Makefile.common

LIBOBJS=open.o close.o readwrite.o getreply.o parse.o
PICOBJS=open.po close.po readwrite.po getreply.po parse.po
EXAMPLE1OBJS=example.o
EXAMPLE2OBJS=t_example.o

LIBNAME=librms

EXAMPLE1=example
EXAMPLE2=t_example
EXAMPLES=$(EXAMPLE1) $(EXAMPLE2)

SHAREDLIB=$(LIBNAME).so.$(VERSION)
STATICLIB=$(LIBNAME).a
INCLUDEFILES=rms.h fabdef.h rabdef.h

CFLAGS+=-I. -I../include -I../libdap -fdollars-in-identifiers

all: $(STATICLIB) $(SHAREDLIB) $(EXAMPLES)

$(STATICLIB): $(LIBOBJS)
	ar -rv $@ $^

$(SHAREDLIB): $(PICOBJS)
	$(CXX) $(CXXFLAGS) -shared -o $@ -Wl,-soname=$(LIBNAME).so.$(MAJOR_VERSION) $^ 
	ln -sf $(SHAREDLIB) $(LIBNAME).so.$(MAJOR_VERSION)
	ln -sf $(LIBNAME).so.$(MAJOR_VERSION) $(LIBNAME).so

$(EXAMPLE1): $(EXAMPLE1OBJS) $(SHAREDLIB)
	$(CC) $(CXXFLAGS) -o $@ $< -L. -lrms $(LIBS)

$(EXAMPLE2): $(EXAMPLE2OBJS) $(SHAREDLIB)
	$(CC) $(CXXFLAGS) -o $@ $< -L. -lrms $(LIBS)

.cc.o:
	$(CXX) $(CXXFLAGS) -c -o $@ $<

.cc.po:
	$(CXX) $(CXXFLAGS) -fPIC -c -o $@ $<

dep depend:	
	$(CC) $(CFLAGS) -MM *.cc *.c >.depend 2>/dev/null

clean:
	rm -f *.o *.po *.bak .depend $(STATICLIB) $(SHAREDLIB) $(LIBNAME).so* $(EXAMPLES)

install:
	install -d $(prefix)/lib
	install -m 0644 -s $(SHAREDLIB) $(libprefix)/lib
	install -m 0644 $(STATICLIB) $(libprefix)/lib
	install -d $(prefix)/include
	install -m 0644 $(INCLUDEFILES) $(libprefix)/include
	ln -sf $(SHAREDLIB) $(libprefix)/lib/$(LIBNAME).so.$(MAJOR_VERSION)
	ln -sf $(LIBNAME).so.$(MAJOR_VERSION) $(libprefix)/lib/$(LIBNAME).so

.SUFFIXES: .po

ifeq (.depend,$(wildcard .depend))
include .depend
endif