1#ident "@(#)cc-pcc.rul	1.12 21/04/28 "
2###########################################################################
3# Written 2010-2018 by J. Schilling
4###########################################################################
5#
6# Platform independent MACROS for PCC
7#
8###########################################################################
9# Copyright (c) J. Schilling
10###########################################################################
11# The contents of this file are subject to the terms of the
12# Common Development and Distribution License, Version 1.0 only
13# (the "License").  You may not use this file except in compliance
14# with the License.
15#
16# See the file CDDL.Schily.txt in this distribution for details.
17# A copy of the CDDL is also available via the Internet at
18# http://www.opensource.org/licenses/cddl1.txt
19#
20# When distributing Covered Code, include this CDDL HEADER in each
21# file and include the License file CDDL.Schily.txt from this distribution.
22###########################################################################
23
24CPP_FLAGS=	-DSCHILY_BUILD $(CPPOPTS) $(CPPOPTX) $(OSINCDIRS:%=-I%) $(OSDEFS) $(OSDEFSX)
25C_FLAGS=	$(COPTS) $(CWARNOPTS) $(COPTOPT) $(GCCOPTOPT) $(COPTX)
26C++FLAGS=	$(C++OPTS) $(C++WARNOPTS) $(C++OPTOPT) $(G++OPTOPT) $(C++OPTX)
27
28CPPOPTS=	-I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(INCDIRSX:%=-I%)
29COPTS=
30#		-Wtraditional now causes more pain than it helps
31#*CWOPTS=		-Wall -Wtraditional
32#*CWOPTS=		-Wall -Wno-unknown-pragmas \
33#*		-Wshadow -Wmissing-prototypes -Wstrict-prototypes
34COPTOPT=	-O
35COPTDYN=	-fpic
36COPTGPROF=	-pg
37C++OPTS=
38C++WOPTS=	$(CWOPTS)
39C++OPTOPT=	$(COPTOPT)
40C++OPTDYN=	-fpic
41C++OPTGPROF=	-pg
42
43LIB_PREFIX=	lib
44LIB_SUFFIX=	.a
45SHL_SUFFIX=	.so.$(DYNMAJOR)
46
47LIB_C=		-lc
48
49LIBS_PATH=	-L$(OLIBSDIR)
50LIBS_PATH_STATIC= -L$(OLIBSDIR_STATIC)
51
52LDFLAGS=	$(LDOPTS) $(LDOPTX)
53LDLIBS=		$(LIBS) $(LIBX)
54
55LDOPTS=		$(LIBS_PATH) $(LDPATH) $(RUNPATH:-R%=-Wl,-R%)
56LDOPTDYN=	-shared -Wl,-soname,$(TARGET)
57LNDYNLIB=	$(NOECHO)$(RM) $(RM_FORCE) $(PTARGET_BASE).so; $(SYMLINK) $(TARGET) $(PTARGET_BASE).so
58
59FLOAT_OPTIONS=
60
61__CC_COM=	$(_UNIQ)$(CC)
62___CC_COM=	$(__CC_COM:$(_UNIQ)=$(CC_COM_DEF))
63CC_COM=		$(___CC_COM:$(_UNIQ)%=%)
64
65__CC++_COM=	$(_UNIQ)$(CCC)
66___CC++_COM=	$(__CC++_COM:$(_UNIQ)=$(CC++_COM_DEF))
67CC++_COM=	$(___CC++_COM:$(_UNIQ)%=%)
68
69CC_COM_DEF=	pcc
70CC++_COM_DEF=	p++
71CC=		$(CC_COM_DEF)
72CCC=		$(CC++_COM_DEF)
73
74CCCC=		$(NOECHO)echo "	==> COMPILING \"$@\""; $(CC_COM)
75CC++ =		$(NOECHO)echo "	==> COMPILING \"$@\""; $(CC++_COM)
76LDCC=		$(NOECHO)echo "	==> LINKING \"$@\""; $(CC_COM)
77LDCC++ =	$(NOECHO)echo "	==> LINKING \"$@\""; $(CC++_COM)
78DYNLD=		$(NOECHO)echo "	==> LINKING dynamic library \"$@\""; $(CC_COM)
79DYNLDC++ =	$(NOECHO)echo "	==> LINKING dynamic library \"$@\""; $(CC++_COM)
80
81RMDEP=		:
82MKDEP=		$(NOECHO)echo "	==> MAKING DEPENDENCIES \"$@\""; $(RMDEP); $(CC_COM) -M
83MKDEP_OUT=
84MKC++DEP=	$(NOECHO)echo "	==> MAKING DEPENDENCIES \"$@\""; $(RMDEP); $(CC++_COM) -M
85MKC++DEP_OUT=
86