summaryrefslogtreecommitdiff
path: root/web/glasgow/lit2x-0.16/mkworld/install-GEN.ljm
blob: 615223d66ac2ea2a7de8c23833cd1559fd477d13 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
%************************************************************************
%*									*
\section[mkworld-install-GEN]{General stuff about installing things}
%*									*
%************************************************************************

\begin{code}
/*# Where and how to install things (generally) */
/*# [An individual project is likely to have its own ideas] */
/*# WHERE: */

#ifndef InstRootDir
#define InstRootDir /usr/local
#endif
/* platform-specific binaries */
#ifndef InstBinDir
#define InstBinDir $(INSTROOT)/bin/$(HOSTPLATFORM)
#endif
/* scripts are platform-independent executables */
#ifndef InstScriptDir
#define InstScriptDir $(INSTROOT)/bin
#endif
/* "Lib" is where platform-specific stuff goes;
 * "Data" is where platform-independent stuff goes.
 * [arbitrary]
 */
#ifndef InstLibDir
#define InstLibDir $(INSTROOT)/lib/$(HOSTPLATFORM)
#endif
#ifndef InstDataDir
#define InstDataDir $(INSTROOT)/lib
#endif
INSTROOT      = InstRootDir
INSTBINDIR    = InstBinDir
INSTSCRIPTDIR = InstScriptDir
INSTLIBDIR    = InstLibDir
INSTDATADIR   = InstDataDir

/* top of manual page tree to install in */
/* NB: not necessarily the same place as to look for man pages (?) */
#ifndef InstManRoot
#define InstManRoot ManDirectoryRoot
#endif
/* prefix for man page _sources_ (vs .../cat) */
#ifndef InstManSrcRoot
#define InstManSrcRoot $(INSTMANROOT)/man
#endif
/* man pages for commands */
#ifndef InstComManDir /* man pages for commands */
#define InstComManDir CAT2($(INSTMANSRCROOT),$(COMMANSUFFIX))
#endif
/* man pages for library routines */
#ifndef InstLibManDir
#define InstLibManDir CAT2($(INSTMANSRCROOT),$(LIBMANSUFFIX))
#endif
/* man pages for system commands */
#ifndef InstSysManDir
#define InstSysManDir CAT2($(INSTMANSRCROOT),$(SYSMANSUFFIX))
#endif

/* suffix for installing commands'/etcs' man pages */
#ifndef ComManSuffix
#define ComManSuffix    l               /* use just one tab or cpp will die */
#endif
#ifndef LibManSuffix
#define LibManSuffix    3               /* use just one tab or cpp will die */
#endif
#ifndef SysManSuffix
#define SysManSuffix    8               /* use just one tab or cpp will die */
#endif
INSTMANROOT    = InstManRoot
INSTMANSRCROOT = InstManSrcRoot
INSTCOMMANDIR  = InstComManDir
INSTLIBMANDIR  = InstLibManDir
INSTSYSMANDIR  = InstSysManDir
COMMANSUFFIX   = ComManSuffix
LIBMANSUFFIX   = LibManSuffix
SYSMANSUFFIX   = SysManSuffix

#ifndef InstInfoDir
#define InstInfoDir $(INSTROOT)/info
#endif
INSTINFODIR    = InstInfoDir

/*# HOW: */
/* this stuff about "who" does the installing doesn't have make vars
 * as it is not intended to be runtime-changeable.
 */
#ifndef InstOwner
#ifdef Owner
#define InstOwner -o Owner
#else
#define InstOwner       /* as nothing */
#endif
#endif
#ifndef InstGroup
#ifdef Group
#define InstGroup -g Group
#else
#define InstGroup       /* as nothing */
#endif
#endif

#ifndef InstFileFlags
#define InstFileFlags   /* as nothing */
#endif
#ifndef InstStrip
#define InstStrip       /* as nothing */
#endif
#ifndef InstBinFlags
#define InstBinFlags -m 0755 InstOwner InstGroup InstFileFlags InstStrip
#endif
/*
	No strip flags on rest of these -- avoids message from install
	about stripping non-binaries.
*/
#ifndef InstScriptFlags
#define InstScriptFlags -m 0755 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstLibFlags
#define InstLibFlags -m 0644 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstDataLibFlags
#define InstDataLibFlags -m 0644 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstIncFlags
#define InstIncFlags -m 0644 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstDataFlags
#define InstDataFlags -m 0644 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstManFlags
#define InstManFlags -m 0644 InstOwner InstGroup InstFileFlags
#endif
#ifndef InstRanlibFlags
#define InstRanlibFlags /*none*/
#endif
INSTBINFLAGS    = InstBinFlags
INSTSCRIPTFLAGS = InstScriptFlags
INSTLIBFLAGS    = InstLibFlags
INSTINCFLAGS    = InstIncFlags		/* flags for include files */
INSTDATAFLAGS   = InstDataFlags
INSTMANFLAGS    = InstManFlags
INSTRANLIBFLAGS = InstRanlibFlags
\end{code}