Blame config/cf/os2.rules

Packit b099d7
XCOMM $XConsortium: os2.rules /main/1 1996/10/31 14:47:27 kaleb $
Packit b099d7
Packit b099d7
Packit b099d7
Packit b099d7
XCOMM platform:  $XFree86: xc/config/cf/os2.rules,v 3.15.2.1 1998/10/11 12:34:48 hohndel Exp $
Packit b099d7
Packit b099d7
.SUFFIXES: .Osuf .c .CCsuf
Packit b099d7
Packit b099d7
.c.Osuf:
Packit b099d7
	$(CC) $(CFLAGS) -c $*.c
Packit b099d7
Packit b099d7
#if HasCplusplus
Packit b099d7
.CCsuf.Osuf:
Packit b099d7
	$(CXX) $(CFLAGS) -c $*.CCsuf
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef UseInstalled
Packit b099d7
#define ImakeHelper \imakesvc
Packit b099d7
#define IMmode n
Packit b099d7
#define ImakeIndir \indir
Packit b099d7
#define ImakeSubCmdHelper \imake -I$(IRULESRC) $(IMAKE_DEFINES)
Packit b099d7
#define Fontc \bdftopcf
Packit b099d7
#define MkFontDir \mkfontdir
Packit b099d7
#define XkbComp \xkbcomp
Packit b099d7
#else
Packit b099d7
#define ImakeHelper imakesvc
Packit b099d7
#define IMmode u
Packit b099d7
#define ImakeIndir indir
Packit b099d7
#define ImakeSubCmdHelper $(IMAKE_CMD)
Packit b099d7
#define Fontc bdftopcf
Packit b099d7
#define MkFontDir mkfontdir
Packit b099d7
#define XkbComp xkbcomp
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define echo ImakeHelper 8 
Packit b099d7
#define RunProgram(progvar,options) $(subst /,\,$(progvar)) options
Packit b099d7
#define RemoveFile(file) $(RM) file
Packit b099d7
#define RemoveFiles(files) $(RM) files
Packit b099d7
#define NeedLdLibraryPathForXkbComp NO
Packit b099d7
Packit b099d7
#define LibObjCompile(dir,options) RemoveFiles($@ dir\$@)		@@\
Packit b099d7
	$(CC) $(CCOPTIONS) $(ALLDEFINES) options -c  $*.c		@@\
Packit b099d7
	$(MV) $@ dir\$@
Packit b099d7
Packit b099d7
#define MakeDir(dir) $(MKDIRHIER) dir
Packit b099d7
Packit b099d7
#define BuildIncludesTop(srclist)					@@\
Packit b099d7
includes:: srclist							@@\
Packit b099d7
	MakeDir($(BUILDINCDIR))						@@\
Packit b099d7
	@for %i in (srclist) do ImakeHelper 2 $(BUILDINCDIR) $(BUILDINCTOP) $(CURRENT_DIR) %i
Packit b099d7
Packit b099d7
#define	ProgramTargetHelper(program,srcs,objs,deplib,locallib,syslib)	@@\
Packit b099d7
ProgramTargetName(program): $(objs) 					@@\
Packit b099d7
	RemoveTargetProgram($@)						@@\
Packit b099d7
	LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib)	@@\
Packit b099d7
									@@\
Packit b099d7
InstallProgram(program,$(BINDIR))					@@\
Packit b099d7
InstallManPage(program,$(MANDIR))
Packit b099d7
Packit b099d7
#if 0
Packit b099d7
#define	ProgramTargetHelperNoMan(program,srcs,objs,deplib,locallib,syslib)	@@\
Packit b099d7
ProgramTargetName(program): $(objs) 					@@\
Packit b099d7
	RemoveTargetProgram($@)						@@\
Packit b099d7
	LinkRule($@,$(LDOPTIONS),$(objs),locallib $(LDLIBS) syslib)	@@\
Packit b099d7
									@@\
