lib_LTLIBRARIES = libariba.la libariba_la_SOURCES = # compiler flags ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # read the autotools book 11.4 for setting the versioning number # this is different from normal versioning schemes and important # to set correctly as the runtime linker chooses the correct lib # depending on the versioning information here! This is not the # project version number!! libariba_la_LDFLAGS = -version-info 0:0:0 # compiler flags ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AM_CPPFLAGS = -DLINUX -D_LINUX -I../ -D_REENTRANT -DSCTP_KERN AM_CPPFLAGS += $(BOOST_CPPFLAGS) if DEBUG AM_CPPFLAGS += -ggdb -DDEBUG -D_DEBUG -O0 endif if PROFILING AM_CPPFLAGS += -pg endif if OMNET AM_CPPFLAGS += -fPIC -DUNDERLAY_OMNET endif # linker flags ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ AM_LDFLAGS = $(BOOST_THREAD_LDFLAGS) $(BOOST_SYSTEM_LDFLAGS) LIBS += $(BOOST_THREAD_LIBS) $(BOOST_SYSTEM_LIBS) if PROFILING AM_LDFLAGS += -pg endif if OMNET AM_LDFLAGS += -shared -rdynamic endif libariba_la_INCLUDES = # sources and subdirs ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #interfaces headers for make install - don't #remove the here listed .h files from _SOURCES! libariba_la_INCLUDES += \ tidy/AribaModule.h \ tidy/TidyCommunicationListener.h \ tidy/Identifiers.h \ tidy/LinkProperties.h \ tidy/TidyMessage.h \ tidy/Module.h \ tidy/Name.h \ tidy/Node.h \ tidy/NodeListener.h \ tidy/SpoVNetProperties.h #tidy interface libariba_la_SOURCES += \ tidy/AribaModule.cpp \ tidy/AribaModule.h \ tidy/TidyCommunicationListener.cpp \ tidy/TidyCommunicationListener.h \ tidy/Identifiers.cpp \ tidy/Identifiers.h \ tidy/LinkProperties.cpp \ tidy/LinkProperties.h \ tidy/TidyMessage.cpp \ tidy/TidyMessage.h \ tidy/Module.cpp \ tidy/Module.h \ tidy/Name.cpp \ tidy/Name.h \ tidy/Node.cpp \ tidy/Node.h \ tidy/NodeListener.cpp \ tidy/NodeListener.h \ tidy/SpoVNetProperties.cpp \ tidy/SpoVNetProperties.h #communication libariba_la_SOURCES += \ communication/BaseCommunication.cpp \ communication/BaseCommunication.h \ communication/CommunicationEvents.cpp \ communication/CommunicationEvents.h \ communication/EndpointDescriptor.cpp \ communication/EndpointDescriptor.h #communication :: messages libariba_la_SOURCES += \ communication/messages/AribaBaseMsg.cpp \ communication/messages/AribaBaseMsg.h #communication :: modules libariba_la_SOURCES += \ communication/modules/modules.h \ communication/modules/_namespace.h #communication :: modules :: network libariba_la_SOURCES += \ communication/modules/network/NetworkLocator.cpp \ communication/modules/network/NetworkLocator.h \ communication/modules/network/NetworkProtocol.cpp \ communication/modules/network/NetworkProtocol.h #communication :: modules :: network :: ip libariba_la_SOURCES += \ communication/modules/network/ip/IPv4Locator.cpp \ communication/modules/network/ip/IPv4Locator.h \ communication/modules/network/ip/IPv4NetworkProtocol.cpp \ communication/modules/network/ip/IPv4NetworkProtocol.h if OMNET #communication :: modules :: network :: omnet libariba_la_SOURCES += \ communication/modules/network/omnet/OmnetNetworkProtocol.cpp \ communication/modules/network/omnet/OmnetNetworkProtocol.h endif #communication :: modules :: transport libariba_la_SOURCES += \ communication/modules/transport/TransportLocator.cpp \ communication/modules/transport/TransportLocator.h \ communication/modules/transport/TransportProtocol.cpp \ communication/modules/transport/TransportProtocol.h if OMNET #communication :: modules :: transport :: omnet libariba_la_SOURCES += \ communication/modules/transport/omnet/AribaOmnetMessage_m.cc \ communication/modules/transport/omnet/AribaOmnetMessage_m.h \ communication/modules/transport/omnet/AribaOmnetModule.cpp \ communication/modules/transport/omnet/AribaOmnetModule.h endif if OMNET else #communication :: modules :: transport :: protlib libariba_la_SOURCES += \ communication/modules/transport/protlib/timer_module.cpp \ communication/modules/transport/protlib/threadsafe_db.cpp \ communication/modules/transport/protlib/address.cpp \ communication/modules/transport/protlib/ie.cpp \ communication/modules/transport/protlib/tp_over_tcp.cpp \ communication/modules/transport/protlib/setuid.cpp \ communication/modules/transport/protlib/tp.cpp \ communication/modules/transport/protlib/connectionmap_uds.cpp \ communication/modules/transport/protlib/logfile.cpp \ communication/modules/transport/protlib/timer.cpp \ communication/modules/transport/protlib/connectionmap.cpp \ communication/modules/transport/protlib/fqueue.cpp \ communication/modules/transport/protlib/threads.cpp \ communication/modules/transport/protlib/messages.cpp \ communication/modules/transport/protlib/queuemanager.cpp \ communication/modules/transport/protlib/network_message.cpp \ communication/modules/transport/protlib/configuration.cpp \ communication/modules/transport/protlib/tp_over_uds.cpp \ communication/modules/transport/protlib/tp_over_udp.cpp \ communication/modules/transport/protlib/tp_over_tls_tcp.cpp \ communication/modules/transport/protlib/fastqueue.c \ communication/modules/transport/protlib/eclock_gettime.c \ communication/modules/transport/protlib/testqueue.c \ communication/modules/transport/protlib/tp_over_uds.h \ communication/modules/transport/protlib/threadsafe_db.h \ communication/modules/transport/protlib/configuration.h \ communication/modules/transport/protlib/ie.h \ communication/modules/transport/protlib/llhashers.h \ communication/modules/transport/protlib/fqueue.h \ communication/modules/transport/protlib/assocdata_uds.h \ communication/modules/transport/protlib/address.h \ communication/modules/transport/protlib/logfile.h \ communication/modules/transport/protlib/timer.h \ communication/modules/transport/protlib/queuemanager.h \ communication/modules/transport/protlib/messages.h \ communication/modules/transport/protlib/assocdata.h \ communication/modules/transport/protlib/protlib_types.h \ communication/modules/transport/protlib/tp_over_tcp.h \ communication/modules/transport/protlib/tp.h \ communication/modules/transport/protlib/threads.h \ communication/modules/transport/protlib/connectionmap.h \ communication/modules/transport/protlib/timer_module.h \ communication/modules/transport/protlib/fastqueue.h \ communication/modules/transport/protlib/tperror.h \ communication/modules/transport/protlib/tp_over_tls_tcp.h \ communication/modules/transport/protlib/network_message.h \ communication/modules/transport/protlib/tp_over_udp.h \ communication/modules/transport/protlib/setuid.h \ communication/modules/transport/protlib/cleanuphandler.h \ communication/modules/transport/protlib/connectionmap_uds.h endif if OMNET else #communication :: modules :: transport :: tcp libariba_la_SOURCES += \ communication/modules/transport/tcp/TCPTransport.cpp \ communication/modules/transport/tcp/TCPTransport.h \ communication/modules/transport/tcp/TCPTransportLocator.cpp \ communication/modules/transport/tcp/TCPTransportLocator.h endif #communication :: networkinfo libariba_la_SOURCES += \ communication/networkinfo/AddressInformation.cpp \ communication/networkinfo/AddressInformation.h \ communication/networkinfo/NetworkChangeDetection.cpp \ communication/networkinfo/NetworkChangeDetection.h \ communication/networkinfo/NetworkChangeInterface.h \ communication/networkinfo/NetworkInterface.h \ communication/networkinfo/NetworkInformation.cpp \ communication/networkinfo/NetworkInformation.h \ communication/networkinfo/NetworkInterface.cpp #interface libariba_la_SOURCES += \ interface/UnderlayAbstraction.cpp \ interface/UnderlayAbstraction.h \ interface/AribaContext.cpp \ interface/AribaContext.h \ interface/ServiceInterface.cpp \ interface/ServiceInterface.h #overlay libariba_la_SOURCES += \ overlay/BaseOverlay.cpp \ overlay/BaseOverlay.h \ overlay/OverlayEvents.cpp \ overlay/OverlayEvents.h #overlay :: messages libariba_la_SOURCES += \ overlay/messages/JoinReply.cpp \ overlay/messages/JoinReply.h \ overlay/messages/JoinRequest.cpp \ overlay/messages/JoinRequest.h \ overlay/messages/OverlayMsg.cpp \ overlay/messages/OverlayMsg.h #overlay :: modules libariba_la_SOURCES += \ overlay/modules/OverlayStructureEvents.cpp \ overlay/modules/OverlayStructureEvents.h \ overlay/modules/OverlayFactory.cpp \ overlay/modules/OverlayFactory.h \ overlay/modules/OverlayInterface.cpp \ overlay/modules/OverlayInterface.h #overlay :: modules :: chord # libariba_la_SOURCES += \ # overlay/modules/chord/ChordSuccessorList.h \ # overlay/modules/chord/Chord.h \ # overlay/modules/chord/ChordFingerTable.h \ # overlay/modules/chord/ChordSuccessorList.cc \ # overlay/modules/chord/Chord.cc \ # overlay/modules/chord/ChordFingerTable.cc #overlay :: modules :: onehop libariba_la_SOURCES += \ overlay/modules/onehop/OneHop.cpp \ overlay/modules/onehop/OneHop.h \ overlay/modules/onehop/messages/OneHopMessage.cpp \ overlay/modules/onehop/messages/OneHopMessage.h \ overlay/modules/onehop/messages/NodeListingRequest.cpp \ overlay/modules/onehop/messages/NodeListingRequest.h \ overlay/modules/onehop/messages/NodeListingReply.cpp \ overlay/modules/onehop/messages/NodeListingReply.h #utility libariba_la_SOURCES += \ utility/types.h \ utility/messages.h \ utility/serialization.h #utility :: configuration libariba_la_SOURCES += \ utility/configuration/ConfigFile.cpp \ utility/configuration/ConfigFile.h \ utility/configuration/Configuration.cpp \ utility/configuration/Configuration.h #utility :: internal libariba_la_SOURCES += \ utility/internal/Utilities.hpp #utility :: logging libariba_la_SOURCES += \ utility/logging/Logging.h #utility :: measurement libariba_la_SOURCES += \ utility/measurement/PathloadMeasurement.cpp \ utility/measurement/PathloadMeasurement.h #utility :: messages libariba_la_SOURCES += \ utility/messages/_namespace.h \ utility/messages/Message.cpp \ utility/messages/Message.h \ utility/messages/MessageControlInfo.cpp \ utility/messages/MessageControlInfo.h \ utility/messages/MessageProvider.cpp \ utility/messages/MessageProvider.h \ utility/messages/MessageReceiver.cpp \ utility/messages/MessageReceiver.h \ utility/messages/MessageSender.cpp \ utility/messages/MessageSender.h \ utility/messages/MessageUtilities.h \ utility/messages/TextMessage.cpp \ utility/messages/TextMessage.h #utility :: misc libariba_la_SOURCES += \ utility/misc/Demultiplexer.hpp \ utility/misc/Helper.cpp \ utility/misc/Helper.h \ utility/misc/KeyMapping.hpp \ utility/misc/OvlVis.cpp \ utility/misc/OvlVis.h \ utility/misc/sha1.cpp \ utility/misc/sha1.h #utility :: serialization libariba_la_SOURCES += \ utility/serialization/Serialization.cpp \ utility/serialization/DataUtilities.hpp \ utility/serialization/Serialization.hpp \ utility/serialization/Data.hpp \ utility/serialization/DataStream.hpp #utility :: system libariba_la_SOURCES += \ utility/system/BlockingMethod.cpp \ utility/system/BlockingMethod.h \ utility/system/SystemEvent.cpp \ utility/system/SystemEvent.h \ utility/system/SystemEventListener.cpp \ utility/system/SystemEventListener.h \ utility/system/SystemEventType.cpp \ utility/system/SystemEventType.h \ utility/system/SystemQueue.cpp \ utility/system/SystemQueue.h \ utility/system/Timer.cpp \ utility/system/Timer.h \ utility/system/StartupWrapper.cpp \ utility/system/StartupWrapper.h \ utility/system/StartupInterface.h #utility :: types libariba_la_SOURCES += \ utility/types/_namespace.h \ utility/types/Address.cpp \ utility/types/Address.h \ utility/types/Data.hpp \ utility/types/Identifier.cpp \ utility/types/Identifier.h \ utility/types/LinkID.cpp \ utility/types/LinkID.h \ utility/types/Locator.cpp \ utility/types/Locator.h \ utility/types/NodeID.cpp \ utility/types/NodeID.h \ utility/types/OverlayParameterSet.cpp \ utility/types/OverlayParameterSet.h \ utility/types/QoSParameterSet.cpp \ utility/types/QoSParameterSet.h \ utility/types/SecurityParameterSet.cpp \ utility/types/SecurityParameterSet.h \ utility/types/ServiceID.cpp \ utility/types/ServiceID.h \ utility/types/SpoVNetID.cpp \ utility/types/SpoVNetID.h #autotools does not support hierarchical folders in the header dir #so we copy them on our own using, similar to 14.3 in the autobook #TODO: do we still need this? what is the default dir?#do we want the version no in the folder # so people can install multiple header versions? libariba_ladir = ${pkgincludedir} # header files to install - TODO: extract all *.h and *.hpp files ~~~~ ### --> no more longer needed when the tidy interface is done! # # | # | # \/ # # install-data-local: # @for f in $(libariba_la_SOURCES); do \ # d=`echo $$f | sed -e 's,/[^/]*$$,,'`; \ # $(mkinstalldirs) $(DESTDIR)$(libariba_ladir)/$$d; \ # if test -f $(srcdir)/$$f; then p=$(srcdir)/$$f; else p=$$f; fi; \ # $(INSTALL_DATA) $$p $(DESTDIR)$(libariba_ladir)/$$f; \ # done # # uninstall-local: # rm -rf $(DESTDIR)$(libariba_ladir)