source: trunk/include/odin32.rel.emx.mk@ 10366

Last change on this file since 10366 was 9876, checked in by sandervl, 23 years ago

KSO: makefile updates

File size: 3.8 KB
Line 
1# $Id: odin32.rel.emx.mk,v 1.10 2003-02-28 10:28:11 sandervl Exp $
2
3#
4# Odin32 API
5#
6# RELEASE makefile for the GNU EMX compiler environment.
7#
8# ---------------------------------------------------------------------------------
9# NOTE: this configuration is not supported neither working, it's experimental only.
10# ---------------------------------------------------------------------------------
11
12
13#
14# Library macros.
15#
16SOMLIB = somtk.lib
17RTLLIB = \
18#$(EMX)\lib\mt\c.lib \
19#$(EMX)\lib\mt\c_app.lib \
20#$(EMX)\lib\c_alias.lib \
21#$(EMX)\lib\mt\emx.lib \
22#$(EMX)\lib\emx2.lib \
23#$(EMX)\lib\stdcpp.lib \
24#$(EMX)\lib\gcc.lib \
25$(ODIN32_BASE)\src\msvcrt\libs\m.lib \
26$(EMX)\lib\iberty_s.lib \
27$(EMX)\lib\gcc-lib\i386-pc-os2_emx\3.0.3\mt\gcc.lib \
28$(EMX)\lib\mt\c.lib \
29$(EMX)\lib\mt\c_dllso.lib \
30$(EMX)\lib\mt\sys.lib \
31$(EMX)\lib\c_alias.lib \
32$(EMX)\lib\mt\emx.lib \
33$(EMX)\lib\emx2.lib \
34$(EMX)\lib\gcc-lib\i386-pc-os2_emx\3.0.3\mt\stdcxx.lib \
35$(EMX)\lib\gcc-lib\i386-pc-os2_emx\3.0.3\mt\gpp.lib \
36#$(EMX)\lib\stdcpp.lib \
37#$(EMX)\lib\mt\c_app.lib makes trouble for crtdll \
38
39RTLLIB_O = $(EMX)\lib\mt\c_import.lib $(RTLLIB)
40RTLLIB_NRE =
41DLLENTRY = $(ODIN32_LIB)\dllentry.obj
42ODINCRT = odincrtd
43LIB_DEMANGLE =
44
45
46#
47# Tools
48#
49CC = gcc
50CXX = gcc
51AS = alp
52AS_EMX = as
53LD = gcc
54LD2 = link386
55IMPLIB = implib
56ILIB = emxomfar
57RC = $(ODIN32_TOOLS)\wrc
58OS2RC = rc
59
60
61#
62# Tool Flags
63#
64ASFLAGS = -Mb -Sc -Sv:ALP +Od
65IMPLIBFLAGS = /nologo
66ILIBFLAGS = rcv
67RCFLAGS = -s -I. -I$(CPPMAIN)\include -D__WIN32OS2__
68!ifdef WRC_PREFIX_RESOURCE
69RCFLAGS = $(RCFLAGS) -p $(TARGET)
70!endif
71OS2RCFLAGS = -r -n
72OS2RCLFLAGS = -x2 -n
73
74
75#
76# C Compiler flags.
77# This may look a bit like a mess but, there is usually a reason behind
78# every line and the way it is done. We have some problems with nmake
79# when we add new flags to for example CXXFLAGS too many times.
80#
81!ifdef EXETARGET
82CTARGETFLAGS = -Zexe
83CXXTARGETFLAGS = -Zexe
84!else
85CTARGETFLAGS = -Zdll
86CXXTARGETFLAGS = -Zdll
87!endif
88CXXEXCEPTIONS = -fhandle-exceptions
89CFLAGS = -Zomf -pipe -Wall -Zmt -g -O6 -mcpu=pentium $(CTARGETFLAGS)
90CXXFLAGS = -Zomf -pipe -Wall -Zmt -g -O6 -mcpu=pentium $(CXXTARGETFLAGS)
91CXXFLAGS_ODINCRT = -Zomf -pipe -Wall -Zmt -g -O6 -mcpu=pentium $(CXXTARGETFLAGS)
92CFLAGS_WIN32APP = -Zomf -pipe -Wall -Zmt -g -O6 -mcpu=pentium $(CTARGETFLAGS)
93CXXFLAGS_WIN32APP= -Zomf -pipe -Wall -Zmt -g -O6 -mcpu=pentium $(CXXTARGETFLAGS) $(CXXEXCEPTIONS)
94CINCLUDES = -I$(ODIN32_INCLUDE)\Win -I. -I$(ODIN32_INCLUDE)
95CDEFINES = -D__WIN32OS2__ -D__WINE__ -D__i386__ -DTCPV40HDRS -DCOMCTL32UNDOC
96CDEFINES_ODINCRT = -D__WIN32OS2__ -D__WINE__ -D__i386__
97CDEFINES_WIN32APP= -D__WIN32OS2__ -D__i386__
98
99
100#
101# Linker flags.
102# This may look a bit like a mess but, there is usually a reason behind
103# every line and the way it is done. We have some problems with nmake
104# when we add new flags to for example LD2FLAGS too many times.
105#
106!ifdef EXETARGET
107!ifndef STACKSIZE
108STACKSIZE = 0x50000
109!endif
110! ifdef VIO
111LDTARGETFLAGS = -Zexe -Zstack 80
112LD2TARGETFLAGS = /pmtype:vio /stack:$(STACKSIZE)
113! else
114LDTARGETFLAGS = -Zexe -Zstack 80
115LD2TARGETFLAGS = /pmtype:pm /stack:$(STACKSIZE)
116! endif
117!else
118LDTARGETFLAGS = -Zdll -Zso -Zsys
119LD2TARGETFLAGS = /DLL
120!endif
121LDFLAGS = -Zmt -Zomf -Zmap -Zlinker "/MAP:FULL /Linenumbers /packcode /packdata /exepack:2 /Nod" $(LDTARGETFLAGS) -s
122LDFLAGS_ODINCRT = -Zmt -Zomf -Zmap -Zlinker "/MAP:FULL /Linenumbers /packcode /packdata /exepack:2 " $(LDTARGETFLAGS) -s
123LD2FLAGS = /nologo /noe /map:full /NoIgnoreCase /Linenumbers /packcode /packdata /exepack:2 /nodebug /nod $(LD2TARGETFLAGS)
124LD2FLAGS_ODINCRT = /nologo /noe /map:full /NoIgnoreCase /Linenumbers /packcode /packdata /exepack:2 /nodebug $(LD2TARGETFLAGS)
125
Note: See TracBrowser for help on using the repository browser.