Packit b099d7
InstallProgram(program,$(BINDIR))
Packit b099d7
#endif
Packit b099d7
Packit b099d7
Packit b099d7
#define BuildIncludes(srclist,dstsubdir,dstupdir)			@@\
Packit b099d7
includes:: srclist							@@\
Packit b099d7
	MakeDir($(BUILDINCDIR)/dstsubdir)				@@\
Packit b099d7
	@for %i in (srclist) do ImakeHelper 3 $(BUILDINCTOP)/dstupdir/$(CURRENT_DIR) $(BUILDINCDIR)/dstsubdir %i
Packit b099d7
Packit b099d7
#define LinkFileList(step,list,dir,sub)					@@\
Packit b099d7
step::  list								@@\
Packit b099d7
	@for %i in (list) do ImakeHelper 3 sub dir %i
Packit b099d7
Packit b099d7
#define ComplexProgramTarget(program)					@@\
Packit b099d7
PROGRAM = ProgramTargetName(program)					@@\
Packit b099d7
									@@\
Packit b099d7
AllTarget(ProgramTargetName(program))					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetHelper(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\
Packit b099d7
									@@\
Packit b099d7
DependTarget()								@@\
Packit b099d7
LintTarget()								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile($(PROGRAM))
Packit b099d7
Packit b099d7
#define ComplexProgramTarget_1(program,locallib,syslib)			@@\
Packit b099d7
OBJS = $(OBJS1) $(OBJS2) $(OBJS3)					@@\
Packit b099d7
SRCS = $(SRCS1) $(SRCS2) $(SRCS3)					@@\
Packit b099d7
PROGRAM1 = ProgramTargetName(program)					@@\
Packit b099d7
									@@\
Packit b099d7
AllTarget($(PROGRAM1) $(PROGRAM2) $(PROGRAM3))				@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetHelper(program,SRCS1,OBJS1,DEPLIBS1,locallib,syslib)	@@\
Packit b099d7
									@@\
Packit b099d7
DependTarget()								@@\
Packit b099d7
LintTarget()								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFiles($(PROGRAMS))
Packit b099d7
Packit b099d7
#define ComplexProgramTarget_2(program,locallib,syslib)			@@\
Packit b099d7
PROGRAM2 = ProgramTargetName(program)					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetHelper(program,SRCS2,OBJS2,DEPLIBS2,locallib,syslib)
Packit b099d7
Packit b099d7
#define ComplexProgramTarget_3(program,locallib,syslib)			@@\
Packit b099d7
PROGRAM3 = ProgramTargetName(program)					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetHelper(program,SRCS3,OBJS3,DEPLIBS3,locallib,syslib)
Packit b099d7
Packit b099d7
#define NormalProgramTarget(program,objects,deplibs,locallibs,syslibs)	@@\
Packit b099d7
ProgramTargetName(program): objects 					@@\
Packit b099d7
	RemoveTargetProgram($@)						@@\
Packit b099d7
	LinkRule($@,$(LDOPTIONS),objects,locallibs $(LDLIBS) syslibs)	@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(ProgramTargetName(program))
Packit b099d7
Packit b099d7
#if 0
Packit b099d7
#define ComplexProgramTargetNoMan(program)				@@\
Packit b099d7
PROGRAM = ProgramTargetName(program)					@@\
Packit b099d7
									@@\
Packit b099d7
AllTarget(ProgramTargetName(program))					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetHelperNoMan(program,SRCS,OBJS,DEPLIBS,$(LOCAL_LIBRARIES),NullParameter) @@\
Packit b099d7
									@@\
Packit b099d7
DependTarget()								@@\
Packit b099d7
LintTarget()								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile($(PROGRAM))
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define MoveToBakFile(file) ImakeHelper 5 file
Packit b099d7
Packit b099d7
#define RMoveToBakFile(file) ImakeHelper 6 file
Packit b099d7
Packit b099d7
#define InstallMultipleDestFlags(step,list,dest,flags)			@@\
Packit b099d7
step:: list								@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)							@@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) flags list $(subst /,\,$(DESTDIR)dest)
Packit b099d7
Packit b099d7
#define	CleanTarget()							@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFiles(FilesToClean ExtraFilesToClean)
Packit b099d7
Packit b099d7
#define LinkSourceFile(src,dir)						@@\
Packit b099d7
src:									@@\
Packit b099d7
	ImakeHelper 3 dir . src						@@\
