2
* MAKEMAKE.CMD for OS/2
4
* REXX script to make Makefile from Makefile.in in OS/2
7
* MAKEMAKE.CMD [/R] [ObjDir]
9
* /R: create Makefiles recursively in all subdirectories
10
* ObjDir: should correspond to the MOZ_OBJDIR parameter of
11
* your .mozconfig, if defined
14
call RxFuncAdd 'SysLoadFuncs', 'RexxUtil', 'SysLoadFuncs'
19
if ObjDir = '' then do
21
Makelist.1 = 'Makefile.in.ipc';
25
Switch = SUBWORD(ObjDir, 1, 1);
26
ObjDir = SUBWORD(ObjDir, 2, 1);
27
if (Switch = '/r') | (Switch = '/R') then do
28
CALL SysFileTree 'Makefile.in.ipc', 'Makelist', 'FSO'
32
Makelist.1 = 'Makefile.in.ipc';
38
* Check if ObjDir is correct
41
if ObjDir \= '' then do
42
ObjDir = DIRECTORY(ObjDir);
49
* Find TOPSRCDIR (usally x:/Mozilla)
51
TopSrcDir = DIRECTORY(CurDir);
53
DO WHILE (TopSrcDir \= '') & (FILESPEC('name', TopSrcDir) \= 'mozilla')
54
TopSrcDir = DIRECTORY(..);
57
TopSrcDir = TRANSLATE(TopSrcDir, '/', '\');
58
n = LENGTH(TopSrcDir);
65
do i = 1 to Makelist.0
67
SrcDir = FILESPEC('path', Makelist.i);
68
Drive = FILESPEC('drive', Makelist.i);
69
SrcDir = STRIP(Drive||SrcDir,'T','\');
70
SrcDir = DIRECTORY(SrcDir);
73
if ObjDir \= '' then do
74
RelDir = SUBSTR(SrcDir, n+1);
75
ObjMake = ObjDir||RelDir'\Makefile';
76
CALL SysMkDir ObjDir||RelDir;
80
SrcDir = TRANSLATE(SrcDir, '/', '\');
82
'sed.exe -e "s,@top_srcdir@,'TopSrcDir',g" -e "s,@srcdir@,'SrcDir',g" Makefile.in > 'ObjMake
85
SAY 'topsrcdir:' TopSrcDir
87
end /* do 1 to Makelist.0 ... */
94
SAY 'Usage: MAKEMAKE.CMD [/R] [ObjDir]'