Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Makefile.linux 5.22 KiB
#=============================================================================
#
# file :	Makefile.h
#
# description : Makefile for DeviceServer
#
# $Author: xavela $
#
# $Revision: 1.5 $
#
# $Log: not supported by cvs2svn $
# Revision 1.4  2008/02/15 10:17:57  xavela
# xavier :
# - command abort added for SCPI Keithleys
#
# Revision 1.3  2007/11/28 10:37:20  xavela
# compile en MODE debug ->
# modifier le(s) MakeFile !
#
# Revision 1.2  2007/09/25 14:45:54  xavela
# xavier :
# support added for Keithley 6517
#
# Revision 1.1	2007/07/09 13:20:37  stephle
# initial import
#
# Revision 1.3	2006/03/21 16:59:13  hardion
# * Add Software Support to Makefile process
#
# Revision 1.2	2006/03/21 15:25:20  hardion
# * Update Pogo
# * fix bug in Makefile process
#
# Revision 1.3	2006/03/14 14:57:34  hardion
# * Update Makefile process to allow compilation of library
#
# Revision 1.2	2006/01/05 16:51:30  hardion
# * Update Makefile.linux and tango.opt for library use
#
#
#=============================================================================



#=============================================================================
# OUTPUT_TYPE can be one of the following :
#   - 'STATIC_LIB' for a static library (.a)
#   - 'DYNAMIC_LIB' for a dynamic library (.so)
#   - 'DEVICE' for a device server (will automatically include and link
#	     with Tango dependencies)
#   - 'SIMPLE_EXE' for an executable with no dependency (for exemple the test tool
#		 of a library with no Tango dependencies)
#
OUTPUT_TYPE = STATIC_LIB
#RELEASE_TYPE = DEBUG
#=============================================================================
# OUTPUT_DIR  is the directory which contains the build result.
# if not set, the standard location is :
#	- $HOME/DeviceServers if OUTPUT_TYPE is DEVICE
#	- ../bin for others
#
OUTPUT_DIR = ../lib


#=============================================================================
# PACKAGE_NAME is the name of the library/device/exe you want to build
#   - for a device server, PACKAGE_NAME will be prefixed by 'ds_'
#   - for a library (static or dynamic), PACKAGE_NAME will be prefixed by 'lib'
#   - for a simple executable, PACKAGE_NAME will be the name of the executable
#
PACKAGE_NAME = Electrometers





#=============================================================================
# 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
#
# -I$(SOLEIL_ROOT)/hw-support/ace/include for ACE library
# -I$(SOLEIL_ROOT)/hw-support/asl/include for ASL library
# -I$(SOLEIL_ROOT)/sw-support/hkl/include for HKL library
# ...etc
#
# la partie communication dpend de tango 
INC_DIR_USER=-I$(TANGO_HOME)/include   -I$(OMNI_HOME)/include -I$(SOLEIL_ROOT)/dev/include





#=============================================================================
# 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
# -L $(SOLEIL_ROOT)/hw-support/ace/lib for ACE library
# -L $(SOLEIL_ROOT)/hw-support/asl/lib for ASL library
# -L $(SOLEIL_ROOT)/sw-support/hkl/lib for HKL library
# ...etc
#
LIB_DIR_USER=



#=============================================================================
# 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
#
# -lACE for ACE
# -lASL for ASL
# -lHKL for HKL
#
LFLAGS_USR=





#=============================================================================
# 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=-DSIMULATED_AXIS


#
#	include Standard TANGO compilation options
#
include $(SOLEIL_ROOT)/env/tango.opt



#=============================================================================
# SVC_OBJS is the list of all objects needed to make the output
#
SVC_OBJS =    $(OBJDIR)/CommunicationLink.o	 \
   $(OBJDIR)/TangoGpibLink.o	      \
   $(OBJDIR)/TangoSerialLink.o	      \
    $(OBJDIR)/ElectrometerProtocol.o  \
   $(OBJDIR)/KeithleyDDCProtocol.o    \
   $(OBJDIR)/KeithleySCPIProtocol.o   \
   $(OBJDIR)/NovelecProtocol.o	      \
   $(OBJDIR)/AbstractElectrometerClass.o   \
   $(OBJDIR)/Novelec_MCCE2.o	       \
   $(OBJDIR)/N_PhotoVoltaique.o 	  \
   $(OBJDIR)/N_PhotoConducteur.o	   \
   $(OBJDIR)/Keithley_485.o		\
   $(OBJDIR)/Keithley_486.o		\
   $(OBJDIR)/Keithley_487.o		\
   $(OBJDIR)/Keithley_617.o		\
   $(OBJDIR)/Keithley_6512.o		 \
   $(OBJDIR)/Keithley_6485.o		 \
   $(OBJDIR)/Keithley_6487.o		 \
   $(OBJDIR)/Keithley_6514.o		 \
   $(OBJDIR)/Keithley_6517.o		 \
   $(OBJDIR)/ElectrometerException.o

#
# Verbose mode
#
#.SILENT:

#
#	include common targets
#
include $(SOLEIL_ROOT)/env/common_target.opt