# This Makefile was generated by the Makefile Generator # of the TTCN-3 Test Executor version CRL 113 200/6 R2A # for Harald Welte (laforge@nataraja) on Fri Jul 7 19:19:20 2017 # Copyright (c) 2000-2017 Ericsson Telecom AB # The following make commands are available: # - make, make all Builds the executable test suite. # - make archive Archives all source files. # - make check Checks the semantics of TTCN-3 and ASN.1modules. # - make port Generates port skeletons. # - make clean Removes all generated files. # - make compile Translates TTCN-3 and ASN.1 modules to C++. # - make dep Creates/updates dependency list. # - make executable Builds the executable test suite. # - make library Builds the library archive. # - make objects Builds the object files without linking the executable. # # Set these variables... # # The path of your TTCN-3 Test Executor installation: # Uncomment this line to override the environment variable. TTCN3_DIR = /usr # Your platform: (SOLARIS, SOLARIS8, LINUX, FREEBSD or WIN32) PLATFORM = LINUX # Your C++ compiler: # (if you change the platform, you may need to change the compiler) CXX = g++ # Flags for the C++ preprocessor (and makedepend as well): CPPFLAGS = -D$(PLATFORM) -I$(TTCN3_DIR)/include -I/usr/include/titan # Flags for the C++ compiler: CXXFLAGS = -Wall # Flags for the linker: LDFLAGS = -L /usr/lib/titan `pkg-config --libs libnetfilter_conntrack` ifeq ($(PLATFORM), WIN32) # Silence linker warnings. LDFLAGS += -Wl,--enable-auto-import,--enable-runtime-pseudo-reloc endif # Utility to create library files AR = ar ARFLAGS = # Flags for the TTCN-3 and ASN.1 compiler: COMPILER_FLAGS = -L # Execution mode: (either ttcn3 or ttcn3-parallel) TTCN3_LIB = ttcn3 # The path of your libxml2 installation: # If you do not have your own one, leave it unchanged. XMLDIR = $(TTCN3_DIR) # Directory to store the archived source files: # Note: you can set any directory except ./archive ARCHIVE_DIR = backup # # You may change these variables. Add your files if necessary... # # TTCN-3 modules of this project: TTCN3_MODULES = IPL4_example.ttcn CommonDefs.ttcn General_Types.ttcn IP_Types.ttcn NetfilterConntrack_Functions.ttcn TCCConversion_Functions.ttcn TCCInterface_Functions.ttcn TCP_Types.ttcn TunDevice_PortType.ttcn TunDevice_Types.ttcn UDP_Types.ttcn UsefulTtcn3Types.ttcn XSD.ttcn http_www_netfilter_org_xml_libnetfilter_conntrack.ttcn # ASN.1 modules of this project: ASN1_MODULES = # C++ source & header files generated from the TTCN-3 & ASN.1 modules of # this project: GENERATED_SOURCES = IPL4_example.cc CommonDefs.cc General_Types.cc IP_Types.cc NetfilterConntrack_Functions.cc TCCConversion_Functions.cc TCCInterface_Functions.cc TCP_Types.cc TunDevice_PortType.cc TunDevice_Types.cc UDP_Types.cc UsefulTtcn3Types.cc XSD.cc http_www_netfilter_org_xml_libnetfilter_conntrack.cc GENERATED_HEADERS = IPL4_example.hh CommonDefs.hh General_Types.hh IP_Types.hh NetfilterConntrack_Functions.hh TCCConversion_Functions.hh TCCInterface_Functions.hh TCP_Types.hh TunDevice_PortType.hh TunDevice_Types.hh UDP_Types.hh UsefulTtcn3Types.hh XSD.hh http_www_netfilter_org_xml_libnetfilter_conntrack.hh # C/C++ Source & header files of Test Ports, external functions and # other modules: USER_SOURCES = IP_EncDec.cc NetfilterConntrack.cc TCCConversion.cc TCCInterface.cc TCP_EncDec.cc TunDevice_PT.cc UDP_EncDec.cc USER_HEADERS = TunDevice_PT.hh # Object files of this project that are needed for the executable test suite: OBJECTS = $(GENERATED_OBJECTS) $(USER_OBJECTS) GENERATED_OBJECTS = IPL4_example.o CommonDefs.o General_Types.o IP_Types.o NetfilterConntrack_Functions.o TCCConversion_Functions.o TCCInterface_Functions.o TCP_Types.o TunDevice_PortType.o TunDevice_Types.o UDP_Types.o UsefulTtcn3Types.o XSD.o http_www_netfilter_org_xml_libnetfilter_conntrack.o USER_OBJECTS = IP_EncDec.o NetfilterConntrack.o TCCConversion.o TCCInterface.o TCP_EncDec.o TunDevice_PT.o UDP_EncDec.o # Other files of the project (Makefile, configuration files, etc.) # that will be added to the archived source files: OTHER_FILES = Makefile # The name of the executable test suite: EXECUTABLE = IPL4_example LIBRARY = lib$(EXECUTABLE).a TARGET = $(EXECUTABLE) # # Do not modify these unless you know what you are doing... # Platform specific additional libraries: # SOLARIS_LIBS = -lsocket -lnsl -lxml2 SOLARIS8_LIBS = -lsocket -lnsl -lxml2 LINUX_LIBS = -lxml2 FREEBSD_LIBS = -lxml2 WIN32_LIBS = -lxml2 # # Rules for building the executable... # all: $(TARGET) ; executable: $(EXECUTABLE) ; library: $(LIBRARY) ; objects: $(OBJECTS) compile; $(EXECUTABLE): $(OBJECTS) if $(CXX) $(LDFLAGS) -o $@ $(OBJECTS) \ -L$(TTCN3_DIR)/lib -l$(TTCN3_LIB) \ -L$(OPENSSL_DIR)/lib -lcrypto \ -L$(XMLDIR)/lib $($(PLATFORM)_LIBS); \ then : ; else $(TTCN3_DIR)/bin/titanver $(OBJECTS); exit 1; fi $(LIBRARY): $(OBJECTS) $(AR) -r $(ARFLAGS) $(LIBRARY) $(OBJECTS) .cc.o .c.o: $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $< $(GENERATED_SOURCES) $(GENERATED_HEADERS): compile @if [ ! -f $@ ]; then rm -f compile; $(MAKE) compile; fi check: $(TTCN3_MODULES) $(ASN1_MODULES) $(TTCN3_DIR)/bin/compiler -s $(COMPILER_FLAGS) \ $(TTCN3_MODULES) $(PREPROCESSED_TTCN3_MODULES) $(ASN1_MODULES) port: $(TTCN3_MODULES) $(ASN1_MODULES) $(TTCN3_DIR)/bin/compiler -t $(COMPILER_FLAGS) \ $(TTCN3_MODULES) $(PREPROCESSED_TTCN3_MODULES) $(ASN1_MODULES) compile: $(TTCN3_MODULES) $(ASN1_MODULES) $(TTCN3_DIR)/bin/compiler $(COMPILER_FLAGS) \ $(TTCN3_MODULES) $(ASN1_MODULES) - $? touch $@ clean: -rm -f $(EXECUTABLE) $(LIBRARY) $(OBJECTS) $(GENERATED_HEADERS) \ $(GENERATED_SOURCES) compile \ tags *.log dep: $(GENERATED_SOURCES) $(USER_SOURCES) ; makedepend $(CPPFLAGS) -DMAKEDEPEND_RUN $(GENERATED_SOURCES) $(USER_SOURCES) archive: mkdir -p $(ARCHIVE_DIR) tar -cvhf - $(TTCN3_MODULES) $(ASN1_MODULES) \ $(USER_HEADERS) $(USER_SOURCES) $(OTHER_FILES) \ | gzip >$(ARCHIVE_DIR)/`basename $(TARGET) .exe`-`date '+%y%m%d-%H%M'`.tgz diag: $(TTCN3_DIR)/bin/compiler -v 2>&1 $(TTCN3_DIR)/bin/mctr_cli -v 2>&1 $(CXX) -v 2>&1 $(AR) -V 2>&1 @echo TTCN3_DIR=$(TTCN3_DIR) @echo OPENSSL_DIR=$(OPENSSL_DIR) @echo XMLDIR=$(XMLDIR) @echo PLATFORM=$(PLATFORM) # # Add your rules here if necessary... #