Packit b099d7
									@@\
Packit b099d7
includes:: src								@@\
Packit b099d7
									@@\
Packit b099d7
depends:: src								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(src)
Packit b099d7
Packit b099d7
#define LinkFile(tofile,fromfile)					@@\
Packit b099d7
tofile:: fromfile							@@\
Packit b099d7
	ImakeHelper 7 fromfile tofile					@@\
Packit b099d7
									@@\
Packit b099d7
includes:: tofile							@@\
Packit b099d7
									@@\
Packit b099d7
depend:: tofile								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(tofile)
Packit b099d7
Packit b099d7
#ifndef UseInstalled
Packit b099d7
#define ImakeDependency(target)						@@\
Packit b099d7
target:: ProgramTargetName($(IMAKE))					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetName($(IMAKE)):						@@\
Packit b099d7
	@ImakeIndir $(IMAKESRC) if exist Makefile $(MAKE) SHELL= MAKE=x11make all		@@\
Packit b099d7
	@ImakeIndir $(IMAKESRC) if not exist Makefile $(MAKE) SHELL= MAKE=x11make -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef UseInstalled
Packit b099d7
#define DependDependency() 						@@\
Packit b099d7
depend:: ProgramTargetName($(DEPEND))					@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetName($(DEPEND)):						@@\
Packit b099d7
	@ImakeIndir $(DEPENDSRC) $(MAKE) SHELL= MAKE=x11make 
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define	DependTarget()							@@\
Packit b099d7
DependDependency()							@@\
Packit b099d7
									@@\
Packit b099d7
depend::								@@\
Packit b099d7
	$(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)
Packit b099d7
Packit b099d7
#define	DependTarget3(srcs1,srcs2,srcs3)				@@\
Packit b099d7
DependDependency()							@@\
Packit b099d7
Packit b099d7
/* Currently this stuff doesn't work correctly for libX11
Packit b099d7
depend::								@@\
Packit b099d7
	$(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs1 @@\
Packit b099d7
	$(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs2 @@\
Packit b099d7
	$(subst /,\,$(DEPEND)) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- srcs3
Packit b099d7
*/
Packit b099d7
Packit b099d7
#define ForceSubdirs(dirs)						@@\
Packit b099d7
dirs: DONE								@@\
Packit b099d7
									@@\
Packit b099d7
DONE:									@@\
Packit b099d7
	@for %i in (dirs) do ImakeIndir %i $(MAKE) SHELL= MAKE=x11make $(MFLAGS) PassCDebugFlags all @@\
Packit b099d7
	touch DONE							@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(DONE)
Packit b099d7
Packit b099d7
#define MakeMakeSubdirs(dirs,target)					@@\
Packit b099d7
MMSDIRS = dirs								@@\
Packit b099d7
MMSTOP = $(TOP)								@@\
Packit b099d7
MMSRULES = $(IRULESRC)							@@\
Packit b099d7
MMSCUR = $(CURRENT_DIR)							@@\
Packit b099d7
target::								@@\
Packit b099d7
	@for %i in ($(subst /,\,$(MMSDIRS))) do ImakeHelper 1 IMmode %i $(MMSRULES) $(MMSTOP) $(MMSCUR)
Packit b099d7
Packit b099d7
#define NamedTargetSubdirs(name,dirs,verb,flags,subname)		@@\
Packit b099d7
Concat(SUBST,name) = dirs						@@\
Packit b099d7
name::									@@\
Packit b099d7
	@for %i in ($(subst /,\,$(Concat(SUBST,name)))) do ImakeIndir %i $(MAKE) SHELL= MAKE=x11make $(MFLAGS) flags subname
