OBJSUFF=obj
SRCSUFF=cpp
-OS2FLAGS=/c /W2 /DOS232 /D__VISAGECPP__ /Dwx_msw /Ss /Q /N100
+OS2FLAGS=/c /W2 /DOS232 /D__VISAGECPP30__ /Dwx_msw /Q /N100
OS2LINKFLAGS=/BASE:0x00010000 /PMTYPE:PM /NOE /NOD /ALIGN:16
OS2LIBFLAGS=/NOL /NOE
OS2LIBS=CPPOM30.lib CPPOOC3.LIB OS2386.LIB
+!if "$(WXMAKINGDLL)" != "0"
+EXTRADLLFLAGS=/DWXMAKINGDLL=1 /Ge- /D__OS2DLL__
+EXTRALNKFLAGS=/DLL
+!endif
+
# Change WXDIR or WXWIN to wherever wxWindows is found
WXDIR = $(WXWIN)
OS2XPMDIR=$(WXDIR)\src\xpm
OS2XPMINC=$(WINXPMDIR)
-OS2XPMLIB=$(WXDIR)\lib\os2xpm.lib
+!if "$(WXMAKINGDLL)" != "1"
+OS2XPMLIB=$(WXDIR)\lib\os2xpm.lib
+!else
+OS2XPMLIB=$(WXDIR)\lib\os2xpm.dll
+!endif
INC=-I$(WXDIR)\src\xpm -I$(OS2XPMINC)
!ifndef FINAL
!endif
!if "$(FINAL)" == "0"
+!if "$(WXMAKINGDLL)" == "1"
+D=DebugOS2DLL
+!else
D=DebugOS2
+!endif
OPT =
DEBUG_FLAGS= /Ti /D__WXDEBUG__ #/Fb
LINK_DEBUG_FLAGS=/DEBUG
!else
# /O1 - smallest code
# /O2 - fastest code
+!if "$(WXMAKINGDLL)" == "1"
+D=RelseOS2DLL
+!else
D=RelseOS2
+!endif
OPT = /O+ /Oc /G5
DEBUG_FLAGS=
LINK_DEBUG_FLAGS=/RELEASE
!endif
-CPPFLAGS=$(OS2FLAGS) $(DEBUG_FLAGS) $(PRECOMP) $(INC) $(OPT) $(CRTFLAG)
+CPPFLAGS=$(OS2FLAGS) $(EXTRADLLFLAGS) $(DEBUG_FLAGS) $(PRECOMP) $(INC) $(OPT) $(CRTFLAG)
+LINKFKAGS=$(OS2LINKFLAGS) $(EXTRALNKFLAGS)
{..\xpm}.c{..\xpm\$D}.obj:
@echo $<
<<
OBJECTS = \
+ ..\xpm\$D\attrib.obj \
..\xpm\$D\crbuffri.obj \
..\xpm\$D\crdatfri.obj \
..\xpm\$D\create.obj \
..\xpm\$D\crifrbuf.obj \
..\xpm\$D\crifrdat.obj \
..\xpm\$D\data.obj \
+ ..\xpm\$D\image.obj \
+ ..\xpm\$D\info.obj \
..\xpm\$D\hashtab.obj \
..\xpm\$D\misc.obj \
..\xpm\$D\parse.obj \
..\xpm\$D\scan.obj \
..\xpm\$D\simx.obj \
..\xpm\$D\wrffrdat.obj \
- ..\xpm\$D\wrffrp.obj \
..\xpm\$D\wrffri.obj
-all: $(OS2XPMLIB)
-
-$(WXDIR)\lib\os2xpm.lib: $(OBJECTS)
+LIBOBJECTS = \
+ attrib.obj \
+ crbuffri.obj \
+ crdatfri.obj \
+ create.obj \
+ crifrbuf.obj \
+ crifrdat.obj \
+ data.obj \
+ image.obj \
+ info.obj \
+ hashtab.obj \
+ misc.obj \
+ parse.obj \
+ rdftodat.obj \
+ rdftoi.obj \
+ rgb.obj \
+ scan.obj \
+ simx.obj \
+ wrffrdat.obj \
+ wrffri.obj
+
+all: $(OBJECTS) $(OS2XPMLIB)
+
+!if "$(WXMAKINGDLL)" != "1"
+
+$(WXDIR)\lib\os2xpm.lib: $(LIBOBJECTS)
touch $(WXDIR)\lib\os2xpm.lib
del $(WXDIR)\lib\os2xpm.lib
ilib $(OS2LIBFLAGS) $@ @<<
$**;
<<
+ del *.obj
+
+!else
+
+# Update the dynamic link library
+$(WXDIR)\lib\os2xpm.dll: $(OBJECTS)
+ icc @<<
+ /B" $(LINKFLAGS)" /Fe$@
+ $(LIBS)
+ $(OBJECTS)
+ $(WXDIR)\lib\os2xpm.def
+<<
+ implib $(WXDIR)\lib\os2xpmd.lib $(WXDIR)\lib\os2xpm.def
+
+!endif
clean:
del $(OS2XPMLIB)
cleanall: clean
+$(LIBOBJECTS):
+ copy ..\xpm\$D\attrib.obj
+ copy ..\xpm\$D\crbuffri.obj
+ copy ..\xpm\$D\crdatfri.obj
+ copy ..\xpm\$D\create.obj
+ copy ..\xpm\$D\crifrbuf.obj
+ copy ..\xpm\$D\crifrdat.obj
+ copy ..\xpm\$D\data.obj
+ copy ..\xpm\$D\image.obj
+ copy ..\xpm\$D\info.obj
+ copy ..\xpm\$D\hashtab.obj
+ copy ..\xpm\$D\misc.obj
+ copy ..\xpm\$D\parse.obj
+ copy ..\xpm\$D\rdftodat.obj
+ copy ..\xpm\$D\rdftoi.obj
+ copy ..\xpm\$D\rgb.obj
+ copy ..\xpm\$D\scan.obj
+ copy ..\xpm\$D\simx.obj
+ copy ..\xpm\$D\wrffrdat.obj
+ copy ..\xpm\$D\wrffri.obj
+