view makefile.emx @ 2959:cde59690d3dd

C++: Step 1 of the std::string transition. For all API calls that take UTF8 strings, create std::string versions. We can't have the same functions that only differ in return type... So we need to figure out what to do about those API calls. Also need to decide if the class callback functions should be std::string. Our connect versions can handle the conversions as necessary.
author bsmith@81767d24-ef19-dc11-ae90-00e081727c95
date Tue, 14 Feb 2023 12:42:11 +0000
parents 40a5e6946e2b
children 2d9521396112
line wrap: on
line source

# $Id$

# Dynamic Windows EMX Makefile

CC = gcc
RM = rm -f
RC = rc
MAKE = make
COMPRESS = lxlite
include Version.mk
VER = $(DW_MAJOR_VERSION)$(DW_MINOR_VERSION)
VERDOT = $(DW_MAJOR_VERSION).$(DW_MINOR_VERSION)
AVERREV := $(shell os2\svnrev.cmd)
include SVN.REV

DEFS =
LIBS =

CFLAGS = -O -g -Zomf -Zmt -D__OS2__ -D__ST_MT_ERRNO__ -DUNICODE -DVER_REV=$(VERREV) -I. -Wall -o $(@)
LDFLAGS = -Zdll -static-libgcc
RCFLAGS = -r


COMPATOBJECTS = dwcompat.obj dirent.obj
COMPATSOURCES = dwcompat.c dirent.c

all: dw.dll dwcompat.dll dwtest.exe dwtestoo.exe

dw.dll:  os2\dw.c os2\dw.def
	$(CC) $(CFLAGS) $(DEFS) -o dw.dll os2/dw.c $(LDFLAGS) os2/dw.def

dw.lib: os2\dw.def
	emximp -o dw.lib os2\dw.def

dwcompat.dll:  $(COMPATOBJECTS) os2\dwcompat.def
	$(CC) $(CFLAGS) $(DEFS) -o dwcompat.dll $(COMPATOBJECTS) $(LDFLAGS) -lsocket os2/dwcompat.def

dwcompat.lib: os2\dwcompat.def
	emximp -o dwcompat.lib os2\dwcompat.def

dwtest.exe: dwtest.obj dw.lib dwcompat.lib
	$(CC) $(CFLAGS) -Zomf -Zmt -static-libgcc -Zlinker /pm:pm -o dwtest.exe dwtest.obj -Llib -ldw -ldwcompat os2/dwtest.def

dwtestoo.exe: dwtestoo.obj dw.lib dwcompat.lib
	$(CC) $(CFLAGS) -Zomf -Zmt -static-libgcc -Zlinker /pm:pm -o dwtestoo.exe dwtestoo.obj -Llib -ldw -ldwcompat -lstdc++ os2/dwtest.def


clean:
	$(RM) *.obj *.o *.lib *.res *~ dwtest.exe dwtestoo.exe dw.dll dwcompat.dll SVN.REV

dw.obj: dw.c
	$(CC) $(CFLAGS) -c $<	

dwcompat.obj: dwcompat.c
	$(CC) $(CFLAGS) -c $<	

dirent.obj: os2/dirent.c
	$(CC) $(CFLAGS) -c $<	

dwtest.obj: dwtest.c
	$(CC) $(CFLAGS) -c $<	

dwtestoo.obj: dwtestoo.cpp
	$(CC) $(CFLAGS) -std=c++11 -c $<	


zip: dw.dll
	cp os2/readme-os2.txt .
	zip dwindows-os2-$(VERDOT).zip readme-os2.txt readme.txt dw.dll dwcompat.dll dw.lib dwcompat.lib dw.h dwcompat.h dw.hpp