# # Name: Makehead.linux-kylix # # Purpose: This file is used to customize operating system and installation # dependent features of the MX makefiles. This version is customized # for Borland Kylix 3 under Linux. # # Normally, the only things that end users may have to modify in this file are # the definitions of INCLUDES, LIB_DIRS, and LIBRARIES. # INCLUDES = $(MX_INCLUDES) #INCLUDES = $(MX_INCLUDES) -I/usr/local/include LIB_DIRS = -L$(MX_LIB_DIR) LIBRARIES = -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(EPICS_LIB_DIRS) #LIBRARIES = $(EPICS_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(NI_VISA_LIB_DIRS) #LIBRARIES = $(NI_VISA_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(SIS3100_LIB_DIRS) #LIBRARIES = $(SIS3100_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(NI488_LIB_DIRS) #LIBRARIES = $(NI488_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(XIA_HANDEL_LIB_DIRS) #LIBRARIES = $(XIA_HANDEL_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(NI488_LIB_DIRS) $(EPICS_LIB_DIRS) #LIBRARIES = $(NI488_LIBRARIES) $(EPICS_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(SIS3100_LIB_DIRS) $(EPICS_LIB_DIRS) #LIBRARIES = $(SIS3100_LIBRARIES) $(EPICS_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(XIA_HANDEL_LIB_DIRS) $(EPICS_LIB_DIRS) #LIBRARIES = $(XIA_HANDEL_LIBRARIES) $(EPICS_LIBRARIES) -lm #LIB_DIRS = -L$(MX_LIB_DIR) $(NI_VISA_LIB_DIRS) $(EPICS_LIB_DIRS) \ # $(XIA_HANDEL_LIB_DIRS) #LIBRARIES = $(NI_VISA_LIBRARIES) $(EPICS_LIBRARIES) \ # $(XIA_HANDEL_LIBRARIES) -lm # # Motor will be linked with the bundled copy of 'editline' if you use the # following definitions. # READLINE_LIB_DIRS = -L../tools/unix/src/editline READLINE_LIBRARIES = -ledit # # If you prefer to link motor to GNU Readline instead, uncomment the # following definitions. # #READLINE_LIB_DIRS = #READLINE_LIBRARIES = -lreadline -lncurses # # You may also need to modify some of the following definitions, depending # on the drivers you plan to use. # # NI488_LIB_DIR = -L/usr/local/lib NI488_LIBRARIES = -lgpibenet #NI488_LIBRARIES = -lgpib # LLP_GPIB_INCLUDES = -I/usr/local/include/gpib LLP_GPIB_LIB_DIR = -L/usr/local/lib LLP_GPIB_LIBRARIES = -lgpib -lfl # NI_VISA_DIR = /usr/local/vxipnp/linux NI_VISA_INCLUDES = -I$(NI_VISA_DIR)/include -DIS_MX_DRIVER NI_VISA_LIB_DIRS = -L$(NI_VISA_DIR)/lib NI_VISA_LIBRARIES = -lvisa # SIS3100_DIR = /usr/local/src/sis1100/V1.0/sis3100_calls SIS3100_INCLUDES = -I$(SIS3100_DIR) -DIS_MX_DRIVER SIS3100_LIB_DIRS = -L$(SIS3100_DIR) SIS3100_LIBRARIES = -l_sis3100 # LABPC_INCLUDES = # I8255_INCLUDES = # AM9513_INCLUDES = # LINUX_PORTIO_INCLUDES = -I/usr/local/include # LINUX_IOPL_FLAGS = # XIA_HANDEL_DIR = /home/lavender/xia/handel XIA_HANDEL_INCLUDES = -I$(XIA_HANDEL_DIR) -DIS_MX_DRIVER XIA_HANDEL_LIB_DIRS = -L$(XIA_HANDEL_DIR) XIA_HANDEL_LIBRARIES = -lhandel -lxerxes # # EPICS includes and libraries. # EPICS_ARCH = Linux EPICS_TOP = /usr/local/epics EPICS_INCLUDES = -I$(EPICS_TOP)/base/include EPICS_LIB_DIRS = -L$(EPICS_TOP)/base/lib/$(EPICS_ARCH) EPICS_LIBRARIES = -lca -lCom # #======================================================================== # # Generally, you should not have to modify anything after this point. # KYLIXFLAGS = -q -w -w! -w-aus -w-bbf -w-ccc -w-csu -w-par -w-rch -w-sig -w-use # Intel x86 with Kylix 3.0 under Linux 2.4.18 (Debian 3.0) # CC = bc++ CFLAGS = $(KYLIXFLAGS) $(INCLUDES) -DOS_LINUX \ $(EXTRA_FLAGS) $(HWTYPE_FLAGS) -DDEBUG CFLAGS_EPICS = $(CFLAGS) # Special cases for individual files. CFLAGS_MX_EPICS = $(CFLAGS_EPICS) CFLAGS_MX_VERS = $(CFLAGS) -DMX_MAJOR_VERSION=$(MX_MAJOR_VERSION) \ -DMX_MINOR_VERSION=$(MX_MINOR_VERSION) \ -DMX_UPDATE_VERSION=$(MX_UPDATE_VERSION) COMPILE = $(CC) -c LINK = bc++ DEFINE = -D MAKEDEPEND = bc++ -m $(CFLAGS) $(READLINE_INCLUDES) \ $(EPICS_INCLUDES) $(NI_VISA_INCLUDES) $(SIS3100_INCLUDES) \ $(XIA_HANDEL_INCLUDES) *.c > Makefile.depend MAKEDEPEND_CLEAN = cp /dev/null Makefile.depend # #--------------------------------------------------- # # See libMx/Makehead.irix for why this is here. # MX_LIB_OBJS = $(MX_LIB_SRCS:.c=.$(OBJ)) MOTOR_OBJS = $(MOTOR_SRCS:.c=.$(OBJ)) SERVER_OBJS = $(SERVER_SRCS:.c=.$(OBJ)) UPDATE_OBJS = $(UPDATE_SRCS:.c=.$(OBJ)) MXDRIVERINFO_OBJS = $(MXDRIVERINFO_SRCS:.c=.$(OBJ)) # #--------------------------------------------------- # RM = rm -f MAKE = make MKDIR = mkdir OBJ = o # #--------------------------------------------------- # MX_LIB_DIR = ../libMx MX_INC_DIR = $(MX_LIB_DIR) MX_INCLUDES = -I$(MX_INC_DIR) MX_LIBRARY_NAME = libMx.a MX_LIBRARY_PATH = $(MX_LIB_DIR)/$(MX_LIBRARY_NAME) MX_LIBRARY_DELETE = rm $(MX_LIBRARY_NAME) $(MX_LIBRARY_NAME): $(MX_LIB_OBJS) -$(MX_LIBRARY_DELETE) ar rcs libMx.a $(MX_LIB_OBJS) ranlib libMx.a library_install: -mkdir $(MX_INSTALL_DIR)/bin -mkdir $(MX_INSTALL_DIR)/etc -mkdir $(MX_INSTALL_DIR)/etc/startup -mkdir $(MX_INSTALL_DIR)/include -mkdir $(MX_INSTALL_DIR)/lib -mkdir $(MX_INSTALL_DIR)/log -mkdir $(MX_INSTALL_DIR)/run -mkdir $(MX_INSTALL_DIR)/sbin -mkdir $(MX_INSTALL_DIR)/state install -m 644 mx*.h $(MX_INSTALL_DIR)/include install -m 644 $(MX_LIBRARY_NAME) $(MX_INSTALL_DIR)/lib install -m 644 libMx.a $(MX_INSTALL_DIR)/lib touch $(MX_INSTALL_DIR)/etc/motor.dat touch $(MX_INSTALL_DIR)/etc/scan.dat install -m 755 ../plotgnu/plotgnu.pl $(MX_INSTALL_DIR)/bin install -m 755 ../plotgnu/showdata $(MX_INSTALL_DIR)/bin install -m 755 ../plotgnu/showplot $(MX_INSTALL_DIR)/bin install -m 755 ../plotgnu/plot2ps $(MX_INSTALL_DIR)/bin # #--------------------------------------------------- # MOTOR_NAME = motor.static $(MOTOR_NAME): $(MOTOR_OBJS) $(MX_LIBRARY_PATH) $(LINK) -o $(MOTOR_NAME) $(MOTOR_OBJS) \ $(LIB_DIRS) ../libMx/libMx.a $(LIBRARIES) \ ../tools/unix/src/editline/libedit.a -lm motor_install: install -m 755 $(MOTOR_NAME) $(MX_INSTALL_DIR)/bin install -m 755 ../scripts/motor $(MX_INSTALL_DIR)/bin install -m 755 ../scripts/motor_xterm $(MX_INSTALL_DIR)/bin ( cd $(MX_INSTALL_DIR)/bin ; ln -sf $(MOTOR_NAME) motor.shared ) # #--------------------------------------------------- # SERVER_NAME = mxserver $(SERVER_NAME): $(SERVER_OBJS) $(MX_LIBRARY_PATH) $(LINK) -o $(SERVER_NAME) $(SERVER_OBJS) \ $(LIB_DIRS) ../libMx/libMx.a $(LIBRARIES) server_install: install -m 755 $(SERVER_NAME) $(MX_INSTALL_DIR)/sbin install -m 755 ../scripts/startmxserver $(MX_INSTALL_DIR)/sbin install -m 755 ../scripts/mx $(MX_INSTALL_DIR)/sbin touch $(MX_INSTALL_DIR)/etc/mxserver.dat touch $(MX_INSTALL_DIR)/etc/mxserver.acl # #--------------------------------------------------- # UPDATE_NAME = mxupdate $(UPDATE_NAME): $(UPDATE_OBJS) $(MX_LIBRARY_PATH) $(LINK) -o $(UPDATE_NAME) $(UPDATE_OBJS) \ $(LIB_DIRS) ../libMx/libMx.a $(LIBRARIES) update_install: install -m 755 $(UPDATE_NAME) $(MX_INSTALL_DIR)/sbin install -m 755 ../scripts/startmxupdate $(MX_INSTALL_DIR)/sbin touch $(MX_INSTALL_DIR)/etc/mxupdate.dat # #--------------------------------------------------- # MXDRIVERINFO_NAME = mxdriverinfo $(MXDRIVERINFO_NAME): $(MXDRIVERINFO_OBJS) $(MX_LIBRARY_PATH) $(LINK) -o $(MXDRIVERINFO_NAME) \ $(MXDRIVERINFO_OBJS) $(LIB_DIRS) ../libMx/libMx.a $(LIBRARIES) mxdriverinfo_install: install -m 755 $(MXDRIVERINFO_NAME) $(MX_INSTALL_DIR)/bin