diff options
Diffstat (limited to 'nx-X11/config/cf/sv4Lib.rules')
-rw-r--r-- | nx-X11/config/cf/sv4Lib.rules | 206 |
1 files changed, 206 insertions, 0 deletions
diff --git a/nx-X11/config/cf/sv4Lib.rules b/nx-X11/config/cf/sv4Lib.rules new file mode 100644 index 000000000..e027fdbee --- /dev/null +++ b/nx-X11/config/cf/sv4Lib.rules @@ -0,0 +1,206 @@ +XCOMM $Xorg: sv4Lib.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $ + +/* + * SVR4 shared library rules + */ + +XCOMM $XFree86: xc/config/cf/sv4Lib.rules,v 3.8tsi Exp $ + +#ifndef HasSharedLibraries +# define HasSharedLibraries YES +#endif +#ifndef SharedDataSeparation +# define SharedDataSeparation NO +#endif +#ifndef HasGcc2ForCplusplus +# define HasGcc2ForCplusplus HasGcc2 +#endif +#ifndef SharedCodeDef +# define SharedCodeDef /**/ +#endif +#ifndef SharedLibraryDef +# define SharedLibraryDef /**/ +#endif +#ifndef ShLibIncludeFile +# define ShLibIncludeFile <sv4Lib.tmpl> +#endif +#ifndef SharedLibraryLdCmd +# define SharedLibraryLdCmd $(LD) +#endif +#ifndef SharedLibraryLoadFlags +# define SharedLibraryLoadFlags -G -z text +#endif +#ifndef RpathLoadFlags +#define RpathLoadFlags /**/ +#endif +#ifndef LibraryRpathLoadFlags +#define LibraryRpathLoadFlags RpathLoadFlags +#endif +#ifndef HardCodeLibdirFlag +#define HardCodeLibdirFlag RpathLoadFlags +#endif +#ifndef PositionIndependentCFlags +# if HasGcc2 +# define PositionIndependentCFlags -fPIC +# else +# define PositionIndependentCFlags -K PIC +# endif +#endif +#ifndef PositionIndependentCplusplusFlags +# if HasGcc2ForCplusplus +# define PositionIndependentCplusplusFlags -fPIC +# else +# define PositionIndependentCplusplusFlags -K PIC +# endif +#endif +#ifndef UseExportLists +# define UseExportLists NO +#endif +#ifndef StripInstalledPrograms +# define StripInstalledPrograms NO +#endif + +/* + * InstallSharedLibrary - generate rules to install the shared library. + */ +#ifndef InstallSharedLibrary +#if StripInstalledPrograms +# define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + mcs -d Concat($(DESTDIR)dest/lib,libname.so.rev) @@\ + @if $(SOSYMLINK); then (set -x; \ @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so); \ @@\ + cd $(DESTDIR)dest; \ @@\ + $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so)); fi +#else +# define InstallSharedLibrary(libname,rev,dest) @@\ +install:: Concat(lib,libname.so.rev) @@\ + MakeDir($(DESTDIR)dest) @@\ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ + @if $(SOSYMLINK); then (set -x; \ @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so); \ @@\ + cd $(DESTDIR)dest; \ @@\ + $(LN) Concat(lib,libname.so.rev) Concat(lib,libname.so)); fi +#endif + +#endif /* InstallSharedLibrary */ + +/* + * InstallSharedLibraryData - generate rules to install the shared library data + */ +#ifndef InstallSharedLibraryData +# define InstallSharedLibraryData(libname,rev,dest) +#endif /* InstallSharedLibraryData */ + +#ifndef LinkWithExports +# if UseExportLists +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(CCENVSETUP) SharedLibraryLdCmd -o up/$@~ $(SHLIBLDFLAGS) -h $@ solist $(REQUIREDLIBS)) @@\ + if [ -f Concat(lib,libname.elist) ]; then \ @@\ + $(RM) down/$@.exports $@.list; \ @@\ + $(CPP) $(ALLINCLUDES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) Concat(lib,libname.elist) | CppSedMagic >$@.list; \ @@\ + $(EXPORTLISTGEN) $@~ $@.list > down/$@.exports; \ @@\ + (cd down; $(CCENVSETUP) SharedLibraryLdCmd -o up/$@~ $(SHLIBLDFLAGS) -h $@ ShlibExportListOpt($@.exports) solist $(REQUIREDLIBS)); \ @@\ + $(RM) down/$@.exports $@.list; \ @@\ + fi; +# else +# define LinkWithExports(libname,rev,solist,down,up) \ + (cd down; $(CCENVSETUP) SharedLibraryLdCmd -o up/$@~ $(SHLIBLDFLAGS) -h $@ solist $(REQUIREDLIBS)) +# endif +#endif + +/* + * SharedLibraryTarget - generate rules to create a shared library; + * build it into a different name so that we do not hose people by having + * the library gone for long periods. + */ +#ifndef SharedLibraryTarget +# define SharedLibraryTarget(libname,rev,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): solist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + LinkWithExports(libname,rev,solist,down,up) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @if $(SOSYMLINK); then (set -x; \ @@\ + $(RM) Concat(lib,libname.so); \ @@\ + $(LN) $@ Concat(lib,libname.so)); fi @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibraryMaybe(Concat(lib,libname.so),$(SOSYMLINK)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* SharedLibraryTarget */ + +/* + * SharedDepLibraryTarget - generate rules to create a shared library. + */ +#ifndef SharedDepLibraryTarget +# define SharedDepLibraryTarget(libname,rev,deplist,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): deplist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + LinkWithExports(libname,rev,solist,down,up) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @if $(SOSYMLINK); then (set -x; \ @@\ + $(RM) Concat(lib,libname.so); \ @@\ + $(LN) $@ Concat(lib,libname.so)); fi @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibraryMaybe(Concat(lib,libname.so),$(SOSYMLINK)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) Concat(lib,libname.so) + +#endif /* SharedDepLibraryTarget */ + +/* + * SharedDepCplusplusLibraryTarget - generate rules to create a shared library. + */ +#ifndef SharedDepCplusplusLibraryTarget +#define SharedDepCplusplusLibraryTarget(libname,rev,deplist,solist,down,up) @@\ +AllTarget(Concat(lib,libname.so.rev)) @@\ + @@\ +Concat(lib,libname.so.rev): deplist $(EXTRALIBRARYDEPS) @@\ + $(RM) $@~ @@\ + (cd down; $(CXX) -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @if $(SOSYMLINK); then (set -x; \ @@\ + $(RM) Concat(lib,libname.so); \ @@\ + $(LN) $@ Concat(lib,libname.so)); fi @@\ + LinkBuildLibrary($@) @@\ + LinkBuildLibraryMaybe(Concat(lib,libname.so),$(SOSYMLINK)) @@\ + @@\ +clean:: @@\ + $(RM) Concat(lib,libname.so.rev) +#endif /* SharedDepCplusplusLibraryTarget */ + + +#ifndef SharedDepModuleTarget +#define SharedDepModuleTarget(name,deps,solist) @@\ +AllTarget(name) @@\ + @@\ +name: deps @@\ + $(RM) $@~ @@\ + SharedLibraryLdCmd -o $@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS) @@\ + $(RM) $@ @@\ + $(MV) $@~ $@ @@\ + @@\ +clean:: @@\ + $(RM) name + +#endif /* SharedDepModuleTarget */ + + +/* + * SharedLibraryDataTarget - generate rules to create shlib data file; + */ +#ifndef SharedLibraryDataTarget +# define SharedLibraryDataTarget(libname,rev,salist) +#endif /* SharedLibraryTarget */ |