Blame config/cf/ibm.cf

Packit b099d7
XCOMM platform:  $XConsortium: ibm.cf /main/80 1996/12/26 08:52:31 kaleb $
Packit b099d7
Packit b099d7
#ifndef OSName
Packit b099d7
# define OSName		DefaultOSName
Packit b099d7
#endif
Packit b099d7
#ifndef OSMajorVersion
Packit b099d7
# define OSMajorVersion	DefaultOSMajorVersion
Packit b099d7
#endif
Packit b099d7
#ifndef OSMinorVersion
Packit b099d7
# define OSMinorVersion	DefaultOSMinorVersion
Packit b099d7
#endif
Packit b099d7
#ifndef OSTeenyVersion
Packit b099d7
# ifdef DefaultOSTeenyVersion
Packit b099d7
#  define OSTeenyVersion	DefaultOSTeenyVersion
Packit b099d7
# elif (OSMajorVersion == 4) && (OSMinorVersion == 1)
Packit b099d7
#  define OSTeenyVersion	3
Packit b099d7
# else
Packit b099d7
#  define OSTeenyVersion	0
Packit b099d7
# endif
Packit b099d7
#endif
Packit b099d7
XCOMM operating system:  OSName (OSMajorVersion.OSMinorVersion.OSTeenyVersion)
Packit b099d7
Packit b099d7
#if OSMajorVersion > 3 || (OSMajorVersion == 3 && OSMinorVersion >= 2)
Packit b099d7
#define HasBSD44Sockets		YES
Packit b099d7
#define HasPutenv		YES
Packit b099d7
/*
Packit b099d7
 * If you do not have threads support installed, put
Packit b099d7
 * #define HasPosixThreads	NO
Packit b099d7
 * in the BeforeVendorCF section of your site.def.
Packit b099d7
 */
Packit b099d7
#if !defined(HasPosixThreads) && ((OSMajorVersion == 3 && (OSMinorVersion > 2 || (OSMinorVersion == 2 && OSTeenyVersion > 4))) || (OSMajorVersion == 4 && (OSMinorVersion > 1 || (OSMinorVersion == 1 && OSTeenyVersion > 1))))
Packit b099d7
#define HasPosixThreads		YES
Packit b099d7
#endif
Packit b099d7
#if HasPosixThreads
Packit b099d7
#ifndef ThreadedX
Packit b099d7
#define ThreadedX		YES
Packit b099d7
#define MTSafeAPIDefines	-DXUSE_MTSAFE_API -DXUSE_NETDB_R_API
Packit b099d7
#endif
Packit b099d7
#endif
Packit b099d7
#endif /* OS > 3.2 */
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * For IBM platforms, we must define both the location of the compiler
Packit b099d7
 * and the location of its standard C++ library.  The library location
Packit b099d7
 * is needed to resolve dependent library symbols if we build our own
Packit b099d7
 * C++ shared libraries.
Packit b099d7
 */
Packit b099d7
Packit b099d7
#if !HasGcc2ForCplusplus
Packit b099d7
# ifndef CplusplusCmd
Packit b099d7
#  if ThreadedX
Packit b099d7
#   define CplusplusCmd		xlC_r
Packit b099d7
#  else
Packit b099d7
#   define CplusplusCmd		xlC
Packit b099d7
#  endif
Packit b099d7
# endif
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef CplusplusFilt
Packit b099d7
# define CplusplusFilt		/usr/lpp/xlC/bin/c++filt
Packit b099d7
#endif
Packit b099d7
#ifndef CplusplusLibC
Packit b099d7
# if ThreadedX
Packit b099d7
#  define CplusplusLibC		/usr/lpp/xlC/lib/libC.a
Packit b099d7
# else
Packit b099d7
#  define CplusplusLibC		/usr/lpp/xlC/lib/libC_r.a
Packit b099d7
# endif
Packit b099d7
#endif
Packit b099d7
#if !HasGcc2ForCplusplus
Packit b099d7
# ifndef CplusplusDependIncludes
Packit b099d7
#  define CplusplusDependIncludes -I/usr/lpp/xlC/include
Packit b099d7
# endif
Packit b099d7
#endif
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * IBM's xlC refuses to compile files unless their names end in ".C".
Packit b099d7
 * As an alternative to this fix, one could edit /etc/xlC.cfg
Packit b099d7
 * to change the suffix accepted by the compiler, but we prefer not 
Packit b099d7
 * requiring users to reconfigure their C++ compilers to make them work.
Packit b099d7
 * We also have to override the default SUFFIXES to defeat the use of
Packit b099d7
 * the builtin .C -> .o file, which doesn't use the right flags.
Packit b099d7
 */
Packit b099d7
Packit b099d7
.SUFFIXES:
Packit b099d7
.SUFFIXES: .o .c .y .l .s .sh .h .f .Y .L .cxx
Packit b099d7
Packit b099d7
#define NormalLibObjCplusplusCompile(options) test -r $*.C || $(LN) $*.CCsuf $*.C @@\
Packit b099d7
	$(CXX) -c $(CXXFLAGS) options $*.C
