Newer
Older
include $(TOP)/configure/CONFIG
#----------------------------------------
# ADD MACRO DEFINITIONS AFTER THIS LINE
#=============================
# For Kate Feng's implementation of devScaler.c, which uses Till
# Straumann's basicIoOps.h to bridge any mismatch between endianness
# of Joerger scaler hardware and endianness of processor.
#USR_CFLAGS += -DHAS_IOOPS_H
#==================================================
# build a support library that some other application can use
#LIBRARY_IOC += xxxSupport
# xxxRecord.h will be created from xxxRecord.dbd
#DBDINC += xxxRecord
# install support-library .dbd into <top>/dbd
#DBD += xxxSupport.dbd
# The following are compiled and added to the Support library
#xxxSupport_SRCS += xxxRecord.c
#xxxSupport_LIBS += $(EPICS_BASE_IOC_LIBS)
#=============================
# build an ioc application
PROD_IOC = xxx
# Note that the order in which .dbd files are added to a list variable
# doesn't matter, but the order of libraries does.
##################################################################
# First, define xxx_Common_DBD and xxx_Common_LIBS from the modules
# defined in RELEASE
##################################################################
DBD += xxx_Common.dbd
xxx_Common_DBD += base.dbd
ifdef AREA_DETECTOR
# areaDetector provides a Makefile for things it needs and supplies
PROD_NAME = xxx_Common
-include $(AREA_DETECTOR)/ADCore/ADApp/commonDriverMakefile
# To add the simDetector uncomment the following lines
xxx_Common_DBD += simDetectorSupport.dbd
xxx_Common_LIBS := simDetector $(xxx_Common_LIBS)
endif
ifdef ASYN
xxx_Common_DBD += asyn.dbd drvAsynSerialPort.dbd
xxx_Common_DBD += drvAsynIPPort.dbd drvVxi11.dbd devGpib.dbd
xxx_Common_LIBS := asyn $(xxx_Common_LIBS)
endif
ifdef STD
xxx_Common_DBD += stdSupport.dbd
xxx_Common_LIBS := std $(xxx_Common_LIBS)
endif
ifdef CALC
xxx_Common_DBD += calcSupport.dbd
xxx_Common_LIBS := calc $(xxx_Common_LIBS)
endif
ifdef BUSY
xxx_Common_DBD += busySupport.dbd
xxx_Common_LIBS := busy $(xxx_Common_LIBS)
endif
ifdef SSCAN
xxx_Common_DBD += sscanSupport.dbd
xxx_Common_LIBS := sscan $(xxx_Common_LIBS)
ifdef SNCSEQ
xxx_Common_DBD += sscanProgressSupport.dbd
xxx_Common_LIBS := scanProgress $(xxx_Common_LIBS)
endif
endif
ifdef AUTOSAVE
xxx_Common_DBD += asSupport.dbd
xxx_Common_LIBS := autosave $(xxx_Common_LIBS)
endif
ifdef OPTICS
xxx_Common_DBD += opticsSupport.dbd
xxx_Common_LIBS := optics $(xxx_Common_LIBS)
endif
ifdef MCA
xxx_Common_DBD += mcaSupport.dbd
xxx_Common_LIBS := mca $(xxx_Common_LIBS)
endif
ifdef IP
xxx_Common_DBD += ipSupport.dbd
xxx_Common_LIBS := ip $(xxx_Common_LIBS)
endif
ifdef QUADEM
xxx_Common_DBD += drvAHxxx.dbd
xxx_Common_LIBS := quadEM $(xxx_Common_LIBS)
endif
ifdef MOTOR
xxx_Common_DBD += motorSupport.dbd devAcsMotor.dbd devAerotech.dbd
xxx_Common_DBD += devAttocube.dbd devFaulhaberMotor.dbd devImsMotor.dbd
xxx_Common_DBD += devKohzuMotor.dbd devMclennanMotor.dbd devMicos.dbd
xxx_Common_DBD += devMicroMo.dbd devNewFocus.dbd devNewport.dbd
xxx_Common_DBD += devOriel.dbd devPC6K.dbd devPIJena.dbd devPIMotor.dbd
xxx_Common_DBD += devSPiiPlus.dbd devSmartMotorMotor.dbd devSoftMotor.dbd
xxx_Common_DBD += devThorLabs.dbd motorRecord.dbd motorSimSupport.dbd
xxx_Common_LIBS := motor $(xxx_Common_LIBS)
xxx_Common_LIBS := Acs acsTech80 Aerotech Attocube Faulhaber Ims KohzuMotor $(xxx_Common_LIBS)
xxx_Common_LIBS := Mclennan Micos MicroMo NewFocus Newport Oriel PI PIJena $(xxx_Common_LIBS)
xxx_Common_LIBS := Parker SmartMotor ThorLabs softMotor motorSimSupport $(xxx_Common_LIBS)
endif
ifdef SNCSEQ
xxx_Common_DBD += devSequencer.dbd
xxx_Common_LIBS := seqDev seq pv $(xxx_Common_LIBS)
endif
ifdef STREAM
xxx_Common_DBD += stream.dbd streamSynApps.dbd
xxx_Common_LIBS := stream streamSynApps $(xxx_Common_LIBS)
endif
ifdef DEVIOCSTATS
xxx_Common_DBD += devIocStats.dbd iocAdmin.dbd
xxx_Common_LIBS := devIocStats $(xxx_Common_LIBS)
endif
xxx_Common_LIBS := $(xxx_Common_LIBS) $(EPICS_BASE_IOC_LIBS)
##################################################################
ifeq (win32-x86,$(findstring win32-x86, $(T_A)))
DBD += iocxxxWin32.dbd
iocxxxWin32_DBD += xxx_Common.dbd
ifdef MCA
# If your host supports libpcap and libnet and you want to build
# Canberra network support uncomment the following lines
#iocxxxWin32_DBD += mcaCanberraSupport.dbd
#xxx_LIBS_WIN32 += mcaCanberra
endif
ifdef DXP
# If you want to build parallel port or USB interfaces to Saturn and/or
iocxxxWin32_DBD += dxpSupport.dbd
xxx_LIBS_WIN32 += dxp handel
xxx_LIBS_WIN32 += DLPORTIO PlxApi
xxx_SYS_LIBS_WIN32 += setupapi
ifeq (windows-x64,$(findstring windows-x64, $(T_A)))
iocxxxWin64_DBD += xxx_Common.dbd
ifdef MCA
# If your host supports libpcap and libnet and you want to build Canberra network
# support uncomment the following line
iocxxxWin64_DBD += mcaCanberraSupport.dbd
xxx_LIBS_WIN32 += mcaCanberra
xxx_LIBS_WIN32 += wpcap Packet
ifeq ($(EPICS_HOST_ARCH), cygwin-x86)
DBD += iocxxxCygwin.dbd
iocxxxCygwin_DBD += xxx_Common.dbd
ifdef DXP
# If you want to build parallel port or USB interfaces to Saturn and/or
# xMAP DXP,then uncomment the following lines
#iocxxxCygwin_DBD += dxpSupport.dbd
#xxx_LIBS_cygwin32 += dxp handel
#xxx_SYS_LIBS_cygwin32 += DLPORTIO PlxApi setupapi
endif
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
iocxxxVX_DBD += xxx_Common.dbd
ifdef ALLEN_BRADLEY
xxx_LIBS_vxWorks += allenBradley
endif
ifdef VME
iocxxxVX_DBD += vmeVXSupport.dbd
xxx_LIBS_vxWorks += vme
endif
ifdef STD
iocxxxVX_DBD += stdVXSupport.dbd
endif
ifdef IP
iocxxxVX_DBD += ipVXSupport.dbd
endif
ifdef MCA
iocxxxVX_DBD += SIS38XXSupport.dbd
iocxxxVX_DBD += mcaCanberraSupport.dbd
xxx_LIBS_vxWorks += SIS38XX
xxx_LIBS_vxWorks += mcaCanberra
endif
ifdef IPUNIDIG
iocxxxVX_DBD += ipUnidigSupport.dbd
xxx_LIBS_vxWorks += ipUnidig
endif
ifdef DAC128V
iocxxxVX_DBD += dac128VSupport.dbd
xxx_LIBS_vxWorks += dac128V
endif
ifdef IP330
iocxxxVX_DBD += ip330Support.dbd
xxx_LIBS_vxWorks += ip330
endif
ifdef CAMAC
iocxxxVX_DBD += camacSupport.dbd
iocxxxVX_DBD += devCamacSupport.dbd
xxx_LIBS_vxWorks += camac devCamac
endif
ifdef ALLEN_BRADLEY
iocxxxVX_DBD += allenBradley.dbd
endif
ifdef QUADEM
iocxxxVX_DBD += drvAPS_EM.dbd
endif
ifdef LOVE
iocxxxVX_DBD += devLove.dbd
xxx_LIBS_vxWorks += love
endif
ifdef IPAC
iocxxxVX_DBD += tyGSOctal.dbd
iocxxxVX_DBD += drvIpac.dbd
xxx_LIBS_vxWorks += TyGSOctal Ipac
endif
ifdef ASYN
iocxxxVX_DBD += drvGsIP488.dbd
endif
ifdef SOFTGLUE
iocxxxVX_DBD += softGlueSupport.dbd
xxx_LIBS_vxWorks += softGlue
endif
ifdef MOTOR
iocxxxVX_DBD += devDeltaTau.dbd
iocxxxVX_DBD += devOms.dbd
xxx_LIBS_vxWorks += oms DeltaTau
endif
ifdef DEVIOCSTATS
iocxxxVX_DBD += devVxStats.dbd
endif
iocxxxLinux_DBD += xxx_Common.dbd
ifdef MCA
# If your host supports libpcap and libnet and you want to build Canberra network
# support, set LINUX_NET_INSTALLED to YES in <synApps>/configure/CONFIG_SITE.
ifeq ($(LINUX_NET_INSTALLED), YES)
iocxxxLinux_DBD += mcaCanberraSupport.dbd
xxx_LIBS_Linux += mcaCanberra
xxx_SYS_LIBS_Linux += net pcap
endif
ifdef DXP
# If your host supports parallel port or USB interfaces to Saturn DXP, set
# LINUX_USB_INSTALLED to YES in <synApps>/configure/CONFIG_SITE.
ifeq ($(LINUX_USB_INSTALLED), YES)
iocxxxLinux_DBD += dxpSupport.dbd
xxx_LIBS_Linux += dxp handel
xxx_SYS_LIBS_Linux += usb
endif
ifeq ($(OS_CLASS), Darwin)
DBD += iocxxxDarwin.dbd
iocxxxDarwin_DBD += xxx_Common.dbd
# <name>_registerRecordDeviceDriver.cpp will be created from <name>.dbd
xxx_SRCS_vxWorks += iocxxxVX_registerRecordDeviceDriver.cpp
rivers
committed
xxx_SRCS_Linux += iocxxxLinux_registerRecordDeviceDriver.cpp xxxMain.cpp
ifeq (win32-x86,$(findstring win32-x86, $(T_A)))
xxx_SRCS_WIN32 += iocxxxWin32_registerRecordDeviceDriver.cpp xxxMain.cpp
ifeq (windows-x64,$(findstring windows-x64, $(T_A)))
xxx_SRCS_WIN32 += iocxxxWin64_registerRecordDeviceDriver.cpp xxxMain.cpp
rivers
committed
xxx_SRCS_cygwin32 += iocxxxCygwin_registerRecordDeviceDriver.cpp xxxMain.cpp
xxx_SRCS_solaris += iocxxx_solaris_registerRecordDeviceDriver.cpp xxxMain.cpp
xxx_SRCS_Darwin += iocxxxDarwin_registerRecordDeviceDriver.cpp xxxMain.cpp
#The following adds support from base/src/vxWorks
xxx_OBJS_vxWorks += $(EPICS_BASE_BIN)/vxComLibrary
xxx_LIBS_vxWorks += $(xxx_Common_LIBS)
xxx_LIBS_Linux += $(xxx_Common_LIBS)
xxx_LIBS_solaris += $(xxx_Common_LIBS)
xxx_LIBS_cygwin32 += $(xxx_Common_LIBS)
xxx_LIBS_WIN32 += $(xxx_Common_LIBS)
xxx_LIBS_Darwin += $(xxx_Common_LIBS)
#===========================
include $(TOP)/configure/RULES
#----------------------------------------
# ADD RULES AFTER THIS LINE
$(COMMON_DIR)/iocxxxWin32Include.dbd: $(COMMON_DIR)/xxx_Common.dbd
$(COMMON_DIR)/iocxxxWin64Include.dbd: $(COMMON_DIR)/xxx_Common.dbd
$(COMMON_DIR)/iocxxxCygwinInclude.dbd: $(COMMON_DIR)/xxx_Common.dbd
$(COMMON_DIR)/iocxxxVXInclude.dbd: $(COMMON_DIR)/xxx_Common.dbd
$(COMMON_DIR)/iocxxxLinuxInclude.dbd: $(COMMON_DIR)/xxx_Common.dbd
$(COMMON_DIR)/iocxxxDarwinInclude.dbd: $(COMMON_DIR)/xxx_Common.dbd