/
makeos2.cmd
180 lines (166 loc) · 7.74 KB
1
2
@echo off
rem this is a simple batch file to build PhysicsFS on OS/2. You need to have
3
4
5
rem the Innotek libc and GCC (or "kLIBC") installed for this to work:
rem
rem http://svn.netlabs.org/libc
6
7
rem
rem This script (and, indeed, our OS/2 support) could use some tweaking.
8
rem Patches go to icculus@icculus.org ...
9
10
set PHYSFSLANG=PHYSFS_LANG_ENGLISH
11
set DEBUGFLAGS=-D_NDEBUG -O2 -s
12
13
rem set CFLAGS=%DEBUGFLAGS% -Wall -Werror -Zomf -Zmt -Zmtd -I. -Izlib123 -c -D__ST_MT_ERRNO__ -DOS2 -DZ_PREFIX -DPHYSFS_SUPPORTS_ZIP -DPHYSFS_SUPPORTS_7Z -DPHYSFS_SUPPORTS_GRP -DPHYSFS_SUPPORTS_WAD -DPHYSFS_SUPPORTS_QPAK -DPHYSFS_SUPPORTS_HOG -DPHYSFS_SUPPORTS_MVL -DPHYSFS_LANG=%PHYSFSLANG% -DHAVE_ASSERT_H
set CFLAGS=%DEBUGFLAGS% -Wall -Werror -Zomf -I. -Iz -c -D__ST_MT_ERRNO__ -DOS2 -DZ_PREFIX -DPHYSFS_SUPPORTS_ZIP -DPHYSFS_SUPPORTS_7Z -DPHYSFS_SUPPORTS_GRP -DPHYSFS_SUPPORTS_WAD -DPHYSFS_SUPPORTS_QPAK -DPHYSFS_SUPPORTS_HOG -DPHYSFS_SUPPORTS_MVL -DHAVE_ASSERT_H
14
15
16
17
18
19
rem goto :dolinking
@echo cleaning up any previous build...
@mkdir bin 2>NUL
@erase /N bin\*.* 2>NUL
20
21
@echo Building export definitions...
22
23
24
25
26
27
@echo ;don't edit this directly! It is rewritten by makeos2.cmd! > bin\test_physfs.def
@echo NAME TESTPHYSFS WINDOWCOMPAT >> bin\test_physfs.def
@echo DESCRIPTION 'PhysicsFS: http://icculus.org/physfs/' >> bin\test_physfs.def
@echo STACKSIZE 0x10000 >> bin\test_physfs.def
@echo BASE=0x10000 >> bin\test_physfs.def
@echo PROTMODE >> bin\test_physfs.def
28
29
@echo ;don't edit this directly! It is rewritten by makeos2.cmd! > bin\physfs.def
30
31
32
33
@echo LIBRARY 'physfs' INITINSTANCE TERMINSTANCE >> bin\physfs.def
@echo STACKSIZE 0x10000 >> bin\physfs.def
@echo CODE LOADONCALL >> bin\physfs.def
@echo DATA LOADONCALL NONSHARED MULTIPLE >> bin\physfs.def
34
@echo DESCRIPTION 'PhysicsFS: http://icculus.org/physfs/' >> bin\physfs.def
35
@echo EXPORTS >> bin\physfs.def
36
37
38
@echo "_PHYSFS_getLinkedVersion" >> bin\physfs.def
@echo "_PHYSFS_init" >> bin\physfs.def
@echo "_PHYSFS_deinit" >> bin\physfs.def
39
@echo "_PHYSFS_isInit" >> bin\physfs.def
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
@echo "_PHYSFS_supportedArchiveTypes" >> bin\physfs.def
@echo "_PHYSFS_freeList" >> bin\physfs.def
@echo "_PHYSFS_getLastError" >> bin\physfs.def
@echo "_PHYSFS_getDirSeparator" >> bin\physfs.def
@echo "_PHYSFS_permitSymbolicLinks" >> bin\physfs.def
@echo "_PHYSFS_getCdRomDirs" >> bin\physfs.def
@echo "_PHYSFS_getBaseDir" >> bin\physfs.def
@echo "_PHYSFS_getUserDir" >> bin\physfs.def
@echo "_PHYSFS_getWriteDir" >> bin\physfs.def
@echo "_PHYSFS_setWriteDir" >> bin\physfs.def
@echo "_PHYSFS_addToSearchPath" >> bin\physfs.def
@echo "_PHYSFS_removeFromSearchPath" >> bin\physfs.def
@echo "_PHYSFS_getSearchPath" >> bin\physfs.def
@echo "_PHYSFS_setSaneConfig" >> bin\physfs.def
@echo "_PHYSFS_mkdir" >> bin\physfs.def
@echo "_PHYSFS_delete" >> bin\physfs.def
@echo "_PHYSFS_getRealDir" >> bin\physfs.def
@echo "_PHYSFS_enumerateFiles" >> bin\physfs.def
@echo "_PHYSFS_exists" >> bin\physfs.def
@echo "_PHYSFS_isDirectory" >> bin\physfs.def
@echo "_PHYSFS_isSymbolicLink" >> bin\physfs.def
@echo "_PHYSFS_openWrite" >> bin\physfs.def
@echo "_PHYSFS_openAppend" >> bin\physfs.def
@echo "_PHYSFS_openRead" >> bin\physfs.def
@echo "_PHYSFS_close" >> bin\physfs.def
@echo "_PHYSFS_read" >> bin\physfs.def
@echo "_PHYSFS_write" >> bin\physfs.def
@echo "_PHYSFS_eof" >> bin\physfs.def
@echo "_PHYSFS_tell" >> bin\physfs.def
@echo "_PHYSFS_seek" >> bin\physfs.def
@echo "_PHYSFS_fileLength" >> bin\physfs.def
@echo "_PHYSFS_swapSLE16" >> bin\physfs.def
@echo "_PHYSFS_swapULE16" >> bin\physfs.def
@echo "_PHYSFS_swapSLE32" >> bin\physfs.def
@echo "_PHYSFS_swapULE32" >> bin\physfs.def
@echo "_PHYSFS_swapSLE64" >> bin\physfs.def
@echo "_PHYSFS_swapULE64" >> bin\physfs.def
@echo "_PHYSFS_swapSBE16" >> bin\physfs.def
@echo "_PHYSFS_swapUBE16" >> bin\physfs.def
@echo "_PHYSFS_swapSBE32" >> bin\physfs.def
@echo "_PHYSFS_swapUBE32" >> bin\physfs.def
@echo "_PHYSFS_swapSBE64" >> bin\physfs.def
@echo "_PHYSFS_swapUBE64" >> bin\physfs.def
@echo "_PHYSFS_getLastModTime" >> bin\physfs.def
@echo "_PHYSFS_readSLE16" >> bin\physfs.def
@echo "_PHYSFS_readULE16" >> bin\physfs.def
@echo "_PHYSFS_readSLE32" >> bin\physfs.def
@echo "_PHYSFS_readULE32" >> bin\physfs.def
@echo "_PHYSFS_readSLE64" >> bin\physfs.def
@echo "_PHYSFS_readULE64" >> bin\physfs.def
@echo "_PHYSFS_readSBE16" >> bin\physfs.def
@echo "_PHYSFS_readUBE16" >> bin\physfs.def
@echo "_PHYSFS_readSBE32" >> bin\physfs.def
@echo "_PHYSFS_readUBE32" >> bin\physfs.def
@echo "_PHYSFS_readSBE64" >> bin\physfs.def
@echo "_PHYSFS_readUBE64" >> bin\physfs.def
@echo "_PHYSFS_writeSLE16" >> bin\physfs.def
@echo "_PHYSFS_writeULE16" >> bin\physfs.def
@echo "_PHYSFS_writeSLE32" >> bin\physfs.def
@echo "_PHYSFS_writeULE32" >> bin\physfs.def
@echo "_PHYSFS_writeSLE64" >> bin\physfs.def
@echo "_PHYSFS_writeULE64" >> bin\physfs.def
@echo "_PHYSFS_writeSBE16" >> bin\physfs.def
@echo "_PHYSFS_writeUBE16" >> bin\physfs.def
@echo "_PHYSFS_writeSBE32" >> bin\physfs.def
@echo "_PHYSFS_writeUBE32" >> bin\physfs.def
@echo "_PHYSFS_writeSBE64" >> bin\physfs.def
@echo "_PHYSFS_writeUBE64" >> bin\physfs.def
@echo "_PHYSFS_setBuffer" >> bin\physfs.def
@echo "_PHYSFS_flush" >> bin\physfs.def
@echo "_PHYSFS_mount" >> bin\physfs.def
@echo "_PHYSFS_getMountPoint" >> bin\physfs.def
@echo "_PHYSFS_setAllocator" >> bin\physfs.def
@echo "_PHYSFS_getCdRomDirsCallback" >> bin\physfs.def
@echo "_PHYSFS_getSearchPathCallback" >> bin\physfs.def
@echo "_PHYSFS_enumerateFilesCallback" >> bin\physfs.def
116
117
118
119
120
@echo "_PHYSFS_utf8ToUcs2" >> bin\physfs.def
@echo "_PHYSFS_utf8FromUcs2" >> bin\physfs.def
@echo "_PHYSFS_utf8ToUcs4" >> bin\physfs.def
@echo "_PHYSFS_utf8FromUcs4" >> bin\physfs.def
@echo "_PHYSFS_utf8FromLatin1" >> bin\physfs.def
121
122
@echo Building export library...
123
emximp -o bin/physfs.lib bin/physfs.def
124
emximp -o bin/physfs.a bin/physfs.def
125
126
127
@echo Compiling PhysicsFS library...
@echo on
128
129
gcc %CFLAGS% -o bin/physfs.obj physfs.c
gcc %CFLAGS% -o bin/physfs_byteorder.obj physfs_byteorder.c
130
gcc %CFLAGS% -o bin/physfs_unicode.obj physfs_unicode.c
131
132
133
gcc %CFLAGS% -o bin/os2.obj platform/os2.c
gcc %CFLAGS% -o bin/dir.obj archivers/dir.c
gcc %CFLAGS% -o bin/grp.obj archivers/grp.c
134
gcc %CFLAGS% -o bin/wad.obj archivers/wad.c
135
gcc %CFLAGS% -o bin/lzma.obj archivers/lzma.c
136
gcc %CFLAGS% -o bin/zip.obj archivers/zip.c
137
gcc %CFLAGS% -o bin/qpak.obj archivers/qpak.c
138
139
gcc %CFLAGS% -o bin/hog.obj archivers/hog.c
gcc %CFLAGS% -o bin/mvl.obj archivers/mvl.c
140
141
142
143
144
145
146
147
148
149
150
151
gcc %CFLAGS% -o bin/adler32.obj zlib123/adler32.c
gcc %CFLAGS% -o bin/compress.obj zlib123/compress.c
gcc %CFLAGS% -o bin/crc32.obj zlib123/crc32.c
gcc %CFLAGS% -o bin/deflate.obj zlib123/deflate.c
gcc %CFLAGS% -o bin/gzio.obj zlib123/gzio.c
gcc %CFLAGS% -o bin/infback.obj zlib123/infback.c
gcc %CFLAGS% -o bin/inffast.obj zlib123/inffast.c
gcc %CFLAGS% -o bin/inflate.obj zlib123/inflate.c
gcc %CFLAGS% -o bin/inftrees.obj zlib123/inftrees.c
gcc %CFLAGS% -o bin/trees.obj zlib123/trees.c
gcc %CFLAGS% -o bin/uncompr.obj zlib123/uncompr.c
gcc %CFLAGS% -o bin/zutil.obj zlib123/zutil.c
152
153
154
155
156
157
158
159
160
161
gcc %CFLAGS% -o bin/7zBuffer.obj lzma/7zBuffer.c
gcc %CFLAGS% -o bin/7zCrc.obj lzma/7zCrc.c
gcc %CFLAGS% -o bin/7zDecode.obj lzma/7zDecode.c
gcc %CFLAGS% -o bin/7zExtract.obj lzma/7zExtract.c
gcc %CFLAGS% -o bin/7zHeader.obj lzma/7zHeader.c
gcc %CFLAGS% -o bin/7zIn.obj lzma/7zIn.c
gcc %CFLAGS% -o bin/7zItem.obj lzma/7zItem.c
gcc %CFLAGS% -o bin/7zMethodID.obj lzma/7zMethodID.c
gcc %CFLAGS% -o bin/LzmaDecode.obj lzma/LzmaDecode.c
gcc %CFLAGS% -o bin/LzmaStateDecode.obj lzma/LzmaStateDecode.c
162
@echo off
163
164
165
:dolinking
@echo Linking PhysicsFS library...
166
gcc %DEBUGFLAGS% -Zdll -Zcrtdll -Zomf -o bin/physfs.dll bin/*.obj bin/physfs.def
167
168
169
170
rem goto :builddone
@echo Compiling test program...
171
gcc %CFLAGS% -o bin/test_physfs.obj test/test_physfs.c
172
@echo Linking test program...
173
gcc %DEBUGFLAGS% -Zomf -Zcrtdll -o bin/test_physfs.exe bin/test_physfs.obj bin/physfs.lib bin/test_physfs.def
174
175
176
177
178
179
:builddone
@echo "All done!"
rem end of makeos2.cmd ...