Packit b099d7
Packit b099d7
#define InstallNamedTarget(step,srcname,flags,dest,dstname)		@@\
Packit b099d7
step:: srcname								@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) flags srcname $(subst \,/,$(DESTDIR)dest)/dstname
Packit b099d7
Packit b099d7
#define	BuildMakefileTarget(notused,imakeflags)				@@\
Packit b099d7
ImakeDependency(Makefile)						@@\
Packit b099d7
									@@\
Packit b099d7
Makefile:: 								@@\
Packit b099d7
	RMoveToBakFile(Makefile)					@@\
Packit b099d7
	ImakeSubCmdHelper -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) imakeflags
Packit b099d7
Packit b099d7
#define AssembleObject(flags) $(RM) $@                                  @@\
Packit b099d7
	$(CPP) AsmDefines $(DEFINES) $(INCLUDES) flags $*.s | grep -v '^\#' > _tmp_.s                                     @@\
Packit b099d7
	$(CC) $(CFLAGS) -o $*.Osuf -c _tmp_.s                           @@\
Packit b099d7
	$(RM) _tmp_.s
Packit b099d7
Packit b099d7
#define NormalAsmObjectRule()                                           @@\
Packit b099d7
.s.Osuf:                                                                @@\
Packit b099d7
	AssembleObject($(_NOOP_))
Packit b099d7
Packit b099d7
#define ObjectMapIncludeFromSpecialSource(dst,src,flags)		@@\
Packit b099d7
dst.c: src.c								@@\
Packit b099d7
	ImakeHelper 9 $@ mfbmap.h $?					@@\
Packit b099d7
									@@\
Packit b099d7
SpecialCObjectRule(dst,NullParameter,flags)				@@\
Packit b099d7
									@@\
Packit b099d7
depend:: dst.c								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(dst.c)
Packit b099d7
Packit b099d7
#define FontBaseObj(basename)basename.pcf
Packit b099d7
/*
Packit b099d7
 * UncompressedFontTarget
Packit b099d7
 */
Packit b099d7
#define UncompressedFontTarget(basename)				@@\
Packit b099d7
FontBaseObj(basename):  FontSrc(basename)				@@\
Packit b099d7
	Fontc $(FONTCFLAGS) $? -o $@
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * CompressedFontTarget
Packit b099d7
 */
Packit b099d7
#ifndef CompressedFontTarget
Packit b099d7
#if GzipFontCompression
Packit b099d7
#define CompressedFontTarget(basename)					@@\
Packit b099d7
FontBaseObj(basename).gz:  FontSrc(basename)				@@\
Packit b099d7
	Fontc $(FONTCFLAGS) $? | $(GZIPCMD) > $@
Packit b099d7
#else
Packit b099d7
#define CompressedFontTarget(basename)					@@\
Packit b099d7
FontBaseObj(basename).Z:  FontSrc(basename)				@@\
Packit b099d7
	Fontc $(FONTCFLAGS) $? | $(COMPRESS) > $@
Packit b099d7
#endif
Packit b099d7
#endif
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * MakeFontsDir - generate rules to build fonts.dir database.
Packit b099d7
 */
Packit b099d7
#define MakeFontsDir(deplist)						@@\
Packit b099d7
all:: fonts.dir								@@\
Packit b099d7
									@@\
Packit b099d7
fonts.dir:  deplist							@@\
Packit b099d7
	MkFontDir .							@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(fonts.dir)
Packit b099d7
Packit b099d7
/* OS/2 scripts are based on REXX
Packit b099d7
 * it is just the SHELL variable that is messed up that forces me to
Packit b099d7
 * modify this rule
Packit b099d7
 */
