source: trunk/third/motif/config/Imake.tmpl @ 12423

Revision 12423, 21.8 KB checked in by ghudson, 26 years ago (diff)
Linux and NetBSD support, from source-sipb.
Line 
1#ifndef XCOMM
2#define XCOMM #
3#endif
4XCOMM
5XCOMM (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC.
6XCOMM ALL RIGHTS RESERVED
7XCOMM
8XCOMM
9XCOMM Motif Release 1.2
10XCOMM
11XCOMM   $RCSfile: Imake.tmpl,v $ $Revision: 1.2 $ $Date: 1999-01-30 03:43:12 $
12/*
13 * generic imake template
14 */
15
16XCOMM -------------------------------------------------------------------------
17XCOMM Makefile generated from IMAKE_TEMPLATE and INCLUDE_IMAKEFILE
18XCOMM $XConsortium: Imake.tmpl,v 1.139 91/09/16 08:52:48 rws Exp $
19XCOMM
20XCOMM Platform-specific parameters may be set in the appropriate <vendor>.cf
21XCOMM configuration files.  Site-specific parameters should be set in the file
22XCOMM site.def.  Full rebuilds are recommended if any parameters are changed.
23XCOMM
24XCOMM If your C preprocessor does not define any unique symbols, you will need
25XCOMM to set BOOTSTRAPCFLAGS when rebuilding imake (usually when doing
26XCOMM "make World" the first time).
27XCOMM
28
29#define YES     1
30#define NO      0
31
32
33/*
34 * To add support for another platform:
35 *
36 *     1.  Identify a machine-specific cpp symbol.  If your preprocessor
37 *         does not have any built in, you will need to add the symbol to the
38 *         cpp_argv table in config/imakemdep.h and rebuild imake with the
39 *         BOOTSTRAPCFLAGS variable set (see the macII for an example).
40 *
41 *     2.  Add all machine-specific cpp symbols (either defined by you or by
42 *         the preprocessor or compiler) to the predefs table in
43 *         config/imakemdep.h.
44 *
45 *     3.  But a new #ifdef block below that defines MacroIncludeFile and
46 *         MacroFile for your new platform and then #undefs the machine-
47 *         specific preprocessor symbols (to avoid problems with file names).
48 *
49 *     4.  Create a .cf file with the name given by MacroFile.
50 */
51
52#if defined(__OSF1__)
53#define MacroIncludeFile <osf1.cf>
54#define MacroFile osf1.cf
55#define OSF1Architecture
56#undef OSF1
57#undef OSF
58#if defined(__mips__)
59#undef mips
60#define MipsArchitecture
61#endif /* defined __mips__ */
62#if defined(__i386__)
63#undef i386
64#define i386Architecture
65#endif /* defined(__i386__) */
66#endif /* __OSF1__ */
67
68#ifdef ultrix
69#define MacroIncludeFile <ultrix.cf>
70#define MacroFile ultrix.cf
71#ifdef vax
72#undef vax
73#define VaxArchitecture
74#endif
75#ifdef mips
76#undef mips
77#define MipsArchitecture
78#endif
79#undef ultrix
80#define UltrixArchitecture
81#endif
82
83#if defined(vax) && !defined(UltrixArchitecture)
84#define MacroIncludeFile <bsd.cf>
85#define MacroFile bsd.cf
86#undef vax
87#define VaxArchitecture
88#endif
89
90#ifdef sun
91#define MacroIncludeFile <sun.cf>
92#define MacroFile sun.cf
93#undef sun
94#define SunArchitecture
95#endif /* sun */
96
97#ifdef hpux
98#define MacroIncludeFile <hp.cf>
99#define MacroFile hp.cf
100#undef hpux
101#define HPArchitecture
102#endif /* hpux */
103
104#ifdef att
105#define MacroIncludeFile <att.cf>
106#define MacroFile att.cf
107#undef att
108#define ATTArchitecture
109#endif /* att */
110
111#ifdef apollo
112#define MacroIncludeFile <apollo.cf>
113#define MacroFile apollo.cf
114#undef apollo
115#define ApolloArchitecture
116#endif /* apollo */
117
118#ifdef sony
119#define MacroIncludeFile <sony.cf>
120#define MacroFile sony.cf
121#undef sony
122#undef sony_news
123#define SonyArchitecture
124#ifdef mc68020
125#undef mc68020
126#undef mc68030
127#define Mc68020Architecture
128#endif
129#ifdef mips
130#undef mips
131#define MipsArchitecture
132#endif
133#if !defined(bsd43) || defined(SYSTYPE_SYSV)
134#define SonySysvArchitecture
135#else
136#define SonyBsdArchitecture
137#endif
138#endif /* sony */
139
140#ifdef M4310
141#define MacroIncludeFile <pegasus.cf>
142#define MacroFile pegasus.cf
143#undef M4310
144#define PegasusArchitecture
145#endif /* M4310 */
146
147#ifdef M4330
148#define MacroIncludeFile <m4330.cf>
149#define MacroFile m4330.cf
150#undef  M4330
151#define M4330Architecture
152#endif /* M4330 */
153
154#ifdef macII
155/* A/UX cpp has no unique symbol:  build imake with BOOTSTRAPCFLAGS=-DmacII */
156#define MacroIncludeFile <macII.cf>
157#define MacroFile macII.cf
158#undef  macII
159#define MacIIArchitecture
160#endif /* macII */
161
162#ifdef CRAY
163#define MacroIncludeFile <cray.cf>
164#define MacroFile cray.cf
165#undef cray
166#define CrayArchitecture
167#endif /* CRAY */
168
169#ifdef sgi
170#define MacroIncludeFile <sgi.cf>
171#define MacroFile sgi.cf
172#undef sgi
173#define SGIArchitecture
174#undef mips
175#define MipsArchitecture
176#endif
177
178#ifdef stellar
179#define MacroIncludeFile <stellar.cf>
180#define MacroFile stellar.cf
181#undef stellar
182#define StellarArchitecture
183#endif
184
185#if defined(ibm) || defined(_IBMR2) || defined(ibm032) || defined(aix)
186#define MacroIncludeFile <ibm.cf>
187#define MacroFile ibm.cf
188#ifdef ibm
189#undef ibm
190#endif
191#define IBMArchitecture
192#ifdef i386
193#undef i386
194#define PS2Architecture
195#endif
196#ifdef ibm032
197#undef ibm032
198#define RtArchitecture
199#endif
200#ifdef aix
201#undef aix
202#define AIXArchitecture
203#endif
204#ifdef _IBMR2
205#undef _IBMR2
206#define RsArchitecture
207#endif
208#endif /* ibm */
209
210#ifdef luna
211#undef luna
212#define MacroIncludeFile <luna.cf>
213#define MacroFile luna.cf
214#ifdef mc68000
215#undef mc68000
216#define Mc68000Architecture
217#else
218#undef mc88000
219#define Mc88000Architecture
220#endif
221#endif
222
223#ifdef Mips
224#  define MacroIncludeFile "Mips.cf"
225#  define MacroFile Mips.cf
226#  undef Mips
227#  if defined(SYSTYPE_BSD43) || defined(BSD) || defined(BSD43)
228#    define MipsBsdArchitecture
229#  else /* BSD */
230#    define MipsSysvArchitecture
231#  endif /* BSD */
232#endif /* Mips */
233
234#ifdef MOTOROLA
235# define MacroIncludeFile <moto.cf>
236# define MacroFile moto.cf
237# undef MOTOROLA       
238# ifdef SYSV
239#  define MotoR3Architecture
240# endif
241# ifdef SVR4
242#  define MotoR4Architecture
243# endif
244#endif /* MOTOROLA */
245
246#ifdef SYSV386
247# define MacroIncludeFile <x386.cf>
248# define MacroFile x386.cf
249# ifdef SVR4
250#  define i386SVR4Architecture
251# else
252#  define i386SVR3Architecture
253# endif
254#endif /* SYSV386 */
255
256#ifdef DGUX
257#define MacroIncludeFile <DGUX.cf>
258#define MacroFile DGUX.cf
259#undef DGUX
260#define DguxArchitecture
261#endif
262
263#ifdef __convex__
264# define MacroIncludeFile <convex.cf>
265# define MacroFile convex.cf
266# ifdef convex
267#  undef convex
268# endif
269# define ConvexArchitecture
270#endif
271
272#ifdef linux
273#define MacroIncludeFile <linux.cf>
274#define MacroFile linux.cf
275#undef linux
276#define LinuxArchitecture
277#endif /* linux */
278
279#ifdef __NetBSD__
280#define MacroIncludeFile <NetBSD.cf>
281#define MacroFile NetBSD.cf
282#define NetBSDArchitecture
283#endif /* NetBSD */
284
285#ifndef MacroIncludeFile
286XCOMM WARNING:  Imake.tmpl not configured; guessing at definitions!!!
287XCOMM This might mean that BOOTSTRAPCFLAGS was not set when building imake.
288#define MacroIncludeFile <generic.cf>
289#define MacroFile generic.cf
290#endif
291
292/*****************************************************************************
293 *                                                                           *
294 *                       DO NOT MODIFY BELOW THIS LINE                       *
295 *                                                                           *
296 *****************************************************************************/
297
298
299XCOMM -------------------------------------------------------------------------
300XCOMM site-specific configuration parameters that need to come before
301XCOMM the platform-specific parameters - edit site.def to change
302#define BeforeVendorCF
303#include <site.def>
304#undef BeforeVendorCF
305
306XCOMM -------------------------------------------------------------------------
307XCOMM platform-specific configuration parameters - edit MacroFile to change
308#include MacroIncludeFile
309
310/* It is a kludge to put these two macros here,
311 * but Project.tmpl needs them and it is not clear there is a better place.
312 */
313
314/*
315 * Concat - concatenates two strings.
316 */
317#ifndef Concat
318#if __STDC__ && !defined(UnixCpp)
319#define Concat(a,b)a##b
320#else
321#define Concat(a,b)a/**/b
322#endif
323#endif
324
325/*
326 * Concat3 - concatenates three strings.
327 */
328#ifndef Concat3
329#if __STDC__ && !defined(UnixCpp)
330#define Concat3(a,b,c)a##b##c
331#else
332#define Concat3(a,b,c)a/**/b/**/c
333#endif
334#endif
335
336XCOMM -------------------------------------------------------------------------
337XCOMM site-specific configuration parameters that go after
338XCOMM the platform-specific parameters - edit site.def to change
339#define AfterVendorCF
340#include <site.def>
341#undef AfterVendorCF
342
343/*
344 * defaults for various generic parameters; set in site.def if needed
345 */
346
347#ifndef HasSharedLibraries
348#define HasSharedLibraries NO
349#endif
350#ifndef SystemV
351#define SystemV                 NO      /* SYSV (R3) */
352#endif
353#ifndef SystemV4
354#define SystemV4                NO      /* SVR4 */
355#endif
356#ifndef OSMajorVersion
357#define OSMajorVersion          0
358#endif
359#ifndef OSMinorVersion
360#define OSMinorVersion          0
361#endif
362#ifndef UnalignedReferencesAllowed
363#define UnalignedReferencesAllowed NO   /* if arbitrary deref is okay */
364#endif
365#ifndef ExecableScripts
366#if SystemV
367#define ExecableScripts         NO
368#else
369#define ExecableScripts         YES     /* kernel exec() can handle #! */
370#endif
371#endif
372
373#ifndef BourneShell                     /* to force shell in makefile */
374#define BourneShell             /bin/sh
375#endif
376#ifndef ConstructMFLAGS
377#if SystemV
378#define ConstructMFLAGS         YES     /* build MFLAGS from MAKEFLAGS */
379#else
380#define ConstructMFLAGS         NO      /* build MFLAGS from MAKEFLAGS */
381#endif
382#endif
383
384#ifndef HasLargeTmp
385#define HasLargeTmp             NO      /* be paranoid */
386#endif
387#ifndef HasSockets
388#if SystemV || SystemV4
389#define HasSockets              NO      /* do not assume it has them */
390#else
391#define HasSockets              YES     /* bsd does have them */
392#endif
393#endif
394#ifndef HasVFork
395#if SystemV
396#define HasVFork                NO      /* not yet... */
397#else
398#define HasVFork                YES
399#endif
400#endif
401#ifndef HasPutenv
402#define HasPutenv               NO      /* assume not */
403#endif
404#ifndef HasVoidSignalReturn
405#define HasVoidSignalReturn     YES     /* assume yes */
406#endif
407#ifndef HasBsearch
408#define HasBsearch              YES     /* assume yes */
409#endif
410#ifndef HasSaberC
411#define HasSaberC               NO      /* for people unclear on the concept */
412#endif
413#ifndef HasFortran
414#define HasFortran              NO
415#endif
416#ifndef HasNdbm
417#define HasNdbm                 NO
418#endif
419#ifndef HasSecureRPC
420#define HasSecureRPC            NO      /* if you have Secure RPC */
421#endif
422#ifndef HasShm
423#if SystemV || SystemV4
424#define HasShm                  YES
425#else
426#define HasShm                  NO
427#endif
428#endif
429#ifndef NeedConstPrototypes
430#define NeedConstPrototypes     NO
431#endif
432#ifndef NeedVarargsPrototypes
433#define NeedVarargsPrototypes   NO
434#endif
435#ifndef NeedNestedPrototypes
436#define NeedNestedPrototypes    NO
437#endif
438#ifndef NeedFunctionPrototypes
439#define NeedFunctionPrototypes (NeedVarargsPrototypes || NeedNestedPrototypes)
440#endif
441#ifndef NeedWidePrototypes
442#define NeedWidePrototypes      YES     /* mix and match ANSI-C, non-ANSI */
443#endif
444
445#ifndef StripInstalledPrograms
446#define StripInstalledPrograms NO       /* leave symbol table just in case */
447#endif
448
449#ifndef UsrLibDir
450#ifdef ProjectRoot
451#define UsrLibDir Concat(ProjectRoot,/lib)
452#ifndef AlternateUsrLibDir
453#define AlternateUsrLibDir YES
454#endif
455#else
456#define UsrLibDir /usr/lib
457#ifndef AlternateUsrLibDir
458#define AlternateUsrLibDir NO
459#endif
460#endif
461#else
462#ifndef AlternateUsrLibDir
463#define AlternateUsrLibDir YES
464#endif
465#endif
466#ifndef IncRoot
467#ifdef ProjectRoot
468#define IncRoot Concat(ProjectRoot,/include)
469#ifndef AlternateIncRoot
470#define AlternateIncRoot YES
471#endif
472#else
473#define IncRoot /usr/include
474#ifndef AlternateIncRoot
475#define AlternateIncRoot NO
476#endif
477#endif
478#else
479#ifndef AlternateIncRoot
480#define AlternateIncRoot YES
481#endif
482#endif
483#ifndef UNCOMPRESSPATH
484#define UNCOMPRESSPATH /usr/ucb/uncompress
485#endif
486#ifndef OptimizedCDebugFlags
487#define OptimizedCDebugFlags -O
488#endif
489#ifndef DebuggableCDebugFlags
490#define DebuggableCDebugFlags -g
491#endif
492#ifndef NoOpCDebugFlags
493#define NoOpCDebugFlags /* as nothing */
494#endif
495#ifndef DefaultCDebugFlags
496#define DefaultCDebugFlags OptimizedCDebugFlags
497#endif
498#ifndef DefaultCCOptions
499#define DefaultCCOptions /* as nothing: this is for floating point, etc. */
500#endif
501#ifndef InstPgmFlags
502#define InstPgmFlags -s
503#endif
504#ifndef InstBinFlags
505#define InstBinFlags -m 0755
506#endif
507#ifndef InstUidFlags
508#define InstUidFlags -m 4755
509#endif
510#ifndef InstLibFlags
511#define InstLibFlags -m 0644
512#endif
513#ifndef InstIncFlags
514#define InstIncFlags -m 0444
515#endif
516#ifndef InstManFlags
517#define InstManFlags -m 0444
518#endif
519#ifndef InstDatFlags
520#define InstDatFlags -m 0444
521#endif
522#ifndef InstKmemFlags
523#define InstKmemFlags InstUidFlags    /* put -g kmem -m 2755 in site.def... */
524#endif
525#ifndef ArCmd
526#if HasLargeTmp | SystemV4
527#define ArCmd ar cq     /* do nothing special */
528#else
529#define ArCmd ar clq    /* use local dir for temp files */
530#endif
531#endif
532#ifndef BootstrapCFlags
533#define BootstrapCFlags /**/
534#endif
535#ifndef HasGcc
536#define HasGcc NO
537#endif
538#ifndef CcCmd
539#if HasGcc
540#define CcCmd gcc -fstrength-reduce -fpcc-struct-return
541#else
542#define CcCmd cc
543#endif
544#endif
545#if HasFortran
546#ifndef FortranCmd
547#define FortranCmd f77
548#endif
549#ifndef FortranFlags
550#define FortranFlags /**/
551#endif
552#ifndef FortranDebugFlags
553#define FortranDebugFlags /**/          /* for -O or -g */
554#endif
555#endif
556#ifndef AsCmd
557#define AsCmd as
558#endif
559#ifndef CompressCmd
560#define CompressCmd compress
561#endif
562#ifndef CppCmd
563#define CppCmd /lib/cpp
564#endif
565#ifndef PreProcessCmd
566#define PreProcessCmd CcCmd -E
567#endif
568#ifndef InstallCmd
569#if SystemV | SystemV4
570#ifdef UseInstalled
571#define InstallCmd $(BINDIR)/bsdinst            /* hack should be in project */
572#else
573#define InstallCmd $(SCRIPTSRC)/bsdinst.sh      /* hack should be in project */
574#endif
575#else
576#define InstallCmd install
577#endif
578#endif
579#ifndef LdCmd
580#define LdCmd ld
581#endif
582#ifndef LintCmd
583#define LintCmd lint
584#endif
585#ifndef LintLibFlag
586#if SystemV || SystemV4
587#define LintLibFlag -o
588#else
589#define LintLibFlag -C
590#endif
591#endif
592#ifndef LintOpts
593#if SystemV || SystemV4
594#define LintOpts -ax
595#else
596#define LintOpts -axz
597#endif
598#endif
599#ifndef CpCmd
600#define CpCmd cp
601#endif
602#ifndef LnCmd
603#if SystemV
604#define LnCmd ln /* or even cp */
605#else
606#define LnCmd ln -s
607#endif
608#endif
609#ifndef MakeCmd
610#define MakeCmd make
611#endif
612#ifndef MvCmd
613#define MvCmd mv
614#endif
615#ifndef DoRanlibCmd
616#if SystemV || SystemV4
617#define DoRanlibCmd 0
618#else
619#define DoRanlibCmd 1
620#endif
621#endif
622#ifndef RanlibCmd
623#define RanlibCmd ranlib
624#endif
625#ifndef RanlibInstFlags
626#define RanlibInstFlags /**/
627#endif
628#ifndef RmCmd
629#define RmCmd rm -f
630#endif
631#ifndef StandardIncludes
632#define StandardIncludes /**/                   /* for platform-specifics */
633#endif
634#ifndef StandardDefines
635#if SystemV
636#define StandardDefines -DSYSV
637#else
638#if SystemV4
639#define StandardDefines -DSVR4
640#else
641#define StandardDefines /**/
642#endif
643#endif
644#endif
645#ifndef StandardCppDefines
646#define StandardCppDefines StandardDefines
647#endif
648#ifndef Malloc0ReturnsNull
649#define Malloc0ReturnsNull NO
650#endif
651#ifndef NdbmDefines
652#if HasNdbm
653#define NdbmDefines -DNDBM
654#else
655#define NdbmDefines /**/
656#endif
657#endif
658#ifndef ExtraLibraries
659#if SystemV4
660#if HasSockets
661#define ExtraLibraries -lsocket -lnsl
662#else
663#define ExtraLibraries -lnsl
664#endif
665#else
666#define ExtraLibraries /**/
667#endif
668#endif
669#ifndef ExtraLoadFlags
670#define ExtraLoadFlags /**/
671#endif
672#ifndef LdCombineFlags
673#if SystemV4
674#define LdCombineFlags -r
675#else
676#define LdCombineFlags -X -r
677#endif
678#endif
679#ifndef TagsCmd
680#define TagsCmd ctags
681#endif
682#ifndef LoaderLibPrefix
683#define LoaderLibPrefix /**/                    /* cray does -l libX11.a */
684#endif
685#ifndef DependFlags
686#define DependFlags /**/
687#endif
688#ifndef TroffCmd
689#define TroffCmd psroff
690#endif
691#ifndef MsMacros
692#define MsMacros -ms
693#endif
694#ifndef TblCmd
695#define TblCmd tbl
696#endif
697#ifndef EqnCmd
698#define EqnCmd eqn
699#endif
700#ifndef ExpandManNames
701#if SystemV
702#define ExpandManNames NO
703#else
704#define ExpandManNames YES
705#endif
706#endif
707#ifndef TOPDIR
708#define TOPDIR .
709#endif
710#ifndef CURDIR
711#define CURDIR .
712#endif
713#ifndef ExtraFilesToClean
714#define ExtraFilesToClean /**/
715#endif
716#ifndef FilesToClean
717#define FilesToClean *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut
718#endif
719
720            SHELL = BourneShell
721
722              TOP = TOPDIR
723      CURRENT_DIR = CURDIR
724
725               AR = ArCmd
726  BOOTSTRAPCFLAGS = BootstrapCFlags     /* set if cpp does not have uniq sym */
727               CC = CcCmd
728               AS = AsCmd
729#if HasFortran
730               FC = FortranCmd
731      FDEBUGFLAGS = FortranDebugFlags
732          FCFLAGS = FortranFlags $(FDEBUGFLAGS)
733#endif
734         COMPRESS = CompressCmd
735              CPP = CppCmd $(STD_CPP_DEFINES)           /* simple filters */
736    PREPROCESSCMD = PreProcessCmd $(STD_CPP_DEFINES)    /* prefered; mdep */
737          INSTALL = InstallCmd
738               LD = LdCmd
739             LINT = LintCmd
740      LINTLIBFLAG = LintLibFlag
741         LINTOPTS = LintOpts
742               LN = LnCmd
743             MAKE = MakeCmd
744               MV = MvCmd
745               CP = CpCmd
746#if DoRanlibCmd
747           RANLIB = RanlibCmd
748  RANLIBINSTFLAGS = RanlibInstFlags
749#endif
750               RM = RmCmd
751            TROFF = TroffCmd
752         MSMACROS = MsMacros
753              TBL = TblCmd
754              EQN = EqnCmd
755     STD_INCLUDES = StandardIncludes
756  STD_CPP_DEFINES = StandardCppDefines
757      STD_DEFINES = StandardDefines
758 EXTRA_LOAD_FLAGS = ExtraLoadFlags
759  EXTRA_LIBRARIES = ExtraLibraries
760             TAGS = TagsCmd
761#if ConstructMFLAGS
762           MFLAGS = -$(MAKEFLAGS)
763#endif
764#if HasSharedLibraries
765    SHAREDCODEDEF = SharedCodeDef
766         SHLIBDEF = SharedLibraryDef
767#endif
768#if !HasVoidSignalReturn
769   SIGNAL_DEFINES = -DSIGNALRETURNSINT
770#endif
771/*
772 * The following supports forcing of function prototypes
773 */
774#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes && NeedNestedPrototypes
775#define _funcprotodef -DFUNCPROTO=15
776#else
777#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedNestedPrototypes
778#define _funcprotodef -DFUNCPROTO=11
779#else
780#if NeedFunctionPrototypes && NeedNestedPrototypes
781#define _funcprotodef -DFUNCPROTO=9
782#else
783#if NeedFunctionPrototypes && NeedVarargsPrototypes && NeedConstPrototypes
784#define _funcprotodef -DFUNCPROTO=7
785#else
786#if NeedFunctionPrototypes && NeedConstPrototypes
787#define _funcprotodef -DFUNCPROTO=5
788#else
789#if NeedFunctionPrototypes && NeedVarargsPrototypes
790#define _funcprotodef -DFUNCPROTO=3
791#else
792#if NeedFunctionPrototypes
793#define _funcprotodef -DFUNCPROTO
794#else
795#define _funcprotodef /**/
796#endif
797#endif
798#endif
799#endif
800#endif
801#endif
802#endif
803#if NeedWidePrototypes
804#define _wideprotodef /**/
805#else
806#define _wideprotodef -DNARROWPROTO
807#endif
808    PROTO_DEFINES = _funcprotodef _wideprotodef
809#undef _funcprotodef
810#undef _wideprotodef
811
812#if StripInstalledPrograms
813     INSTPGMFLAGS = InstPgmFlags        /* install flags for stripping */
814#else
815     INSTPGMFLAGS =
816#endif
817     INSTBINFLAGS = InstBinFlags        /* install flags for programs */
818     INSTUIDFLAGS = InstUidFlags        /* install flags for setuid programs */
819     INSTLIBFLAGS = InstLibFlags        /* install flags for libraries */
820     INSTINCFLAGS = InstIncFlags        /* install flags for headers */
821     INSTMANFLAGS = InstManFlags        /* install flags for man pages */
822     INSTDATFLAGS = InstDatFlags        /* install flags for data files */
823    INSTKMEMFLAGS = InstKmemFlags       /* install flags for /dev/kmem progs */
824
825#ifdef ProjectRoot
826      PROJECTROOT = ProjectRoot
827#endif
828#ifdef UseInstalled
829#if AlternateIncRoot
830     TOP_INCLUDES = -I$(INCROOT)        /* def: for alternative /usr/include */
831#endif
832#else
833     TOP_INCLUDES = -I$(TOP)            /* def: for builds within tree */
834#endif
835      CDEBUGFLAGS = DefaultCDebugFlags
836        CCOPTIONS = DefaultCCOptions    /* to distinguish from param flags */
837/*
838 * STD_INCLUDES contains system-specific includes
839 * TOP_INCLUDES specifies how to get to /usr/include or its build substitute
840 * EXTRA_INCLUDES contains project-specific includes set in project incfiles
841 * INCLUDES contains client-specific includes set in Imakefile
842 * LOCAL_LDFLAGS contains client-specific ld flags flags set in Imakefile
843 */
844      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(STD_INCLUDES)
845       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(DEFINES)
846           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES)
847        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES)
848#if AlternateUsrLibDir && !defined(UseInstalled)
849           LDLIBS = -L$(USRLIBDIR) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
850#else
851           LDLIBS = $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
852#endif
853#if AlternateUsrLibDir && defined(UseInstalled)
854        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(LOCAL_LDFLAGS) \
855                    -L/usr/X11R6/lib
856#else
857        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(LOCAL_LDFLAGS)
858#endif
859   LDCOMBINEFLAGS = LdCombineFlags
860      DEPENDFLAGS = DependFlags
861
862        MACROFILE = MacroFile
863           RM_CMD = $(RM) FilesToClean ExtraFilesToClean
864
865    IMAKE_DEFINES = /* leave blank, for command line use only */
866#ifdef UseInstalled
867         IRULESRC = $(CONFIGDIR)        /* used in rules file */
868        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)
869#else
870         IRULESRC = $(CONFIGSRC)
871        IMAKE_CMD = $(NEWTOP)$(IMAKE) -I$(NEWTOP)$(IRULESRC) $(IMAKE_DEFINES)
872#endif
873     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/Imake.rules \
874                        $(IRULESRC)/Project.tmpl $(IRULESRC)/site.def \
875                        $(IRULESRC)/$(MACROFILE) $(EXTRA_ICONFIGFILES)
876
877/*
878 * get project-specific configuration and rules
879 */
880
881#include <Project.tmpl>
882#include <Motif.tmpl>
883
884#include <Imake.rules>
885#include <Motif.rules>
886
887XCOMM -------------------------------------------------------------------------
888XCOMM start of Imakefile
889#include INCLUDE_IMAKEFILE
890
891XCOMM -------------------------------------------------------------------------
892XCOMM common rules for all Makefiles - do not edit
893/*
894 * These need to be here so that rules in Imakefile occur first;  the blank
895 * all is to make sure that an empty Imakefile does not default to make clean.
896 */
897emptyrule::
898
899CleanTarget()
900
901#ifndef IHaveSpecialMakefileTarget
902MakefileTarget()
903#endif
904
905TagsTarget()
906#ifdef MakefileAdditions
907MakefileAdditions()
908#endif
909
910#if HasSaberC
911saber:
912        XCOMM load $(ALLDEFINES) $(SRCS)
913
914osaber:
915        XCOMM load $(ALLDEFINES) $(OBJS)
916#endif
917
918
919#ifdef IHaveSubdirs
920XCOMM -------------------------------------------------------------------------
921XCOMM rules for building in SUBDIRS - do not edit
922
923InstallSubdirs($(SUBDIRS))
924InstallManSubdirs($(SUBDIRS))
925CleanSubdirs($(SUBDIRS))
926TagSubdirs($(SUBDIRS))
927MakefileSubdirs($(SUBDIRS))
928IncludesSubdirs($(SUBDIRS))
929
930#else
931XCOMM -------------------------------------------------------------------------
932XCOMM empty rules for directories that do not have SUBDIRS - do not edit
933
934install::
935        @echo "install in $(CURRENT_DIR) done"
936
937install.man::
938        @echo "install.man in $(CURRENT_DIR) done"
939
940Makefiles::
941
942includes::
943
944#endif /* if subdirectory rules are needed */
945
946XCOMM -------------------------------------------------------------------------
947XCOMM dependencies generated by makedepend
Note: See TracBrowser for help on using the repository browser.