# The contents of this file are subject to the Interbase Public # License Version 1.0 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy # of the License at http://www.Inprise.com/IPL.html # # Software distributed under the License is distributed on an # "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express # or implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code was created by Inprise Corporation # and its predecessors. Portions created by Inprise Corporation are # Copyright (C) Inprise Corporation. # # All Rights Reserved. # Contributor(s): __Konstantin Kuznetsov___________________________________. # This file can be used to build FB on Solaris 8 x 86 with gcc 2.95 and bash # # Use SOLX86 to identify x86 version of Solaris. Neil McCalden # .SUFFIXES: .c .e .e.c: $(GPRE) $(GPRE_FLAGS) $< .SUFFIXES: .j .bin .o .c .c.o: $(CC) -c $(CFLAGS) $(VERSION_FLAG) $< .c.j: $(CC) -c $(PIC_J_CFLAGS) $(VERSION_FLAG) -o $*_j.o $< mv $*_j.o $*.j .c.bin: $(CC) -c $(PIC_FLAGS) $(VERSION_FLAG) -o $*_temp.o $< mv $*_temp.o $*.bin PROD_DEBUG_OBJECTS= nodebug.o PROD_SHRLIB_DIR= -L source/jrd -L source/interbase/lib PROD_VERSION_FLAG= -DPROD_BUILD PROD_CFLAGS= -O1 -mpentium #NOTE: -O is equivilant to -O2 # Level 2 optimization resulted in isql dropping core during SELECT when # SET TIME option was on. This was with 4.2 compilier built on so-build2 # running solaris 2.6. As a quick-fix the level was changed from -O to -xO1 DEV_DEBUG_OBJECTS= grammar.o dbg.o dbt.o dmp.o DEV_SHRLIB_DIR= -L source/jrd -L source/interbase/lib DEV_VERSION_FLAG= -DDEV_BUILD DEV_CFLAGS= DEBUG_OBJECTS= $($(VERSION)_DEBUG_OBJECTS) SHRLIB_DIR= $($(VERSION)_SHRLIB_DIR) VERSION_FLAG= $($(VERSION)_VERSION_FLAG) CFLAGS_COMMON= $($(VERSION)_CFLAGS) -DSOLARIS -DSOLARIS26 -DSOLARIS_MT -DSOLX86 -DBSD_COMP -DEXACT_NUMERICS -Isource/interbase/include -w CFLAGS= $(CFLAGS_COMMON) $(SUPER_FLAG) PIC_J_CFLAGS= $(CFLAGS_COMMON) -DPIPE_IS_SHRLIB -fPIC SPECIAL_OBJECTS= j UDF_LINK_CMD= cc UDF_CFLAGS= -fPIC UDF_LFLAGS= -G -Bsymbolic UDF_SHRLIBS= -lm -lc SHRLIB_EXT= .so # Purify related flags PFLAGS = -messages=first -leaks-at-exit=yes PDIR = `purify -print-home-dir` PURIFY = purify $(PFLAGS) PSTUBS = $(PDIR)/purify_stubs.a # Quantify related flags QFLAGS = QDIR = `quantify -print-home-dir` QUANTIFY = quantify $(QFLAGS) QSTUBS = $(QDIR)/quantify_stubs.a #NOTE: PIC_J_CFLAGS is special CFLAGS used to build PIPD_IS_SHRLIB modules # to workaround the Solaris threading problems with signals #NOTE: -Xt is ANSI C transition mode (default) # -DBDS_COMP is for BSD Compatibility package and is used in ACCESS_METHOD= gdslib.solaris pipe BACKEND_BRIDGE_MISC= head5.o allp.o BIN_PATH= /netapp/apps/isc/bin BRIDGE_MISC= head5.o allp.o CHMOD_VAL= 666 DSQL_P_OBJS= dsql_p_objects FORM_OBJECTS= form.o FORM_TRN_OBJECTS= form_trn.o FRED= fred FUNCTIONS= functions.bin GDS_LINK= $(GDSSHR_LINK) GDS_PYXIS= gds_pyxis.a GDSLIB_BACKEND= source/jrd/gds_b.a # add -lgen to build on solaris before 2.6 GDSLIB_LINK= -Lsource/jrd -lgds_b -lsocket -lnsl -lthread -ldl GDSSHR= source/interbase/lib/gdsmt.so.0 SOL_GDSSHR= $(GDSSHR) # add -lgen to build on solaris before 2.6 GDSSHR_LINK= $(SHRLIB_DIR) -lgdsmt -lgds_pyxis -lthread PIPE_GDSSHR= source/interbase/lib/gds.so.0 # add -lgen to build on solaris before 2.6 PIPE_GDSSHR_LINK= $(SHRLIB_DIR) -lgds -lgds_pyxis HLPDIR= source/qli/ HOSTNAME= .`uname -n` INCLUDES= include_so include_so_ada INTL= intl INTL_CFLAGS= $(CFLAGS) INTL_LD_LINE= ld -G -o gdsintl INTL_PIC_FLAGS= $(PIC_FLAGS) INTL_TARGET= intl_shr_objs IO_OBJECTS= unix.o $(STDIO) IO_P_OBJECTS= unix.bin $(STDIO_P_OBJ) JRD_MISC_OBJECTS= source/jrd/sun_ftn.o JRD_J_MISC_OBJECTS= source/jrd/sun_ftn.j JRD_P_MISC_OBJECTS= source/jrd/sun_ftn.bin source/jrd/nodebug.bin LANG_OBJECTS= ada.o ftn.o cob.o LANGUAGES= cc cxx ada sun_ada microfocus_cob make16 gdl1 sun_ftn LD_LIBS= -lsocket -lnsl -lthread -ldl -lm LD_LIBS_J= -lsocket -lnsl -ldl LD_OPTS= -G -h LOCK_JRD_MISC= source/jrd/thd.o LOCK_MANAGER= ## no manager KLK MARION_DB= -d source/marion.gdb MUISQL= muisql MUISQL_MU_LIB= -L /usr/gds.sogood/qa_tools/lib -lmu MUISQL_LINK_OPTS= $(MUISQL_MU_LIB) $(PIPE_GDSSHR_LINK) -lm PIC_FLAGS= $(CFLAGS) -fPIC PIPE= gds.a.solaris gds_pipe SCREEN_LIBS= -lcurses -ltermlib CURSES_LIB= $(SCREEN_LIBS) PYXIS= pyxis PYXIS_MISC_OBJS= $(PYXIS_MISC) PYXIS_P_MISC_OBJS= $(PYXIS_P_MISC) PYXIS_OBJECTS= pyxis_objects PYXIS_MISC_OBJECTS= $(PYXDIR)cdm.o $(PYXDIR)vt100.o $(PYXDIR)sun_ftn_pyxis.o REG_HELP= isc_ins_hlp.dat REMOTE_GDSSHR= $(GDSSHR) REMOTE_GDSSHR_LINK= $(SERVER_LINK) REMOTE_P_OBJS= rem_p_objects SERVER_LINK= $(GDSSHR_LINK) SETUP_ISC_LOCAL= ISC_USER=sysdba; ISC_PASSWORD=masterkey; export ISC_USER ISC_PASSWORD; SETUP_ISC_REMOTE= ISC_USER=sysdba; ISC_PASSWORD=masterkey; export ISC_USER ISC_PASSWORD; SPECIAL_OPT= source/special_opt SO_NETWORK_LIB= -lnsl SO_SOCKET_LIB= -lsocket SO_THREAD_LIB= -lthread SO_SUPER_GDSSHR= source/interbase/lib/gdsmt.so.1 STDIO= source/jrd/ib_stdio.o STDIO_P_OBJ= source/jrd/ib_stdio.bin SUPER_CLIENT_GDSSHR= $(SO_SUPER_GDSSHR) SUPER_BACKEND= source/jrd/gds_ss.a # add -lgen to build on solaris before 2.6 SUPER_LINK= -Lsource/jrd -lgds_ss -lsocket -lnsl -lthread -ldl SUPER_SERVER= UTILITIES= WAL_P_OBJS= wal_p_objects SUPER_SERVER_DEST= source/interbase/bin/ibserver INET_SERVER_DEST= source/interbase/bin/gds_inet_server DNET_SERVER_DEST= source/interbase/bin/gds_dnet_server AMBX_SERVER_DEST= source/interbase/bin/gds_server INET_LIB_DEST= source/interbase/lib/gds_inet_server.a DNET_LIB_DEST= source/interbase/lib/gds_dnet_server.a SH= sh -c RM= rm -f CHMOD= chmod CHMOD_6= chmod 666 CHMOD_7= chmod 777 CHMOD_S7= chmod 06777 MV= mv -f TOUCH= touch CP= cp ECHO= echo QUIET_ECHO= @echo CD= cd CAT= cat AR= ar r EXPAND_DBNAME= @echo No need to expand... COMPRESS_DBNAME= @echo No need to compress... ARCH_EXT= .a EXEC_EXT= V3PRINTER= source/lock/printv3.o # End of file prefix.solaris: $(VERSION) $(PLATFORM)