Blame config/cf/os2Lib.rules

Packit b099d7
XCOMM $XConsortium: os2Lib.rules /main/1 1996/10/31 14:47:29 kaleb $
Packit b099d7
Packit b099d7
Packit b099d7
Packit b099d7
XCOMM $XFree86: xc/config/cf/os2Lib.rules,v 3.7.2.2 1999/07/13 07:09:36 hohndel Exp $
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * OS2/EMX shared library rules (DLL version)
Packit b099d7
 */
Packit b099d7
#ifndef __EMX__
Packit b099d7
#error You must edit os2Lib.rules for your (non-EMX) OS/2 dev system
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef HasSharedLibraries
Packit b099d7
#define HasSharedLibraries YES
Packit b099d7
#endif
Packit b099d7
#ifndef ForceNormalLib
Packit b099d7
#define ForceNormalLib NO
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define SharedOldX NO
Packit b099d7
Packit b099d7
#ifndef SharedDataSeparation
Packit b099d7
#define SharedDataSeparation NO
Packit b099d7
#endif
Packit b099d7
#ifndef SharedCodeDef
Packit b099d7
#define SharedCodeDef /**/
Packit b099d7
#endif
Packit b099d7
#ifndef SharedLibraryDef
Packit b099d7
#define SharedLibraryDef /**/
Packit b099d7
#endif
Packit b099d7
#ifndef ShLibIncludeFile
Packit b099d7
#define ShLibIncludeFile <os2Lib.tmpl>
Packit b099d7
#endif
Packit b099d7
#ifndef SharedLibraryLoadFlags
Packit b099d7
#define SharedLibraryLoadFlags /**/
Packit b099d7
#endif
Packit b099d7
#ifndef PositionIndependentCFlags
Packit b099d7
#define PositionIndependentCFlags -Zdll -Zomf -Zmtd
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef NormalSharedLibObjCompile
Packit b099d7
#define NormalSharedLibObjCompile(options) $(RM) $@                        @@\
Packit b099d7
	$(CC) -c $(CFLAGS) options $(SHLIBDEF) $(SHAREDCODEDEF) $(PICFLAGS) $*.c @@\
Packit b099d7
	touch $*.o
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef InstallSharedLibrary
Packit b099d7
#ifdef BuildImplibs
Packit b099d7
#define InstallSharedLibrary(libname,rev,dest)				@@\
Packit b099d7
install:: libname.dll libname.a	libname.lib				@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	$(INSTALL) -c $(INSTLIBFLAGS) libname.dll $(DESTDIR)dest 	@@\
Packit b099d7
	$(INSTALL) -c $(INSTLIBFLAGS) libname.a $(DESTDIR)dest 		@@\
Packit b099d7
	$(INSTALL) -c $(INSTLIBFLAGS) libname.lib $(DESTDIR)dest
Packit b099d7
#else
Packit b099d7
#define InstallSharedLibrary(libname,rev,dest)				@@\
Packit b099d7
install:: libname.dll libname.a						@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	$(INSTALL) -c $(INSTLIBFLAGS) libname.a $(DESTDIR)dest		@@\
Packit b099d7
	$(INSTALL) -c $(INSTLIBFLAGS) libname.dll $(DESTDIR)dest
Packit b099d7
#endif
Packit b099d7
#endif /* InstallSharedLibrary */
Packit b099d7
Packit b099d7
/*#ifdef UseInstalled
Packit b099d7
#define LinkBuildLibrary(lib) $(_NULLCMD_)
Packit b099d7
#else*/
Packit b099d7
#define LinkBuildLibrary(lib) MakeDir($(BUILDLIBDIR))			@@\
Packit b099d7
	RemoveFile($(BUILDLIBDIR)/lib)					@@\
Packit b099d7
	ImakeIndir $(BUILDLIBDIR) $(LN) $(BUILDINCTOP)/$(CURRENT_DIR)/lib .
Packit b099d7
/*#endif*/
Packit b099d7
Packit b099d7
        EMXIMP = emximp
Packit b099d7
        EMXOMF = emxomf
Packit b099d7
          SHLD = gcc -Zomf -Zdll -Zmtd
Packit b099d7
     SHADDLIBS = -lbsd -lsocket -lc_import
Packit b099d7
#ifndef BuildDllSupportLibs
Packit b099d7
/*#ifdef UseInstalled
Packit b099d7
#define BuildDllSupportLibs(slib) $(_NULLCMD_)
Packit b099d7
#else*/
Packit b099d7
#define BuildDllSupportLibs(slib)					@@\
Packit b099d7
	$(EMXIMP) -o slib.imp slib.def					@@\
Packit b099d7
	$(EMXIMP) -o slib.a slib.imp					@@\
Packit b099d7
	$(EMXOMF) -s -l slib.a 						@@\
Packit b099d7
	LinkBuildLibrary(slib.a)					@@\
Packit b099d7
	LinkBuildLibrary(slib.lib)
Packit b099d7
/*#endif*/
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef BuildDllSupportLibs2
Packit b099d7
/*#ifdef UseInstalled
Packit b099d7
#define BuildDllSupportLibs2(slib) $(_NULLCMD_)
Packit b099d7
#else*/
Packit b099d7
#define BuildDllSupportLibs2(slib)					@@\
Packit b099d7
	$(EMXIMP) -o slib.imp Concat3(slib,os2,.def)			@@\
Packit b099d7
	$(EMXIMP) -o slib.a slib.imp					@@\
Packit b099d7
	$(EMXOMF) -s -l slib.a 						@@\
Packit b099d7
	LinkBuildLibrary(slib.a)					@@\
Packit b099d7
	LinkBuildLibrary(slib.lib)
Packit b099d7
/*#endif*/
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef BuildLibSupportLibs
Packit b099d7
/*#ifdef UseInstalled
Packit b099d7
#define BuildLibSupportLibs(slib) $(_NULLCMD_)
Packit b099d7
#else*/
Packit b099d7
#define BuildLibSupportLibs(slib)					@@\
Packit b099d7
	$(EMXOMF) -s -l slib.a 						@@\
Packit b099d7
	LinkBuildLibrary(slib.a)					@@\
Packit b099d7
	LinkBuildLibrary(slib.lib)
Packit b099d7
/*#endif*/
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef SharedLibraryTarget
Packit b099d7
#define SharedLibraryTarget(libname,rev,solist,down,up)			@@\
Packit b099d7
AllTarget(libname.dll)							@@\
Packit b099d7
.SUFFIXES: .obj .rsp .def						@@\
Packit b099d7
        LBRPATH = $(subst /,\,$(LIBRARY_PATH))				@@\
Packit b099d7
        LBRDEF = Concat3(libname,os2,.def)				@@\
Packit b099d7
	LBRCPPDEF = Concat3(libname,os2,-def.cpp)			@@\
Packit b099d7
	LBRRSP = Concat3(libname,os2,.rsp)				@@\
Packit b099d7
									@@\
Packit b099d7
link.rsp: $(LBRRSP) $(LBRDEF)						@@\
Packit b099d7
	@echo $(LBRPATH)\\dll0.obj+ >link.rsp				@@\
Packit b099d7
	@cat $(LBRRSP) >>link.rsp					@@\
Packit b099d7
	@echo $(LBRPATH)\\mt\\ $(LBRPATH)\\ $(REQUIREDLIBS) bsd socket c_alias c_static c_import os2 emx2 end >>link.rsp	@@\
Packit b099d7
	@echo $(LBRDEF) >>link.rsp					@@\
Packit b099d7
									@@\
Packit b099d7
libname.dll:  $(OBJS) link.rsp						@@\
Packit b099d7
	link386 @link.rsp >nul						@@\
Packit b099d7
	BuildDllSupportLibs2(libname)					@@\
Packit b099d7
	LinkBuildLibrary(libname.dll)					@@\
Packit b099d7
									@@\
Packit b099d7
clean::									@@\
Packit b099d7
	$(RM) libname.lib libname.imp *.obj link.rsp
Packit b099d7
#endif /* SharedLibraryTarget */
Packit b099d7
Packit b099d7
#ifndef NormalLibraryTarget
Packit b099d7
#define	NormalLibraryTarget(libname,objlist)				@@\
Packit b099d7
AllTarget(LibraryTargetName(libname))					@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetName(libname): objlist					@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	MakeLibrary($@,objlist)						@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	BuildLibSupportLibs($*)
Packit b099d7
#endif /* NormalLibraryTarget */
Packit b099d7
Packit b099d7
#ifndef NormalDepLibraryTarget
Packit b099d7
#define	NormalDepLibraryTarget(libname,deplist,objlist)			@@\
Packit b099d7
AllTarget(LibraryTargetName(libname))					@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetName(libname): deplist					@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	MakeLibrary($@,objlist)						@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	BuildLibSupportLibs($*)
Packit b099d7
#endif /* NormalDepLibraryTarget */
Packit b099d7
Packit b099d7
#ifndef SharedLibraryDataTarget
Packit b099d7
#define SharedLibraryDataTarget(libname,rev,salist)
Packit b099d7
#endif /* SharedLibraryDataTarget */
Packit b099d7
Packit b099d7
#ifndef InstallSharedLibraryData
Packit b099d7
#define InstallSharedLibraryData(libname,rev,dest)
Packit b099d7
#endif /* InstallSharedLibraryData */
Packit b099d7
Packit b099d7
#ifndef InstallLibrary
Packit b099d7
#define	InstallLibrary(libname,dest)					@@\
Packit b099d7
install:: LibraryTargetName(libname)					@@\
Packit b099d7
	MakeDir($(DESTDIR)dest)						@@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(libname) $(DESTDIR)dest @@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(libname,.lib) $(DESTDIR)dest @@\
Packit b099d7
	RanLibrary($(RANLIBINSTFLAGS) $(DESTDIR)dest/LibraryTargetName(libname))
Packit b099d7
#endif /* InstallLibrary */
Packit b099d7
Packit b099d7
#ifndef LibMkdir
Packit b099d7
#define LibMkdir(dir) ImakeHelper 11 dir
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef LibCleanDir
Packit b099d7
#define LibCleanDir(dir) 						@@\
Packit b099d7
	ImakeIndir dir call RemoveFiles(*.Osuf)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#define MakeStaticLibrary(libname) $(AR) libname *.o
Packit b099d7
Packit b099d7
#ifndef UnsharedLibraryTarget
Packit b099d7
#define	UnsharedLibraryTarget(libname,objlist,down,up)			@@\
Packit b099d7
AllTarget(LibraryTargetName(Concat(libname,_s)))			@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetName(Concat(libname,_s)): objlist				@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	ImakeIndir down MakeStaticLibrary(up/$@)			@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	_LinkBuildLibrary($@)						@@\
Packit b099d7
									@@\
Packit b099d7
install::	LibraryTargetName(Concat(libname,_s))			@@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(Concat(libname,_s)) $(DESTDIR)$(SHLIBDIR)
Packit b099d7
#endif
Packit b099d7
Packit b099d7
#ifndef UnsharedLibraryTarget3
Packit b099d7
#define	UnsharedLibraryTarget3(libname,objlist1,objlist2,objlist3,down,up) @@\
Packit b099d7
AllTarget(LibraryTargetName(Concat(libname,_s)))			@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetName(Concat(libname,_s)): objlist1 objlist2 objlist3	@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	ImakeIndir down MakeStaticLibrary(up/$@)			@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	_LinkBuildLibrary($@)						@@\
Packit b099d7
									@@\
Packit b099d7
install::	LibraryTargetName(Concat(libname,_s))			@@\
Packit b099d7
	$(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) LibraryTargetName(Concat(libname,_s)) $(DESTDIR)$(SHLIBDIR)
Packit b099d7
#endif /* UnsharedLibraryTarget3 */
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * DebuggedLibraryTarget - generate rules to create a debuggable library.
Packit b099d7
 */
Packit b099d7
#ifndef DebuggedLibraryTarget
Packit b099d7
#define	DebuggedLibraryTarget(libname,objlist)				@@\
Packit b099d7
AllTarget(LibraryTargetNameSuffix(libname,_d))				@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetNameSuffix(libname,_d): objlist $(EXTRALIBRARYDEPS)	@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	ImakeIndir debugger MakeStaticLibrary(../$@)			@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	_LinkBuildLibrary($@)
Packit b099d7
Packit b099d7
#endif /* DebuggedLibraryTarget */
Packit b099d7
Packit b099d7
/*
Packit b099d7
 * ProfiledLibraryTarget - generate rules to create a profiled library.
Packit b099d7
 */
Packit b099d7
#ifndef ProfiledLibraryTarget
Packit b099d7
#define	ProfiledLibraryTarget(libname,objlist)				@@\
Packit b099d7
AllTarget(LibraryTargetNameSuffix(libname,_p))				@@\
Packit b099d7
									@@\
Packit b099d7
LibraryTargetNameSuffix(libname,_p): objlist $(EXTRALIBRARYDEPS)	@@\
Packit b099d7
	RemoveFile($@)							@@\
Packit b099d7
	ImakeIndir profiled MakeStaticLibrary(../$@)			@@\
Packit b099d7
	RanLibrary($@)							@@\
Packit b099d7
	_LinkBuildLibrary($@)
Packit b099d7
Packit b099d7
#endif /* ProfiledLibraryTarget */
Packit b099d7
Packit b099d7
/*
Packit b099d7
define ExtraLibMkdir() $(_NULLCMD_)
Packit b099d7
define ExtraObjCompile(options) $(_NULLCMD_)
Packit b099d7
define ExtraObjCplusplusCompile(options) $(_NULLCMD_)
Packit b099d7
define ExtraCleanDir() $(_NULLCMD_)
Packit b099d7
*/