| 1 | ######################################### |
|---|
| 2 | ### |
|---|
| 3 | ### M A K E F I L E |
|---|
| 4 | ### |
|---|
| 5 | ### |
|---|
| 6 | ### |
|---|
| 7 | |
|---|
| 8 | |
|---|
| 9 | |
|---|
| 10 | # compiler flags ------------------------------ |
|---|
| 11 | |
|---|
| 12 | |
|---|
| 13 | #where does stuff live? Note JX_ROOT and ACE_ROOT don't have |
|---|
| 14 | #to be under DEV_ROOT |
|---|
| 15 | DEV_ROOT=../.. |
|---|
| 16 | JX_ROOT = ${DEV_ROOT}/JX |
|---|
| 17 | ACE_ROOT = ${JX_ROOT}/ACE/ACE_wrappers |
|---|
| 18 | export JXLAYOUTDIR = ${JX_ROOT}/programs/jxlayout |
|---|
| 19 | |
|---|
| 20 | SSL_ROOT = /usr/local/ssl |
|---|
| 21 | SSL_INC = -I${SSL_ROOT}/include -I/usr/kerberos/include |
|---|
| 22 | |
|---|
| 23 | HAS_GNUG_3 := $(shell \ |
|---|
| 24 | if { $(CXX) --version | egrep '3\.2' > /dev/null; } \ |
|---|
| 25 | then { echo 1; } \ |
|---|
| 26 | else { echo 0; } fi) |
|---|
| 27 | |
|---|
| 28 | HAS_GNUG_4 := $(shell \ |
|---|
| 29 | if { $(CXX) --version | egrep '4\.1' > /dev/null; } \ |
|---|
| 30 | then { echo 1; } \ |
|---|
| 31 | else { echo 0; } fi) |
|---|
| 32 | |
|---|
| 33 | ifeq ($(HAS_GNUG_4),1) |
|---|
| 34 | # Do nothing |
|---|
| 35 | STL_INC := -fpermissive -Wno-deprecated |
|---|
| 36 | #else |
|---|
| 37 | ifeq ($(HAS_GNUG_3),1) |
|---|
| 38 | #STL_INC := -Wno-deprecated -I${DEV_ROOT}/STLport/stlport |
|---|
| 39 | else |
|---|
| 40 | #STL_INC := -nostdinc++ -I${DEV_ROOT}/STLport/stlport |
|---|
| 41 | endif |
|---|
| 42 | #STL_LIB = -L${DEV_ROOT}/STLport/lib -lstlport_gcc |
|---|
| 43 | endif |
|---|
| 44 | |
|---|
| 45 | #These shouldn't have to be changed |
|---|
| 46 | JX_MAKE_INCLUDE_DIR = ${JX_ROOT}/include/make |
|---|
| 47 | JX_INC = -I${JX_ROOT}/include/jcore \ |
|---|
| 48 | -I${JX_ROOT}/include/jx \ |
|---|
| 49 | -I${JX_ROOT}/include/jximage \ |
|---|
| 50 | -I${ACE_ROOT} \ |
|---|
| 51 | ${J_INCLUDE_FREETYPE} |
|---|
| 52 | JX_LDFLAGS = -L${JX_ROOT}/lib -L${ACE_ROOT}/ace |
|---|
| 53 | |
|---|
| 54 | include ${JX_MAKE_INCLUDE_DIR}/jx_constants |
|---|
| 55 | include ${JX_MAKE_INCLUDE_DIR}/jx_config |
|---|
| 56 | |
|---|
| 57 | ifneq (${BUILD_NODEBUG},1) |
|---|
| 58 | DFLAGS := -g |
|---|
| 59 | endif |
|---|
| 60 | |
|---|
| 61 | CPP = g++ |
|---|
| 62 | CC = g++ |
|---|
| 63 | LINKER = ${CPP} |
|---|
| 64 | CFLAGS = ${STL_INC} ${SSL_INC} ${J_RAW_SYSTEM_STUFF} -Wall -Wcast-align -Wno-multichar -Wno-unused \ |
|---|
| 65 | -Wno-unknown-pragmas -Wno-non-virtual-dtor -Wno-ctor-dtor-privacy\ |
|---|
| 66 | ${DFLAGS} -include Sources/Mulberry_Prefix.h ${MULINCS} -D_REENTRANT |
|---|
| 67 | |
|---|
| 68 | ifeq (${BUILD_STATIC},1) |
|---|
| 69 | LINK_STATIC = -Wl,-Bstatic |
|---|
| 70 | LINK_DYNAMIC = -Wl,-Bdynamic |
|---|
| 71 | endif |
|---|
| 72 | EXTRA_LINKS = -lpthread -ldl |
|---|
| 73 | ifeq ($(shell if [ -f /usr/lib/librt.so ]; then echo 1; else echo 0; fi),1) |
|---|
| 74 | EXTRA_LINKS := ${EXTRA_LINKS} -lrt |
|---|
| 75 | endif |
|---|
| 76 | ifeq ($(shell if [ -f /usr/lib/libgen.so ]; then echo 1; else echo 0; fi),1) |
|---|
| 77 | EXTRA_LINKS := ${EXTRA_LINKS} -lgen |
|---|
| 78 | endif |
|---|
| 79 | ifeq (${OSTYPE},solaris) |
|---|
| 80 | EXTRA_LINKS := ${EXTRA_LINKS} -nodefaultlibs -lc -lm -lgcc |
|---|
| 81 | endif |
|---|
| 82 | ifeq ($(shell if [ -f /usr/lib/libresolv.so ]; then echo 1; else echo 0; fi),1) |
|---|
| 83 | EXTRA_LINKS := ${EXTRA_LINKS} -lresolv |
|---|
| 84 | endif |
|---|
| 85 | |
|---|
| 86 | |
|---|
| 87 | JXLINK = ${JX_LDFLAGS} \ |
|---|
| 88 | ${LINK_STATIC} \ |
|---|
| 89 | -ljx-${JX_LIB_VERSION} \ |
|---|
| 90 | -ljcore-${JX_LIB_VERSION} \ |
|---|
| 91 | -lACE-${ACE_LIB_VERSION} \ |
|---|
| 92 | ${LINK_DYNAMIC} \ |
|---|
| 93 | ${J_X11_LIBS} \ |
|---|
| 94 | -lldap -llber \ |
|---|
| 95 | ${LINK_STATIC} \ |
|---|
| 96 | ${STL_LIB} \ |
|---|
| 97 | ${LINK_DYNAMIC} \ |
|---|
| 98 | ${EXTRA_LINKS} |
|---|
| 99 | |
|---|
| 100 | DEPENDFLAGS = ${CFLAGS} |
|---|
| 101 | MAKEMAKE = makemake |
|---|
| 102 | $./%.o %.o: %.cp |
|---|
| 103 | @ echo " ---- Compiling $< (C++)" |
|---|
| 104 | $(CPP) $(CFLAGS) -c -o $@ $< |
|---|
| 105 | |
|---|
| 106 | $./%.h %.h: %.fd |
|---|
| 107 | @ echo " ---- Generating $< from resource (jxlayout)" |
|---|
| 108 | jxlayout -cs .cp -cp $(@D) $< |
|---|
| 109 | |
|---|
| 110 | MULINCS = ${JX_INC} -I./Resources \ |
|---|
| 111 | -I./Help \ |
|---|
| 112 | -I./Sources \ |
|---|
| 113 | -I./Includes \ |
|---|
| 114 | -I./Sources/Utilities \ |
|---|
| 115 | -I../Sources_Common \ |
|---|
| 116 | -I../Sources_Common/Utilities \ |
|---|
| 117 | -I../../Libraries/CICalendar/Source \ |
|---|
| 118 | -I../../Libraries/XMLLib/Source |
|---|
| 119 | |
|---|
| 120 | |
|---|
| 121 | LDFLAGS = -L/usr/X11R6/lib |
|---|
| 122 | |
|---|
| 123 | LOADLIBES = ${JXLINK} |
|---|
| 124 | |
|---|
| 125 | #all: mulberry |
|---|
| 126 | |
|---|
| 127 | static: |
|---|
| 128 | @${MAKE} "BUILD_STATIC=1" all |
|---|
| 129 | nodebug: |
|---|
| 130 | @${MAKE} "BUILD_NODEBUG=1" all |
|---|
| 131 | staticnodebug: |
|---|
| 132 | @${MAKE} "BUILD_STATIC=1" "BUILD_NODEBUG=1" all |
|---|
| 133 | |
|---|
| 134 | Sources/Support/HResourceMap.o: Sources/Support/HResourceMap.cp Resources/xpms.res Resources/xpms.cp |
|---|
| 135 | |
|---|
| 136 | Resources/xmps.res: resources/iconlist.txt |
|---|
| 137 | Resources/makeresxpms < Resources/iconlist.txt > Resources/xpms.res |
|---|
| 138 | |
|---|
| 139 | Resources/xmps.cp: resources/iconlist.txt |
|---|
| 140 | Resources/makeresinitxpms < Resources/iconlist.txt > Resources/xpms.cp |
|---|
| 141 | |
|---|
| 142 | ../Plug-ins/CRAM-MD5/sources/md5/md5c.o: ../Plug-ins/CRAM-MD5/sources/md5/md5c.c ../Plug-ins/CRAM-MD5/sources/md5/md5.h |
|---|
| 143 | $(CC) -c -o $@ $< |
|---|