1 AM_CPPFLAGS = $(MULECPPFLAGS)
2 AM_CFLAGS = $(MULECFLAGS)
3 AM_CXXFLAGS = $(MULECXXFLAGS)
4 AM_LDFLAGS = $(MULELDFLAGS)
6 SUBDIRS = libs utils pixmaps
9 # build webserver after current
10 SUBDIRS += . webserver
33 bin_PROGRAMS += amulecmd
41 bin_PROGRAMS += amulegui
45 bin_PROGRAMS += amuled
49 noinst_LIBRARIES = libmulesocket.a
51 noinst_LIBRARIES += libmuleappcore.a libmuleappgui.a libmuleappcommon.a
54 noinst_LIBRARIES += libmuleappcore.a libmuleappcommon.a
57 noinst_LIBRARIES += libmuleappgui.a libmuleappcommon.a
63 # Socket lib (WX or Asio)
65 libmulesocket_a_SOURCES = LibSocket.cpp
66 libmulesocket_a_CPPFLAGS = $(AM_CPPFLAGS) $(WXBASE_CPPFLAGS) $(BOOST_CPPFLAGS) -I$(srcdir)/libs -I$(srcdir)/include
69 # Common to core/gui/monolithic
71 libmuleappcommon_a_SOURCES = \
80 NetworkFunctions.cpp \
87 TerminationProcess.cpp \
89 kademlia/utils/UInt128.cpp
91 libmuleappcommon_a_CPPFLAGS = $(AM_CPPFLAGS) $(WXBASE_CPPFLAGS) -I$(srcdir)/libs -I$(srcdir)/include $(CRYPTOPP_CPPFLAGS) $(LIBUPNP_CPPFLAGS)
94 # Common to core/monolithic
96 libmuleappcore_a_SOURCES = \
98 CanceledFileList.cpp \
102 IPFilterScanner.cpp \
105 PlatformSpecific.cpp \
106 RandomFunctions.cpp \
109 TerminationProcessAmuleweb.cpp \
110 ThreadScheduler.cpp \
112 kademlia/kademlia/Entry.cpp \
113 kademlia/kademlia/Indexed.cpp \
114 kademlia/kademlia/SearchManager.cpp \
115 kademlia/routing/RoutingBin.cpp
117 libmuleappcore_a_CPPFLAGS = $(AM_CPPFLAGS) $(WXBASE_CPPFLAGS) -I$(srcdir)/libs -I$(srcdir)/include $(CRYPTOPP_CPPFLAGS) $(LIBUPNP_CPPFLAGS)
120 # Common to gui/monolithic
122 libmuleappgui_a_SOURCES = \
125 EditServerListDlg.cpp \
126 extern/wxWidgets/listctrl.cpp \
127 FileDetailListCtrl.cpp \
137 libmuleappgui_a_CPPFLAGS = $(AM_CPPFLAGS) $(WX_CPPFLAGS) -I$(srcdir)/libs -I$(srcdir)/include $(LIBUPNP_CPPFLAGS) $(GEOIP_CPPFLAGS)
143 ClientCreditsList.cpp \
144 ClientTCPSocket.cpp \
145 ClientUDPSocket.cpp \
146 CorruptionBlackBox.cpp \
149 ECSpecialCoreTags.cpp \
151 EncryptedStreamSocket.cpp \
152 EncryptedDatagramSocket.cpp \
164 ServerUDPSocket.cpp \
168 UploadBandwidthThrottler.cpp \
171 kademlia/kademlia/Kademlia.cpp \
172 kademlia/kademlia/Prefs.cpp \
173 kademlia/kademlia/Search.cpp \
174 kademlia/kademlia/UDPFirewallTester.cpp \
175 kademlia/net/KademliaUDPListener.cpp \
176 kademlia/net/PacketTracking.cpp \
177 kademlia/routing/Contact.cpp \
178 kademlia/routing/RoutingZone.cpp
189 CommentDialogLst.cpp \
190 GenericClientListCtrl.cpp \
191 ClientDetailDialog.cpp \
192 DirectoryTreeCtrl.cpp \
193 FileDetailDialog.cpp \
196 PrefsUnifiedDlg.cpp \
202 DownloadListCtrl.cpp \
204 SharedFilePeersListCtrl.cpp \
207 SharedFilesCtrl.cpp \
215 ECSpecialMuleTags.cpp \
231 core_libs = -L. -lmuleappcore $(LIBUPNP_LDFLAGS) $(LIBUPNP_LIBS)
232 gui_libs = -L. -lmuleappgui $(WX_LIBS) $(GEOIP_LDFLAGS) $(GEOIP_LIBS)
233 remote_common_libs = -Llibs/common -Llibs/ec/cpp -lmulecommon -lec $(BFD_LIBS) $(ZLIB_LDFLAGS) $(ZLIB_LIBS) $(RESOLV_LIB)
234 common_libs = -L. -lmuleappcommon $(remote_common_libs) -lmulesocket $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) $(CRYPTOPP_LDFLAGS) $(CRYPTOPP_LIBS)
236 core_deps = libmuleappcore.a
237 gui_deps = libmuleappgui.a
238 remote_common_deps = libs/common/libmulecommon.a libs/ec/cpp/libec.a
239 common_deps = libmuleappcommon.a $(remote_common_deps) libmulesocket.a
242 core_libs += -lshlwapi
248 core_flags = $(BOOST_CPPFLAGS) $(LIBUPNP_CPPFLAGS) $(LIBUPNP_CFLAGS)
249 gui_flags = $(WX_CPPFLAGS) $(GEOIP_CPPFLAGS)
250 common_flags = -I$(srcdir)/libs -Ilibs -I$(srcdir)/include $(CRYPTOPP_CPPFLAGS)
252 # --------- Apps ---------
255 amule-remote-gui.cpp \
262 CaptchaGenerator.cpp \
263 PartFileConvert.cpp \
264 PartFileConvertDlg.cpp \
276 amule_DEPENDENCIES = $(common_deps) $(core_deps) $(gui_deps)
277 amule_CPPFLAGS = $(AM_CPPFLAGS) $(core_flags) $(gui_flags) $(common_flags)
278 amule_CXXFLAGS = $(AM_CXXFLAGS) $(WX_CFLAGS_ONLY) $(WX_CPPFLAGS_ONLY)
279 amule_LDADD = $(common_libs) $(core_libs) $(gui_libs)
281 amulegui_DEPENDENCIES = $(common_deps) $(gui_deps)
282 amulegui_CPPFLAGS = $(AM_CPPFLAGS) $(gui_flags) $(common_flags) -DCLIENT_GUI
283 amulegui_CXXFLAGS = $(AM_CXXFLAGS) $(WX_CFLAGS_ONLY) $(WX_CXXFLAGS_ONLY)
284 amulegui_LDADD = $(common_libs) $(gui_libs)
286 amuled_DEPENDENCIES = $(core_deps) $(common_deps)
287 amuled_CPPFLAGS = $(AM_CPPFLAGS) $(WXBASE_CPPFLAGS) $(core_flags) $(common_flags) -DAMULE_DAEMON
288 amuled_CXXFLAGS = $(AM_CXXFLAGS) $(WX_CFLAGS_ONLY) $(WX_CXXFLAGS_ONLY)
289 amuled_LDADD = $(common_libs) $(core_libs) $(WXBASE_LIBS)
296 ed2k_CPPFLAGS = $(AM_CPPFLAGS) -DUSE_STD_STRING
300 ed2k_LDADD = -lshlwapi
304 ed2k_LDFLAGS = $(AM_LDFLAGS) -framework CoreServices
310 ExternalConnector.cpp \
315 amulecmd_DEPENDENCIES = $(remote_common_deps) libmulesocket.a
316 amulecmd_CPPFLAGS = $(AM_CPPFLAGS) $(WXBASE_CPPFLAGS) $(common_flags)
317 amulecmd_CXXFLAGS = $(AM_CXXFLAGS) $(WX_CFLAGS_ONLY) $(WX_CXXFLAGS_ONLY)
318 #amulecmd_LDADD = $(WXBASE_LIBS) $(READLINE_LIBS) $(remote_common_libs)
319 amulecmd_LDADD = -Llibs/common -Llibs/ec/cpp -L. -lmulecommon -lec -lmulesocket \
320 $(WXBASE_LIBS) $(READLINE_LIBS) $(BFD_LIBS) $(ZLIB_LDFLAGS) $(ZLIB_LIBS) $(RESOLV_LIB) $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS)
340 ClientCreditsList.h \
341 ClientDetailDialog.h \
351 CorruptionBlackBox.h \
355 DirectoryTreeCtrl.h \
359 EditServerListDlg.h \
361 EncryptedDatagramSocket.h \
362 EncryptedStreamSocket.h \
363 ExternalConnector.h \
368 FileDetailListCtrl.h \
375 GenericClientListCtrl.h \
412 PartFileConvertDlg.h \
440 SharedFilePeersListCtrl.h \
449 TerminationProcess.h \
450 TerminationProcessAmuleweb.h \
460 UploadBandwidthThrottler.h \
463 UPnPCompatibility.h \
465 extern/wxWidgets/listctrl.h
467 MAINTAINERCLEANFILES = Makefile.in
477 $(RC) $(MULERCFLAGS) -I$(top_srcdir) $(RCFLAGS) -O COFF -i "$<" -o "$@"
479 nodist_amuled_SOURCES = amuled-version.rc
480 nodist_amulecmd_SOURCES = amulecmd-version.rc
481 nodist_ed2k_SOURCES = ed2k-version.rc
482 amule_LDADD += amulerc.$(OBJEXT)
483 amule_DEPENDENCIES += amulerc.$(OBJEXT)
484 amulegui_LDADD += amuleguirc.$(OBJEXT)
485 amulegui_DEPENDENCIES += amuleguirc.$(OBJEXT)
487 amulerc.$(OBJEXT): $(srcdir)/../amule.rc amule-version.rc
490 abs_builddir=`pwd` ; \
491 abs_top_srcdir=`cd $(top_srcdir) ; pwd` ; \
493 $(RC) $(MULERCFLAGS) -I$${abs_top_srcdir} $(RCFLAGS) -O COFF -o "$${abs_builddir}/$@" ; \
496 amuleguirc.$(OBJEXT): $(srcdir)/../amule.rc amulegui-version.rc
499 abs_builddir=`pwd` ; \
500 abs_top_srcdir=`cd $(top_srcdir) ; pwd` ; \
502 $(RC) $(MULERCFLAGS) -I$${abs_top_srcdir} $(RCFLAGS) -O COFF -o "$${abs_builddir}/$@" ; \
505 amule-version.rc: $(top_builddir)/version.rc
506 @sed -e 's/VER_FILEDESCRIPTION_STR/"All-Platform P2P Client Based on eMule"/' \
507 -e 's/VER_INTERNALNAME_STR/"amule"/' \
508 -e 's/VER_ORIGINALFILENAME_STR/"amule$(EXEEXT)"/' "$<" > "$@"
510 amuled-version.rc: $(top_builddir)/version.rc
511 @sed -e 's/VER_FILEDESCRIPTION_STR/"aMule Daemon"/' \
512 -e 's/VER_INTERNALNAME_STR/"amuled"/' \
513 -e 's/VER_ORIGINALFILENAME_STR/"amuled$(EXEEXT)"/' "$<" > "$@"
515 amulecmd-version.rc: $(top_builddir)/version.rc
516 @sed -e 's/VER_FILEDESCRIPTION_STR/"aMule Text Client"/' \
517 -e 's/VER_INTERNALNAME_STR/"amulecmd"/' \
518 -e 's/VER_ORIGINALFILENAME_STR/"amulecmd$(EXEEXT)"/' "$<" > "$@"
520 amulegui-version.rc: $(top_builddir)/version.rc
521 @sed -e 's/VER_FILEDESCRIPTION_STR/"aMule Remote GUI (Experimental)"/' \
522 -e 's/VER_INTERNALNAME_STR/"amulegui"/' \
523 -e 's/VER_ORIGINALFILENAME_STR/"amulegui$(EXEEXT)"/' "$<" > "$@"
525 ed2k-version.rc: $(top_builddir)/version.rc
526 @sed -e 's/VER_FILEDESCRIPTION_STR/"ED2K Links Handler"/' \
527 -e 's/VER_INTERNALNAME_STR/"ed2k"/' \
528 -e 's/VER_ORIGINALFILENAME_STR/"ed2k$(EXEEXT)"/' "$<" > "$@"
530 CLEANFILES = *-version.rc
535 EXTRA__DIST__SUBDIRS = include kademlia
536 include $(top_srcdir)/automake/dist-hook.am