1 include ../Makefile.conf
5 ifeq ($(BUILD_ON),Darwin)
6 ifeq ($(BUILD_FOR),Darwin)
8 TARGET?=libpEpEngine.dylib
9 MACOSX_VERSION_MIN=10.6
11 LIBGPGME=libgpgme-pthread.dylib
12 CC?=clang -std=c99 -pthread
14 CFLAGS?=-I$(GPGME_IN)/include -I$(HOME)/include -I/opt/local/include $(OPTIMIZE) -pedantic \
15 -DSYSTEM_DB=\"$(SYSTEM_DB)\" -DLIBGPGME=\"$(LIBGPGME)\" -I../asn.1 $(EXTRAMACROS)
16 LDFLAGS?=-lc -shared -arch x86_64 \
17 -L$(HOME)/lib -L/usr/lib -L/opt/local/lib -letpan -lsqlite3 -L../asn.1 -lasn1 -lz -liconv
20 $(error don't know how to make for $(BUILD_FOR) on $(BUILD_ON))
23 else ifeq ($(BUILD_ON),Linux)
24 ifeq ($(BUILD_FOR),Linux)
26 TARGET=libpEpEngine.so
28 LIBGPGME=libgpgme.so.11
30 CFLAGS?=-I$(GPGME_IN)/include $(OPTIMIZE) -fPIC -pedantic \
31 -DSYSTEM_DB=\"$(SYSTEM_DB)\" -DLIBGPGME=\"$(LIBGPGME)\" \
32 -DSQLITE_THREADSAFE=1 -D_GNU_SOURCE -I../asn.1 $(EXTRAMACROS)
33 LDFLAGS?=-L$(GPGME_IN)/lib -shared -lc -ldl -letpan -lpthread -L../asn.1 -lasn1
36 $(error don't know how to make for $(BUILD_FOR) on $(BUILD_ON))
40 $(error don't know how to make for $(BUILD_FOR) on $(BUILD_ON))
43 ifeq ("$(OPENPGP)","GPG")
44 NO_SOURCE=pgp_netpgp.c
46 LDFLAGS+= -lgpgme-pthread
47 else ifeq ("$(OPENPGP)","NETPGP")
50 LDFLAGS+= -lnetpgp -lcurl
52 $(error Unknown OpenPGP library : $(OPENPGP))
55 ALL_SOURCE=$(subst $(NO_SOURCE),,$(wildcard *.c))
57 DEPENDS=$(subst .c,.d,$(ALL_SOURCE))
58 ALL_OBJECTS=$(subst .c,.o,$(ALL_SOURCE))
62 include Makefile.protocols
66 $(CC) -MM $(CPPFLAGS) $(CFLAGS) $< > $@.$$$$; \
67 sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
72 #platform_windows.o: platform_windows.cpp
73 # $(CXX) $(CXX_FLAGS) -o $@ -c $<
75 $(TARGET): libpEpEngine.a
76 $(LD) $(ALL_OBJECTS) $(LDFLAGS) -o $@
78 objects: $(ALL_OBJECTS)
80 libpEpEngine.a: $(ALL_OBJECTS)
81 ar -r $@ $(ALL_OBJECTS)
86 rm -f *.d *.o *.a $(TARGET) *.dll *.so *.zip *.d.* *.def *~
90 mkdir -p $(PREFIX)/include/pEp
91 cp pEpEngine.h keymanagement.h message_api.h dynamic_api.h stringlist.h timestamp.h identity_list.h bloblist.h stringpair.h message.h mime.h cryptotech.h sync.h sync_fsm.h $(PREFIX)/include/pEp/
94 rm -f $(PREFIX)/lib/$(TARGET)