Packit b099d7
Packit b099d7
#define SpecialCplusplusObjectRule(baseobj,basedep,options)		@@\
Packit b099d7
baseobj.Osuf:	basedep.CCsuf						@@\
Packit b099d7
	test -r basedep.C || $(LN) basedep.CCsuf basedep.C		@@\
Packit b099d7
	$(CXX) -c $(CXXFLAGS) options basedep.C
Packit b099d7
Packit b099d7
Packit b099d7
#define BuildLibPathVar		LIBPATH
Packit b099d7
#define SystemV			YES
Packit b099d7
#define LdCombineFlags		-r
Packit b099d7
#define ExecableScripts		YES
Packit b099d7
#define Malloc0ReturnsNull	YES
Packit b099d7
#define CppCmd			/usr/ccs/lib/cpp
Packit b099d7
#define ExpandManNames		YES
Packit b099d7
#define ExtensionOSDefines	-DXTESTEXT1
Packit b099d7
#define XibmServer		YES
Packit b099d7
#define ibmIncludeSKYWAY	YES
Packit b099d7
Packit b099d7
/* IBM cpp has slightly non-standard line directives, but supports -P */
Packit b099d7
#define CppNoLineInfoOption	-P
Packit b099d7
Packit b099d7
#if OSMajorVersion > 3
Packit b099d7
#define StandardDefines		-DSYSV -DAIXV3 -DAIXV4 -D_ALL_SOURCE
Packit b099d7
#define XawI18nDefines		-DHAS_WCHAR_H -DHAS_ISW_FUNCS
Packit b099d7
#define ServerExtraDefines	-D_IBM_LFT
Packit b099d7
#if ThreadedX
Packit b099d7
#define CcCmd			xlc_r
Packit b099d7
#else
Packit b099d7
#define CcCmd			xlc
Packit b099d7
#endif
Packit b099d7
#define SystemMTDefines		/* xlc_r defines -D_THREAD_SAFE */
Packit b099d7
#define ThreadsLibraries	-lpthreads /* xlc_r does -lc_r */
Packit b099d7
#define ThreadsCplusplusLibraries	-lpthreads
Packit b099d7
#define AvoidNullMakeCommand	YES
Packit b099d7
#define NullMakeCommand		@ echo
Packit b099d7
/* AIX 4 appends all MAKEFLAGS (even dups), so cannot pass on command line. */
Packit b099d7
#define ConstructMFLAGS		NO
Packit b099d7
#define LdPreLib		_Use(-L$(USRLIBDIR),-L$(BUILDLIBDIR))
Packit b099d7
#define ExtraFilesToClean	*.inp
Packit b099d7
#else 	/* OSMajorVersion < 4 */
Packit b099d7
#define StandardDefines         -DSYSV -DAIXV3 -D_ALL_SOURCE
Packit b099d7
#define ServerExtraDefines	-D_IBM_HFT
Packit b099d7
#define CcCmd			xlc
Packit b099d7
#define ThreadPreStdAPIDefines	-DXPRE_STANDARD_API
Packit b099d7
#define SystemMTDefines		-D_THREAD_SAFE
Packit b099d7
#define ThreadsLibraries	-lpthreads -lc_r
Packit b099d7
#endif	/* OSMajorVersion */
Packit b099d7
Packit b099d7
#define OPERATING_SYSTEM 	AIX /* directory name under server/ddx/ibm/ */
Packit b099d7
#define InstallCmd              /usr/ucb/install
Packit b099d7
#include <ibmLib.rules>
Packit b099d7
Packit b099d7
#ifndef ManKeywordsTarget
Packit b099d7
#define ManKeywordsTarget(manpath)					@@\
Packit b099d7
man_keywords::								@@\
Packit b099d7
	/usr/lib/makewhatis $(DESTDIR)manpath
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define DtMailDefines		\
Packit b099d7
  -DI_HAVE_NO_BOOL -DI_HAVE_SELECT_H \
Packit b099d7
  -DBIG_ENDIAN -DSTRCASECMP_NOT_DEFINED -DDO_ANONYMOUS_MAP -DSENDMAIL_LOCKS \
Packit b099d7
  -DMAILGROUP_REQUIRED -DMAIL_SPOOL_PATH=\"/var/spool/mail/%s\"
Packit b099d7
Packit b099d7
#define ArchitectureDefines	-DIBM_ARCHITECTURE
Packit b099d7
Packit b099d7
#define ExportListGenSource	elistgen.ibm
Packit b099d7
Packit b099d7
#define CdeProjectDefines \
Packit b099d7
	-D_AIX -D__AIX -D__aix -D_aix -Daix -DMULTIBYTE -DNLS16 -DMESSAGE_CAT \
Packit b099d7
	-DOSMAJORVERSION=OSMajorVersion -DOSMINORVERSION=OSMinorVersion -DAIX
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * -D__STR31__ disables inlining of memcpy to work around optimization bug
Packit b099d7
 * in XLC v1.2.0.7. Bug report filed as PMR 8X196, branch 060.
Packit b099d7
 */
Packit b099d7
#ifndef OptimizedCDebugFlags
Packit b099d7
#define OptimizedCDebugFlags	-O -D__STR31__ -DNDEBUG
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define CdeTicDefines	-DHAS_KNL -DHAS_KTAB