📄 os2.rules
字号:
Fontc $(FONTCFLAGS) $? -o $@/* * CompressedFontTarget */#ifndef CompressedFontTarget#if GzipFontCompression#define CompressedFontTarget(basename) @@\FontBaseObj(basename).gz: FontSrc(basename) @@\ Fontc $(FONTCFLAGS) $? | $(GZIPCMD) > $@#else#define CompressedFontTarget(basename) @@\FontBaseObj(basename).Z: FontSrc(basename) @@\ Fontc $(FONTCFLAGS) $? | $(COMPRESS) > $@#endif#endif/* * MakeFontsDir - generate rules to build fonts.dir database. */#define MakeFontsDir(deplist) @@\all:: fonts.dir @@\ @@\fonts.dir: deplist @@\ MkFontDir . @@\ @@\clean:: @@\ RemoveFile(fonts.dir)/* OS/2 scripts are based on REXX * it is just the SHELL variable that is messed up that forces me to * modify this rule */#define ConfigTargetLong(target,dep,script,args,extra) @@\all:: Configure @@\ @@\Configure:: target.o @@\ @@\target.c: script dep @@\ $(MAKE) SHELL= MAKE=x11make $(MFLAGS) extra Concat(Build,target) @@\ @@\Concat(Build,target): @@\ $(RM) target.c @@\ script args @@\ @@\clean:: @@\ $(RM) target.c#ifndef ServerTargetWithFlags#define ServerTargetWithFlags(server,subdirs,objects,libs,syslibs,flags) @@\AllTarget(ProgramTargetName(server)) @@\ProgramTargetName(server): subdirs objects libs @@\ MoveToBakFile($@) @@\ LinkRule($@,$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ emxbind -a ProgramTargetName(server) -h255 @@\ @@\Concat(load,server): @@\ MoveToBakFile(ProgramTargetName(server)) @@\ LinkRule(ProgramTargetName(server),$(LDOPTIONS),objects,libs $(LDLIBS) syslibs) @@\ @@\loadX:: Concat(load,server) @@\ @@\SentinelProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\SentinelLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\PurifyProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\PurifyLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ProofProgramTarget(server,subdirs objects libs,objects libs $(LDLIBS) syslibs) @@\ProofLinkTarget(Concat(load,server),server,objects libs $(LDLIBS) syslibs) @@\ @@\InstallProgramWithFlags(server,$(BINDIR),flags) @@\ @@\clean:: @@\ RemoveFile(ProgramTargetName(server))#endif /* ServerTargetWithFlags *//* * ServerTarget - rules to compile, link, and relink a normal server * Need a .def file for OS/2 */#ifndef ServerTarget#define ServerTarget(server,subdirs,objects,libs,syslibs) @@\ServerTargetWithFlags(server,subdirs,objects,libs,syslibs server.def,$(_NOOP_)) @@\ @@\ProgramTargetName(server): server.def#endif /* ServerTarget *//* * ToolkitMakeStrings generates a string-table, i.e., a C source * file and the matching header(s), e.g., Xt's StringDefs.c, StringDefs.h, * and Shell.h files; or Motif's XmStrDefs.c and XmStrDefs.h files. * * The 'files' argument is the list of files that will be produced by * this rule, e.g., for Xt they would be "Shell.h StringDefs.c StringDefs.h" * and for Motif they would be "XmStrDefs.c XmStrDefs.h". * * The 'source' argument is the string-list file to be parsed, e.g., in * Xt that would be "util/string.list". For Motif 2.0 it would be * "../../tools/makestr/xmstring.list", and for Motif-CDE1 it would be * "util/xmstring.list". * * The 'options' argument is passed by the library's Imakefile, see the * Xt Imakefile for an example. Typically this would be nothing, -intelabi, * or -sparcabi; there are other choices, but these are typical. * * The 'depends' argument names additional files the target files * depend on. It should name the #ctmpl and #htmpl files from the * 'source' file. * * The 'dest' argument is the C source output file. For Xt this should * be "StringDefs.c", and for all versions of Motif it would be "XmStrDefs.c" * * Headers are generated and named according to data in the 'source' * file. */#ifndef ToolkitMakeStrings#define ToolkitMakeStrings(files,source,options,depends,dest) @@\MAKESTRS = $(CONFIGSRC)/util/makestrs @@\MAKESTRS1 = /makestrs.exe @@\ @@\ProgramTargetName($(MAKESTRS)): $(MAKESTRS).c @@\ ImakeIndir $(CONFIGSRC)/util make SHELL= ProgramTargetName(makestrs) @@\ ImakeHelper 7 $(CONFIGSRC)/util/makestrs.exe / @@\ @@\files: ProgramTargetName($(MAKESTRS)) source depends @@\ RemoveFiles(files) @@\ RunProgram(MAKESTRS1,options < source > dest) @@\ @@\AllTarget(files) @@\ @@\includes:: files @@\ @@\depend:: files @@\ @@\clean:: @@\ RemoveFiles(files)#endif /* ToolkitMakeStrings *//*#define CppSedMagic SedMagic*/#define CppSedMagic sed -e '/^# *[0-9][0-9]* *.*$$/d' -e 's/^XCOMM/#/g' -e 's/^XCOMM[^a-zA-Z0-9_]/#/g'#ifndef InstallNamedTargetNoClobber#define InstallNamedTargetNoClobber(step,srcname,flags,dest,dstname) @@\step:: srcname @@\ MakeDir($(DESTDIR)dest) @@\ if not exist $(subst /,\,$(DESTDIR)dest)\dstname $(INSTALL) $(INSTALLFLAGS) flags srcname $(DESTDIR)dest/dstname#endif /* InstallNamedTargetNoClobber */#if CompressManPages#ifndef InstallManPageLong#define InstallManPageLong(file,destdir,dest) @@\install.man:: file.man @@\ MakeDir($(DESTDIR)destdir) @@\ ImakeHelper 12 file $(DESTDIR)destdir dest#endif#ifndef InstallManPageAliases#define InstallManPageAliases(file,destdir,aliases) @@\install.man:: @@\ MakeDir($(DESTDIR)destdir) @@\ for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.gz $(DESTDIR)destdir/%i.gz#endif#ifndef InstallGenManPageLong#define InstallGenManPageLong(file,destdir,dest,suffix) @@\install.man:: file.man @@\ MakeDir($(DESTDIR)destdir) @@\ ImakeHelper 12 file $(DESTDIR)destdir dest#endif#ifndef InstallMultipleMan#define InstallMultipleMan(list,dest) @@\install.man:: list @@\ MakeDir($(DESTDIR)dest) @@\ for %i in (list) do ImakeHelper 12 %i $(DESTDIR)dest %i#endif#else /* CompressManPages */#ifndef InstallManPageLong#define InstallManPageLong(file,destdir,dest) @@\install.man:: file.man @@\ MakeDir($(DESTDIR)destdir) @@\ ImakeHelper 10 file $(DESTDIR)destdir dest $(MANSUFFIX)#endif#ifndef InstallManPageAliases#define InstallManPageAliases(file,destdir,aliases) @@\install.man:: @@\ MakeDir($(DESTDIR)destdir) @@\ for %i in (aliases) do $(INSTALL) $(DESTDIR)destdir/file.$(MANSUFFIX) $(DESTDIR)destdir/%i.$(MANSUFFIX) #endif#ifndef InstallGenManPageLong#define InstallGenManPageLong(file,destdir,dest,suffix) @@\install.man:: file.man @@\ MakeDir($(DESTDIR)destdir) @@\ ImakeHelper 10 file $(DESTDIR)destdir dest suffix#endif#ifndef InstallMultipleMan#define InstallMultipleMan(list,dest) @@\install.man:: list @@\ MakeDir($(DESTDIR)dest) @@\ for %i in (list) do ImakeHelper 10 %i $(DESTDIR)dest %i $(MANSUFFIX)#endif#endif#ifndef NormalLintTarget#define NormalLintTarget(srclist)#endif /* NormalLintTarget */#ifndef MakeDirectories#define MakeDirectories(step,dirs) @@\step:: @@\ -for %i in (dirs) do $(MKDIRHIER) $(DESTDIR)%i#endif /* MakeDirectories */#ifndef YaccFile#define YaccFile(file,flags) @@\depend:: file.c @@\ @@\file.h file.c: file.y @@\ $(YACC) flags file.y @@\ $(MV) y.tab.c file.c @@\ @if exist y.tab.h $(MV) y.tab.h file.h @@\ @@\clean:: @@\ RemoveFiles(y.tab.c y.tab.h file.h file.c)#endif /* YaccFile */#ifndef StaticLibrary#define StaticLibrary(libpath,libname) Concat4(libpath,/,libname,_s.a)#endif#ifndef MakeXkbDir#define MakeXkbDir(basedir,subdir) @@\all:: Concat(subdir,.dir) @@\ @@\Concat(subdir,.dir): @@\ $(XKBCOMPCMD) -lfhlpR -o Concat(subdir,.dir) * @@\ @@\InstallTarget(install,Concat(subdir,.dir),$(INSTDATFLAGS),basedir)#endif/* This is to replace an ugly hack in /xc/nls/XLC_LOCALE *//* the corresponding Imake.rules rule would be: define LinkFileSpecial(gotodir,tofile,fromfile) @@\ @MakeFlagsToShellFlags(i,set +e); \ @@\ cd dir && (set -x; RemoveFile(tofile); $(LN) fromfile tofile) */#ifndef LinkFileSpecial#define LinkFileSpecial(gotodir,tofile,fromfile) @@\ ImakeHelper 13 gotodir fromfile tofile#endif#ifndef LinkBuildBinary#define LinkBuildBinary(binary) @@\all:: $(BUILDBINDIR)/binary binary @@\ @@\$(BUILDBINDIR)/binary: binary @@\ ImakeHelper 13 $(BUILDBINDIR) $(BUILDBINTOP)/$(CURRENT_DIR)/binary binary @@\ $(CP) binary /#endif /* LinkBuildBinary */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -