cdrtools/RULES/cc-bemwcc.rul
2025-06-15 04:19:58 +08:00

118 lines
3.7 KiB
Plaintext

#ident @(#)cc-bemwcc.rul 1.17 17/05/28
###########################################################################
# Written 1996-2017 by J. Schilling
###########################################################################
#
# Platform dependent MACROS for BeOS mwcc
#
###########################################################################
# Copyright (c) J. Schilling
###########################################################################
# The contents of this file are subject to the terms of the
# Common Development and Distribution License, Version 1.0 only
# (the "License"). You may not use this file except in compliance
# with the License.
#
# See the file CDDL.Schily.txt in this distribution for details.
# A copy of the CDDL is also available via the Internet at
# http://www.opensource.org/licenses/cddl1.txt
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file CDDL.Schily.txt from this distribution.
###########################################################################
CPPFLAGS= -DSCHILY_BUILD $(CPPOPTS) $(CPPOPTX) $(OSINCDIRS:%=-I%) $(OSDEFS) $(OSDEFSX)
CFLAGS= $(COPTS) $(CWARNOPTS) $(COPTOPT) $(BEMWCOPTOPT) $(COPTX)
C++FLAGS= $(C++OPTS) $(C++WARNOPTS) $(C++OPTOPT) $(BEMWC++OPTOPT) $(C++OPTX)
#
# XXX Old BeOS needs libroot.so to get [efg]cvt()
# XXX New BeOS seems to have this in libc and in addition we include
# XXX strtod.c for floating point conversion on OS without such code.
# XXX For this reason, -DNO_FLOATINGPOINT -DUSE_FLOATINGARGS has been
# XXX removed and printing floating numbers will work with old/new BeOS
#
#OSDEFS += -DNO_FLOATINGPOINT -DUSE_FLOATINGARGS
#
# XXX This is used by bemac-beos-cc.rul
#
CPPOPTS= -O4 -g -i- -I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(INCDIRSX:%=-I%)
#
# XXX This is used by bemac-beos-mwcc.rul
#
CPPOPTS= -relax_pointers -opt all -sym on -g -i- -I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(INCDIRSX:%=-I%)
#
# XXX This is used by powerpc-beos-mwcc.rul
#
CPPOPTS= -relax_pointers -opt global -sym on -g -i- -I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(INCDIRSX:%=-I%)
CPPOPTS= -I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(INCDIRSX:%=-I%)
COPTS=
CWOPTS= -w8
COPTOPT= -opt off
COPTDYN= #-fpic
COPTGPROF= #-pg
C++OPTS=
C++WOPTS=
#C++OPTOPT= -O
#C++OPTDYN= -Kpic
#C++OPTGPROF= -xpg
LIB_PREFIX= lib
LIB_SUFFIX= .a
SHL_SUFFIX= .so
LIB_C= -lc
LIBS_PATH= -L$(OLIBSDIR)
LIBS_PATH_STATIC= -L$(OLIBSDIR_STATIC)
LDFLAGS= $(LDOPTS) $(LDOPTX)
LDLIBS= $(LIBS) $(LIBX)
#LDOPTS= $(LIBS_PATH) $(LDPATH) $(RUNPATH)
#
# XXX This is used by powerpc-beos-mwcc.rul
#
LDOPTS= -multidefs -sym on -g $(LIBS_PATH) $(LDPATH)
LDOPTS= -multidefs -msg nodup -sym on -g $(LIBS_PATH) $(LDPATH)
LDOPTDYN=# -shared -Wl,-soname,$(TARGET)
LNDYNLIB= @$(RM) $(RM_FORCE) $(PTARGET_BASE).so; $(SYMLINK) $(TARGET) $(PTARGET_BASE).so
FLOAT_OPTIONS=
__CC_COM= $(_UNIQ)$(CC)
___CC_COM= $(__CC_COM:$(_UNIQ)=$(CC_COM_DEF))
CC_COM= $(___CC_COM:$(_UNIQ)%=%)
__CC++_COM= $(_UNIQ)$(CCC)
___CC++_COM= $(__CC++_COM:$(_UNIQ)=$(CC++_COM_DEF))
CC++_COM= $(___CC++_COM:$(_UNIQ)%=%)
CC_COM_DEF= mwccppc
CC++_COM_DEF= echo "C++ not yet supported"; exit -1; :
#
# Use to comment out C++ projects
#
C++BUILD= $(NUMBER_SIGN)
CC= $(CC_COM_DEF)
CCC= $(CC++_COM_DEF)
CCCC= @echo " ==> COMPILING \"$@\""; $(CC_COM)
LDCC= @echo " ==> LINKING \"$@\""; $(CC_COM)
DYNLD= @echo " ==> LINKING dynamic library \"$@\""; $(CC_COM)
RMDEP= :
MKDEP= @echo " ==> MAKING DEPENDENCIES \"$@\""; $(RMDEP); $(CC_COM) -make
MKDEP_OUT=
CC++ = @echo " ==> COMPILING \"$@\""; $(CC++_COM)
LDCC++ = @echo " ==> LINKING \"$@\""; $(CC++_COM)
DYNLDC++ = @echo " ==> LINKING dynamic library \"$@\""; $(CC++_COM)
MKC++DEP= @echo " ==> MAKING DEPENDENCIES \"$@\""; $(RMDEP); $(CC++_COM) # -make?
MKC++DEP_OUT=