Packit b099d7
#define ConfigTargetLong(target,dep,script,args,extra)			@@\
Packit b099d7
all:: Configure								@@\
Packit b099d7
									@@\
Packit b099d7
Configure:: target.o							@@\
Packit b099d7
									@@\
Packit b099d7
target.c: script dep							@@\
Packit b099d7
	$(MAKE) SHELL= MAKE=x11make $(MFLAGS) extra Concat(Build,target)			@@\
Packit b099d7
									@@\
Packit b099d7
Concat(Build,target):							@@\
Packit b099d7
	$(RM) target.c							@@\
Packit b099d7
	script args							@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	$(RM) target.c
Packit b099d7
Packit b099d7
#ifndef ServerTargetWithFlags
Packit b099d7
#define	ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,flags) @@\
Packit b099d7
AllTarget(ProgramTargetName(server))					@@\
Packit b099d7
ProgramTargetName(server): subdirs objects libs				@@\
Packit b099d7
	MoveToBakFile($@)						@@\
Packit b099d7
	LinkRule($@,$(LDOPTIONS),objects,libs $(LDLIBS) syslibs)	@@\
Packit b099d7
	emxbind -a ProgramTargetName(server) -h255			@@\
Packit b099d7
									@@\
Packit b099d7
Concat(load,server):							@@\
Packit b099d7
	MoveToBakFile(ProgramTargetName(server))			@@\
