This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Spelling - megapatch
[metaconfig.git] / U / modified / Unix.U
CommitLineData
959f3c4c
JH
1?RCS: $Id: Unix.U,v 3.0.1.1 1997/02/28 15:20:06 ram Exp $
2?RCS:
3?RCS: Copyright (c) 1991-1993, Raphael Manfredi
4c42341b 4?RCS:
65a32477 5?RCS: You may redistribute only under the terms of the Artistic License,
959f3c4c
JH
6?RCS: as specified in the README file that comes with the distribution.
7?RCS: You may reuse parts of this distribution only within the terms of
65a32477 8?RCS: that same Artistic License; a copy of which may be found at the root
959f3c4c
JH
9?RCS: of the source tree for dist 3.0.
10?RCS:
11?RCS: $Log: Unix.U,v $
12?RCS: Revision 3.0.1.1 1997/02/28 15:20:06 ram
13?RCS: patch61: created
14?RCS:
15?X:
65a32477 16?X: The purpose of this unit is to define things that are common across all
959f3c4c
JH
17?X: known UNIX platforms. If Configure is ported/used on a non-UNIX
18?X: environment, then some of the following variables can be redefined in hint
19?X: files.
20?X:
21?MAKE:Unix _exe _a _o exe_ext lib_ext obj_ext path_sep \
2cb64bf6 22 firstmakefile archobjs rm_try: Oldconfig rm
959f3c4c
JH
23?MAKE: -pick add $@ %<
24?S:_exe:
25?S: This variable defines the extension used for executable files.
7fdfc47f 26?S: DJGPP, Cygwin and OS/2 use '.exe'. Stratus VOS uses '.pm'.
7c2b280c
JH
27?S: On operating systems which do not require a specific extension
28?S: for executable files, this variable is empty.
959f3c4c
JH
29?S:.
30?S:_a:
7fdfc47f 31?S: This variable defines the extension used for ordinary library files.
959f3c4c
JH
32?S: For unix, it is '.a'. The '.' is included. Other possible
33?S: values include '.lib'.
34?S:.
35?S:_o:
36?S: This variable defines the extension used for object files.
37?S: For unix, it is '.o'. The '.' is included. Other possible
38?S: values include '.obj'.
39?S:.
40?S:firstmakefile:
41?S: This variable defines the first file searched by make. On unix,
42?S: it is makefile (then Makefile). On case-insensitive systems,
43?S: it might be something else. This is only used to deal with
44?S: convoluted make depend tricks.
45?S:.
46?S:archobjs:
47?S: This variable defines any additional objects that must be linked
48?S: in with the program on this architecture. On unix, it is usually
49?S: empty. It is typically used to include emulations of unix calls
50?S: or other facilities. For perl on OS/2, for example, this would
51?S: include os2/os2.obj.
52?S:.
53?X: Metaconfig's Obsolete symbol stuff is too over-eager. In the
54?X: perl sources, it picks up things like "P" and "FLOCK" that are
55?X: not used in the way Metaconfig thinks they are. Thus I can't
56?X: just declare these obsolete and then run metaconfig -o.
57?X: Instead, I'll just handle them here.
58?X: Sadly, history has conspired to give us a web of definitions;
59?X: this could have been much simpler.
60?S:lib_ext:
61?S: This is an old synonym for _a.
62?S:.
63?S:exe_ext:
64?S: This is an old synonym for _exe.
65?S:.
66?S:obj_ext:
67?S: This is an old synonym for _o.
68?S:.
69?S:path_sep:
70?S: This is an old synonym for p_ in Head.U, the character
71?S: used to separate elements in the command shell search PATH.
72?S:.
2cb64bf6
MB
73?S:rm_try:
74?S: This is a cleanup variable for try test programs.
75?S: Internal Configure use only.
76?S:.
4c42341b 77?LINT: change p_
959f3c4c 78?INIT:: Trailing extension. Override this in a hint file, if needed.
959f3c4c
JH
79?INIT:: Extra object files, if any, needed on this platform.
80?INIT:archobjs=''
81: Define several unixisms.
82: Hints files or command line option can be used to override them.
83: The convoluted testing is in case hints files set either the old
84: or the new name.
85case "$_exe" in
86'') case "$exe_ext" in
f12ad395 87 '') ;;
959f3c4c
JH
88 *) _exe="$exe_ext" ;;
89 esac
90 ;;
91esac
92case "$_a" in
93'') case "$lib_ext" in
94 '') _a='.a';;
95 *) _a="$lib_ext" ;;
96 esac
97 ;;
98esac
99case "$_o" in
100'') case "$obj_ext" in
101 '') _o='.o';;
102 *) _o="$obj_ext";;
103 esac
104 ;;
105esac
106case "$p_" in
107'') case "$path_sep" in
108 '') p_=':';;
109 *) p_="$path_sep";;
110 esac
111 ;;
112esac
113exe_ext=$_exe
114lib_ext=$_a
115obj_ext=$_o
116path_sep=$p_
117
2cb64bf6
MB
118rm_try="$rm -f try try$_exe a.out .out try.[cho] try.$_o core core.try* try.core*"
119
959f3c4c
JH
120@if firstmakefile
121: Which makefile gets called first. This is used by make depend.
122case "$firstmakefile" in
123'') firstmakefile='makefile';;
124esac
125
126@end