1 DEBUG
:=$(filter-out no
,$(enable_debug
))
4 showvar
= @echo
\"'$(1)'\" =\
> \"'$($(1))'\"
5 tbd
= $(error
"$@" not implemented yet
)
13 NO_CONFIGURE_TARGETS
:=
15 NO_CONFIGURE_TARGETS
+=clean ChangeLog depend dust configure
dist \
18 TARGETS
+= libwvbase.so libwvbase.a
19 TARGETS
+= libwvutils.so libwvutils.a
20 TARGETS
+= libwvstreams.so libwvstreams.a
21 TARGETS
+= libuniconf.so libuniconf.a
22 TARGETS
+= wvtestmain.o libwvtest.a
23 TARGETS
+= uniconf
/daemon
/uniconfd uniconf
/tests
/uni
24 TARGETS
+= crypto
/tests
/ssltest ipstreams
/tests
/unixtest
25 TARGETS
+= crypto
/tests
/printcert
26 ifneq ("$(with_dbus)", "no")
27 TARGETS
+= dbus
/tests
/wvdbus dbus
/tests
/wvdbusd
29 ifneq ("$(with_readline)", "no")
30 TARGETS
+= ipstreams
/tests
/wsd
32 GARBAGE
+= wvtestmain.o tmp.ini .wvtest-total
34 ifneq ("$(with_qt)", "no")
35 TARGETS
+= libwvqt.so libwvqt.a
38 ifneq ("$(with_dbus)", "no")
39 TARGETS
+= libwvdbus.so libwvdbus.a
42 TARGETS_SO
:= $(filter %.so
,$(TARGETS
))
43 TARGETS_A
:= $(filter %.a
,$(TARGETS
))
45 GARBAGE
+= $(wildcard lib
*.so.
*)
47 DISTCLEAN
+= autom4te.cache config.mk config.log config.status \
48 include/wvautoconf.h config.cache reconfigure
50 REALCLEAN
+= stamp-h.in configure
include/wvautoconf.h.in
52 CPPFLAGS
+= -Iinclude
-pipe
54 RELEASE?
=$(PACKAGE_VERSION
)
56 DEBUG
:=$(filter-out no
,$(enable_debug
))
58 CXXFLAGS
+=$(if
$(filter-out yes
,$(DEBUG
)), -DDEBUG_
$(DEBUG
))
59 CFLAGS
+=$(if
$(filter-out yes
,$(DEBUG
)), -DDEBUG_
$(DEBUG
))
61 ifeq ("$(enable_fatal_warnings)", "yes")
63 # FIXME: not for C, because our only C file, crypto/wvsslhack.c, has
68 ifeq ("$(enable_testgui)", "no")
72 ifneq ("$(with_xplc)", "no")
73 LIBS
+=$(LIBS_XPLC
) -lm
76 libwvutils.so-LIBS
+=$(LIBS_PAM
)
78 include $(filter-out xplc
/% linuxstreams
/%,$(wildcard */vars.mk
*/*/vars.mk
)) \
79 $(wildcard $(foreach dir,$(ARCH_SUBDIRS
),$(dir)/*/vars.mk
)) /dev
/null
84 utils
/wvbuffer.o utils
/wvbufferstore.o \
87 streams
/wvfdstream.o \
94 utils
/wvscatterhash.o utils
/wvsorter.o \
95 utils
/wvstring.o utils
/wvstringlist.o \
96 utils
/wvstringmask.o \
100 streams
/wvistreamlist.o \
101 utils
/wvstreamsdebugger.o \
105 uniconf
/uniconfgen.o uniconf
/uniconfkey.o uniconf
/uniconfroot.o \
106 uniconf
/unihashtree.o \
107 uniconf
/unimountgen.o \
108 uniconf
/unitempgen.o \
109 utils
/wvbackslash.o \
111 utils
/wvtclstring.o \
112 utils
/wvstringcache.o \
113 uniconf
/uniinigen.o \
114 uniconf
/unigenhack.o \
115 uniconf
/unilistiter.o \
117 streams
/wvstreamclone.o \
118 streams
/wvconstream.o \
121 TESTOBJS
= utils
/wvtest.o
123 # print the sizes of all object files making up libwvbase, to help find
124 # optimization targets.
126 size
--total
$(BASEOBJS
)
128 micro
: micro.o libwvbase.so
130 libwvbase.a libwvbase.so
: $(filter-out uniconf
/unigenhack.o
,$(BASEOBJS
))
131 libwvbase.a
: uniconf
/unigenhack_s.o
132 libwvbase.so
: uniconf
/unigenhack.o
133 libwvbase.so
: LIBS
+=$(LIBXPLC
)
135 libwvutils.a libwvutils.so
: $(filter-out $(BASEOBJS
) $(TESTOBJS
),$(call objects
,utils
))
136 libwvutils.so
: libwvbase.so
137 libwvutils.so
: -lz
-lcrypt
139 libwvstreams.a libwvstreams.so
: $(filter-out $(BASEOBJS
), \
140 $(call objects
,configfile crypto ipstreams \
141 $(ARCH_SUBDIRS
) streams urlget
))
142 libwvstreams.so
: libwvutils.so libwvbase.so
143 libwvstreams.so
: LIBS
+=-lz
-lssl
-lcrypto
145 libuniconf.a libuniconf.so
: $(filter-out $(BASEOBJS
), \
146 $(call objects
,uniconf
))
147 libuniconf.a
: uniconf
/uniconfroot.o
148 libuniconf.so
: libwvstreams.so libwvutils.so libwvbase.so
150 libwvdbus.a libwvdbus.so
: $(call objects
,dbus
)
151 libwvdbus.so
: libwvstreams.so libwvutils.so libwvbase.so
152 libwvdbus.so
: LIBS
+=$(LIBS_DBUS
)
154 libwvtest.a
: wvtestmain.o
$(TESTOBJS
)
156 ifeq ("$(wildcard /usr/lib/libqt-mt.so)", "/usr/lib/libqt-mt.so")
157 libwvqt.so-LIBS
+=-lqt-mt
159 # RedHat has a pkgconfig file we can use to sort out this mess..
160 ifeq ("$(wildcard /usr/lib/pkgconfig/qt-mt.pc)", "/usr/lib/pkgconfig/qt-mt.pc")
161 libwvqt.so-LIBS
+=`pkg-config --libs qt-mt`
163 libwvqt.so-LIBS
+=-lqt
166 libwvqt.a libwvqt.so
: $(call objects
,qt
)
167 libwvqt.so
: libwvutils.so libwvstreams.so libwvbase.so
169 libwvgtk.a libwvgtk.so
: $(call objects
,gtk
)
170 libwvgtk.so
: -lgtk
-lgdk libwvstreams.so libwvutils.so libwvbase.so