Packit b099d7
	LinkRule(ProgramTargetName(server),$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\
Packit b099d7
									@@\
Packit b099d7
loadX:: Concat(load,server)						@@\
Packit b099d7
									@@\
Packit b099d7
SentinelProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
SentinelLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
PurifyProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
PurifyLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
ProofProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
ProofLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\
Packit b099d7
									@@\
Packit b099d7
InstallProgramWithFlags(server,$(BINDIR),flags)				@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFile(ProgramTargetName(server))
Packit b099d7
#endif /* ServerTargetWithFlags */
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * ServerTarget - rules to compile, link, and relink a normal server
Packit b099d7
 * Need a .def file for OS/2
Packit b099d7
 */
Packit b099d7
#ifndef ServerTarget
Packit b099d7
#define	ServerTarget(server,subdirs,objects,libs,syslibs)		@@\
Packit b099d7
ServerTargetWithFlags(server,subdirs,objects,libs,syslibs server.def,$(_NOOP_)) @@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetName(server): server.def
Packit b099d7
#endif /* ServerTarget */
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * ToolkitMakeStrings generates a string-table, i.e., a C source
Packit b099d7
 * file and the matching header(s), e.g., Xt's StringDefs.c, StringDefs.h,
Packit b099d7
 * and Shell.h files; or Motif's XmStrDefs.c and XmStrDefs.h files.
Packit b099d7
 *
Packit b099d7
 * The 'files' argument is the list of files that will be produced by
Packit b099d7
 * this rule, e.g., for Xt they would be "Shell.h StringDefs.c StringDefs.h"
Packit b099d7
 * and for Motif they would be "XmStrDefs.c XmStrDefs.h".
Packit b099d7
 *
Packit b099d7
 * The 'source' argument is the string-list file to be parsed, e.g., in
Packit b099d7
 * Xt that would be "util/string.list".  For Motif 2.0 it would be
Packit b099d7
 * "../../tools/makestr/xmstring.list", and for Motif-CDE1 it would be
Packit b099d7
 * "util/xmstring.list".
Packit b099d7
 *
Packit b099d7
 * The 'options' argument is passed by the library's Imakefile, see the
Packit b099d7
 * Xt Imakefile for an example.  Typically this would be nothing, -intelabi,
Packit b099d7
 * or -sparcabi; there are other choices, but these are typical.
Packit b099d7
 *
Packit b099d7
 * The 'depends' argument names additional files the target files
Packit b099d7
 * depend on.  It should name the #ctmpl and #htmpl files from the
Packit b099d7
 * 'source' file.
Packit b099d7
 *
Packit b099d7
 * The 'dest' argument is the C source output file.  For Xt this should
Packit b099d7
 * be "StringDefs.c", and for all versions of Motif it would be "XmStrDefs.c"
Packit b099d7
 *
Packit b099d7
 * Headers are generated and named according to data in the 'source'
Packit b099d7
 * file.
Packit b099d7
 */
Packit b099d7
Packit b099d7
#ifndef ToolkitMakeStrings
Packit b099d7
#define ToolkitMakeStrings(files,source,options,depends,dest)		@@\
Packit b099d7
MAKESTRS = $(CONFIGSRC)/util/makestrs					@@\
Packit b099d7
MAKESTRS1 = /makestrs.exe						@@\
Packit b099d7
									@@\
Packit b099d7
ProgramTargetName($(MAKESTRS)): $(MAKESTRS).c				@@\
Packit b099d7
	ImakeIndir $(CONFIGSRC)/util make SHELL= ProgramTargetName(makestrs)	@@\
Packit b099d7
	ImakeHelper 7 $(CONFIGSRC)/util/makestrs.exe /			@@\
Packit b099d7
									@@\
Packit b099d7
files: ProgramTargetName($(MAKESTRS)) source depends			@@\
Packit b099d7
	RemoveFiles(files)						@@\
Packit b099d7
	RunProgram(MAKESTRS1,options < source > dest)			@@\
Packit b099d7
									@@\
Packit b099d7
AllTarget(files)							@@\
Packit b099d7
									@@\
Packit b099d7
includes:: files							@@\
Packit b099d7
									@@\
Packit b099d7
depend:: files								@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFiles(files)
Packit b099d7
Packit b099d7
#endif /* ToolkitMakeStrings */
Packit b099d7
Packit b099d7
/*#define CppSedMagic SedMagic*/
Packit b099d7
#define CppSedMagic sed -e '/^#  *[0-9][0-9]*  *.*$$/d' -e 's/^XCOMM/#/g' -e 's/^XCOMM[^a-zA-Z0-9_]/#/g'
Packit b099d7
Packit b099d7
#ifndef InstallNamedTargetNoClobber
Packit b099d7
#define InstallNamedTargetNoClobber(step,srcname,flags,dest,dstname)	@@\
Packit b099d7
step:: srcname								@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	if not exist $(subst /,\,$(DESTDIR)dest)\dstname $(INSTALL) $(INSTALLFLAGS) flags srcname $(DESTDIR)dest/dstname
Packit b099d7
Packit b099d7
#endif /* InstallNamedTargetNoClobber */
Packit b099d7
Packit b099d7
#if CompressManPages
Packit b099d7
Packit b099d7
#ifndef InstallManPageLong
Packit b099d7
#define InstallManPageLong(file,destdir,dest)                           @@\
Packit b099d7
install.man:: file.man                                                  @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	ImakeHelper 12 file $(DESTDIR)destdir dest
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallManPageAliases
Packit b099d7
#define InstallManPageAliases(file,destdir,aliases)                     @@\
Packit b099d7
install.man::                                                           @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.gz $(DESTDIR)destdir/%i.gz
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallGenManPageLong
Packit b099d7
#define InstallGenManPageLong(file,destdir,dest,suffix)                 @@\
Packit b099d7
install.man:: file.man                                                  @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	ImakeHelper 12 file $(DESTDIR)destdir dest
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallMultipleMan
Packit b099d7
#define InstallMultipleMan(list,dest)                                   @@\
Packit b099d7
install.man:: list                                                      @@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	for %i in (list) do ImakeHelper 12 %i $(DESTDIR)dest %i
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#else /* CompressManPages */
Packit b099d7
Packit b099d7
#ifndef InstallManPageLong
Packit b099d7
#define InstallManPageLong(file,destdir,dest)                           @@\
Packit b099d7
install.man:: file.man                                                  @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	ImakeHelper 10 file $(DESTDIR)destdir dest $(MANSUFFIX)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallManPageAliases
Packit b099d7
#define InstallManPageAliases(file,destdir,aliases)                     @@\
Packit b099d7
install.man::                                                           @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.$(MANSUFFIX) $(DESTDIR)destdir/%i.$(MANSUFFIX) 
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallGenManPageLong
Packit b099d7
#define InstallGenManPageLong(file,destdir,dest,suffix)                 @@\
Packit b099d7
install.man:: file.man                                                  @@\
Packit b099d7
	MakeDir($(DESTDIR)destdir)					@@\
Packit b099d7
	ImakeHelper 10 file $(DESTDIR)destdir dest suffix
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallMultipleMan
Packit b099d7
#define InstallMultipleMan(list,dest)                                   @@\
Packit b099d7
install.man:: list                                                      @@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	for %i in (list) do ImakeHelper 10 %i $(DESTDIR)dest %i $(MANSUFFIX)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef NormalLintTarget
Packit b099d7
#define NormalLintTarget(srclist)
Packit b099d7
#endif /* NormalLintTarget */
Packit b099d7
Packit b099d7
#ifndef MakeDirectories
Packit b099d7
#define MakeDirectories(step,dirs)					@@\
Packit b099d7
step::									@@\
Packit b099d7
	-for %i in (dirs) do $(MKDIRHIER) $(DESTDIR)%i
Packit b099d7
#endif /* MakeDirectories */
Packit b099d7
Packit b099d7
#ifndef YaccFile
Packit b099d7
#define YaccFile(file,flags)						@@\
Packit b099d7
depend:: file.c								@@\
Packit b099d7
									@@\
Packit b099d7
file.h file.c: file.y							@@\
Packit b099d7
	$(YACC) flags file.y						@@\
Packit b099d7
	$(MV) y.tab.c file.c						@@\
Packit b099d7
	@if exist y.tab.h $(MV) y.tab.h file.h				@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	RemoveFiles(y.tab.c y.tab.h file.h file.c)
Packit b099d7
#endif /* YaccFile */
Packit b099d7
Packit b099d7
#ifndef StaticLibrary
Packit b099d7
#define StaticLibrary(libpath,libname) Concat4(libpath,/,libname,_s.a)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef MakeXkbDir
Packit b099d7
#define MakeXkbDir(basedir,subdir)					@@\
Packit b099d7
all::	Concat(subdir,.dir)						@@\
Packit b099d7
									@@\
Packit b099d7
Concat(subdir,.dir):							@@\
Packit b099d7
	$(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) *			@@\
Packit b099d7
									@@\
Packit b099d7
InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
/* This is to replace an ugly hack in /xc/nls/XLC_LOCALE */
Packit b099d7
/* the corresponding Imake.rules rule would be:
Packit b099d7
   define LinkFileSpecial(gotodir,tofile,fromfile)	@@\
Packit b099d7
        @MakeFlagsToShellFlags(i,set +e); \		@@\
Packit b099d7
	cd dir && (set -x; RemoveFile(tofile); $(LN) fromfile tofile)
Packit b099d7
 */
Packit b099d7
#ifndef LinkFileSpecial
Packit b099d7
#define LinkFileSpecial(gotodir,tofile,fromfile)			@@\
Packit b099d7
	ImakeHelper 13 gotodir fromfile tofile
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef LinkBuildBinary
Packit b099d7
#define LinkBuildBinary(binary)						@@\
Packit b099d7
all:: $(BUILDBINDIR)/binary binary					@@\
Packit b099d7
									@@\
Packit b099d7
$(BUILDBINDIR)/binary: binary						@@\
Packit b099d7
	ImakeHelper 13 $(BUILDBINDIR) $(BUILDBINTOP)/$(CURRENT_DIR)/binary binary @@\
Packit b099d7
	$(CP) binary /
Packit b099d7
#endif /* LinkBuildBinary */