Commit 1605fd67 authored by Yuelong Yu's avatar Yuelong Yu
Browse files

changed make files

parent 0ad166b7
<?xml version="1.0" encoding="ASCII"?>
<pogoDsl:PogoSystem xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:pogoDsl="http://www.esrf.fr/tango/pogo/PogoDsl">
<classes name="AGIPD" pogoRevision="9.4">
<description description="AGIPD tango server" title="AGIPD" sourcePath="/home/yuelong/src/gitrepo/detsoftware/tango/agipd" language="Cpp" filestogenerate="XMI file,Code files,Protected Regions,html Pages" hasMandatoryProperty="false" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false" descriptionHtmlExists="false">
<description description="AGIPD tango server" title="AGIPD" sourcePath="/home/yuelong/src/gitrepo/tango.ds/agipd" language="Cpp" filestogenerate="XMI file,Makefile,Protected Regions,html Pages" hasMandatoryProperty="false" hasConcreteProperty="true" hasAbstractCommand="false" hasAbstractAttribute="false" descriptionHtmlExists="false">
<inheritances classname="Device_Impl" sourcePath=""/>
<identification contact="at desy.de - yuelong.yu" author="yuelong.yu" emailDomain="desy.de" classFamily="Acquisition" siteSpecific="" platform="Unix Like" bus="Ethernet" manufacturer="DESY(FS-DS)" reference=""/>
</description>
......
#=============================================================================
#
# file : Makefile
#
# description : Makefile to generate a TANGO device server.
#
# project : AGIPD
#
#=============================================================================
# This file is generated by POGO
# (Program Obviously used to Generate tango Object)
#=============================================================================
#
#
# MAKE_ENV is the path to find common environment to buil project
#
MAKE_ENV = $(TANGO_DIR)/Libraries/cppserver/common
#=============================================================================
# PACKAGE_NAME is the name of the library/device/exe you want to build
#
PACKAGE_NAME = AGIPD
MAJOR_VERS = 1
MINOR_VERS = 0
RELEASE = Release_$(MAJOR_VERS)_$(MINOR_VERS)
#===============================================================================
RELEASE_TYPE = -g
# #=============================================================================
# # RELEASE_TYPE
# # - DEBUG : debug symbols - no optimization
# # - OPTIMIZED : no debug symbols - optimization level set to O2
# #-----------------------------------------------------------------------------
RELEASE_TYPE = DEBUG
#=============================================================================
# OUTPUT_TYPE can be one of the following :
......@@ -16,79 +40,108 @@ RELEASE_TYPE = -g
# - 'SIMPLE_EXE' for an executable with no dependency (for exemple the test tool
# of a library with no Tango dependencies)
#
#OUTPUT_TYPE = DEVICE
OUTPUT_TYPE = DEVICE
#OUTPUT_DIR = ./bin/$(PACKAGE_NAME)
#=============================================================================
# OUTPUT_DIR is the directory which contains the build result.
# if not set, the standard location is :
# - ./shlib if OUTPUT_TYPE is SHARED_LIB
# - ./lib if OUTPUT_TYPE is STATIC_LIB
# - ./bin for others
#
OUTPUT_DIR = ./bin
#OBJS_DIR = obj
BUILD = build
OBJS_DIR = ../../$(BUILD)/$(PACKAGE_NAME)/
BIN_DIR = ../../bin
LIB_PNIIO_CONFIG = $(shell pkg-config --libs pniio)
#=============================================================================
# INC_DIR_USER is the list of all include path needed by your sources
# - for a device server, tango dependencies are automatically appended
# - '-I ../include' and '-I .' are automatically appended in all cases
#
INC_DIR_USER= -I .
CPPFLAGS_PNIIO_CONFIG = $(shell pkg-config --cflags pniio)
#=============================================================================
# LIB_DIR_USER is the list of user library directories
# - for a device server, tango libraries directories are automatically appended
# - '-L ../lib' is automatically appended in all cases
#
LIB_DIR_USER=
LIBS_AGIPD_CONFIG = $(shell pkg-config --libs agipd)
CPPFLAGS_AGIPD_CONFIG = $(shell pkg-config --cflags agipd)
#=============================================================================
# LFLAGS_USR is the list of user link flags
# - for a device server, tango libraries directories are automatically appended
# - '-ldl -lpthread' is automatically appended in all cases
#
# !!! ATTENTION !!!
# Be aware that the order matters.
# For example if you must link with libA, and if libA depends itself on libB
# you must use '-lA -lB' in this order as link flags, otherwise you will get
# 'undefined reference' errors
#
LFLAGS_USR+= $(shell pkg-config --libs pniio) $(shell pkg-config --libs agipd)
# ifndef _ARCH
# _ARCH = $(shell uname -m)
# endif
# ifeq ($(_ARCH), x86_64)
# libdir=lib64
# else
# libdir=lib
# endif
libdir = lib
#=============================================================================
# CXXFLAGS_USR lists the compilation flags specific for your library/device/exe
# This is the place where to put your compile-time macros using '-Dmy_macro'
#
# -DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ for ACE
#
CXXFLAGS_USR+= -O2 -g -Wall -pedantic -std=c++11 \
$(shell pkg-config --cflags pniio) $(shell pkg-config --cflags agipd)
INC_DIR_USER= -I/usr/include/tango \
-I/usr/include \
-I.
#=============================================================================
# TANGO_REQUIRED
# - TRUE : your project depends on TANGO
# - FALSE : your project does not depend on TANGO
#-----------------------------------------------------------------------------
# - NOTE : if PROJECT_TYPE is set to DEVICE, TANGO will be auto. added
#-----------------------------------------------------------------------------
TANGO_REQUIRED = TRUE
LIB_DIR_USER= -L /usr/$(libdir)
LFLAGS_USR= $(RELEASE_TYPE) -Wall $(LIB_DIR_USER) \
$(LIB_PNIIO_CONFIG) \
$(LIBS_AGIPD_CONFIG) \
-ltango \
-llog4tango \
-lCOS4\
-lomniORB4 \
-lomniDynamic4 \
-lomnithread \
-ldl \
-lpthread \
-lstdc++ \
-lhdf5_hl
#=============================================================================
# include Standard TANGO compilation options
#
include $(MAKE_ENV)/tango.opt
#used for time measurement during compression mode
#CXXFLAGS_USR =-O2 -DTIMEMEASUREMENT -std=c++0x $(RELEASE_TYPE) -D_REENTRANT \
$(CPPFLAGS_PNIIO_CONFIG) $(INC_DIR_USER)
#=============================================================================
# POST_PROCESSING: action to be done after normal make.
# e.g.: change executable file name, .....
#POST_PROCESSING = \
# mv bin/$(BIN_DIR)/$(PACKAGE_NAME) bin/$(BIN_DIR)/$(PACKAGE_NAME)_DS
#=============================================================================
# SVC_OBJS is the list of all objects needed to make the output
#
SVC_INCL = $(PACKAGE_NAME).h $(PACKAGE_NAME)Class.h \
DetectorSimulation.h \
AcquisitionThread.h \
NXFileWriter.h \
NXWrapper.h
SVC_OBJS = \
$(LIB_OBJS) \
$(OBJDIR)/ClassFactory.o \
$(OBJDIR)/main.o \
$(OBJDIR)/DetectorSimulation.o
CXXFLAGS_USR =-O3 -std=c++11 -Wall $(RELEASE_TYPE) -D_REENTRANT \
$(CPPFLAGS_PNIIO_CONFIG) $(INC_DIR_USER) $(CPPFLAGS_AGIPD_CONFIG)
LIB_OBJS = \
$(OBJDIR)/$(PACKAGE_NAME).o \
$(OBJDIR)/$(PACKAGE_NAME)Class.o \
$(OBJDIR)/$(PACKAGE_NAME)StateMachine.o \
$(ADDITIONAL_OBJS)
SVC_INC = $(PACKAGE_NAME).h $(PACKAGE_NAME)Class.h \
DetectorSimulation.h \
AcquisitionThread.h \
NXFileWriter.h \
NXWrapper.h
SVC_INHERITANCE_OBJ = \
#=============================================================================
# include common targets
#
include $(MAKE_ENV)/common_target.opt
SVC_OBJS = $(OBJS_DIR)/main.o \
$(OBJS_DIR)/ClassFactory.o \
$(OBJS_DIR)/$(PACKAGE_NAME)StateMachine.o \
$(OBJS_DIR)/$(PACKAGE_NAME)Class.o \
$(OBJS_DIR)/$(PACKAGE_NAME).o \
$(OBJS_DIR)/DetectorSimulation.o
$(OBJS_DIR)/%.o: %.cpp $(SVC_INC)
$(CXX) $(CXXFLAGS_USR) -c $< -o $(OBJS_DIR)/$*.o
all:$(PACKAGE_NAME)
$(PACKAGE_NAME): $(SVC_OBJS)
$(CXX) $(SVC_OBJS) -o $(BIN_DIR)/$(PACKAGE_NAME) $(LFLAGS_USR)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment