]> git.sesse.net Git - rdpsrv/blob - Xserver/config/cf/hpLib.rules
Import X server from vnc-3.3.7.
[rdpsrv] / Xserver / config / cf / hpLib.rules
1 XCOMM $XConsortium: hpLib.rules /main/16 1996/12/04 11:44:35 swick $
2
3 /*
4  * HP shared library rules
5  */
6
7 #ifndef HasSharedLibraries
8 # define HasSharedLibraries YES
9 #endif
10 #ifndef SharedDataSeparation
11 # define SharedDataSeparation NO
12 #endif
13 #ifndef SharedCodeDef
14 # define SharedCodeDef /**/
15 #endif
16 #ifndef SharedLibraryDef
17 # define SharedLibraryDef /**/
18 #endif
19 #ifndef ShLibIncludeFile
20 # define ShLibIncludeFile <hpLib.tmpl>
21 #endif
22 #ifndef SharedLibraryLoadFlags
23 # define SharedLibraryLoadFlags -b
24 #endif
25 #ifndef PositionIndependentCFlags
26 # define PositionIndependentCFlags +z
27 #endif
28 #ifndef LargePositionIndependentCFlags
29 # define LargePositionIndependentCFlags +Z
30 #endif
31 #ifndef InstLibFlags
32 # define InstLibFlags -m 0555
33 #endif
34 #ifndef UseInstalled
35 /* assert: LdPostLib pulls in -L$(USRLIBDIR), so it doesn't need to be here */
36 # define ExtraLoadFlags -Wl,+s -Wl,+b$(USRLIBDIRPATH)
37 #endif
38 #ifndef UseExportLists
39 # define UseExportLists YES
40 #endif
41
42 /* Pre-linking shared libraries is supported in HP/UX 10. */
43 #if OSMajorVersion > 9
44 # define HPRequiredLibs $(LDPRELIBS) $(REQUIREDLIBS) +s +b $(USRLIBDIRPATH)
45 #else
46 # define HPRequiredLibs $(REQUIREDLIBS)
47 #endif
48
49 #ifndef LinkWithExports
50 # if UseExportLists
51 #  define LinkWithExports(libname,rev,solist,down,up) \
52         (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs)  @@\
53         if [ -f Concat(lib,libname.elist) ]; then \                     @@\
54             RemoveFiles($@.exports $@.list); \                          @@\
55             $(CPP) $(ALLINCLUDES) $(EXTRA_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(DEFINES) Concat(lib,libname.elist) | CppSedMagic >$@.list; \   @@\
56             $(EXPORTLISTGEN) $@~ $@.list > $@.exports; \                @@\
57             (cd down; $(LD) -c up/$@.exports -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs); \ @@\
58             RemoveFiles($@.exports $@.list); \                          @@\
59         fi
60 # else
61 #  define LinkWithExports(libname,rev,solist,down,up) \
62         (cd down; $(LD) -o up/$@~ $(SHLIBLDFLAGS) +h $@ solist HPRequiredLibs)
63 # endif
64 #endif
65
66 /*
67  * InstallSharedLibrary - generate rules to install the shared library.
68  */
69 #ifndef InstallSharedLibrary
70 # define InstallSharedLibrary(libname,rev,dest)                         @@\
71 install:: Concat(lib,libname.sl.rev)                                    @@\
72         MakeDir($(DESTDIR)dest)                                         @@\
73         RMoveToBakFile(Concat($(DESTDIR)dest/lib,libname.sl.rev))       @@\
74         $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) Concat(lib,libname.sl.rev) $(DESTDIR)dest @@\
75         $(RM) Concat($(DESTDIR)dest/lib,libname.sl)                     @@\
76         cd $(DESTDIR)dest; $(LN) Concat(lib,libname.sl.rev) Concat(lib,libname.sl) @@\
77         -RemoveFile(Concat(lib,libname.sl.rev.bak))
78
79 #endif /* InstallSharedLibrary */
80
81 /*
82  * InstallSharedLibraryData - generate rules to install the shared library data
83  */
84 #ifndef InstallSharedLibraryData
85 # define InstallSharedLibraryData(libname,rev,dest)
86 #endif /* InstallSharedLibraryData */
87
88
89 /*
90  * SharedLibraryTarget - generate rules to create a shared library;
91  * build it into a different name so that we do not hose people by having
92  * the library gone for long periods.
93  */
94 #ifndef SharedLibraryTarget
95 # define SharedLibraryTarget(libname,rev,solist,down,up)                @@\
96 AllTarget(Concat(lib,libname.sl.rev))                                   @@\
97                                                                         @@\
98 Concat(lib,libname.sl.rev):  solist $(EXTRALIBRARYDEPS)                 @@\
99         $(RM) $@~                                                       @@\
100         LinkWithExports(libname,rev,solist,down,up)                     @@\
101         -RemoveFiles($@ $@.bak)                                         @@\
102         MoveToBakFile($@)                                               @@\
103         $(MV) $@~ $@                                                    @@\
104         $(RM) Concat(lib,libname.sl)                                    @@\
105         $(LN) $@ Concat(lib,libname.sl)                                 @@\
106         LinkBuildLibrary($@)                                            @@\
107         LinkBuildLibrary(Concat(lib,libname.sl))                        @@\
108                                                                         @@\
109 clean::                                                                 @@\
110         $(RM) Concat(lib,libname.sl.rev) Concat(lib,libname.sl)
111
112 #endif /* SharedLibraryTarget */
113
114 /*
115  * SharedLibraryDataTarget - generate rules to create shlib data file;
116  */
117 #ifndef SharedLibraryDataTarget
118 # define SharedLibraryDataTarget(libname,rev,salist)
119 #endif /* SharedLibraryTarget */