# $Id: CYGWIN32_NT,v 1.4 1998/09/26 18:46:59 marcus Exp $

DLLEXT=dll

ifeq ($(BUILDINGDLL),YES)
CW32BASE=$(SUBLIB).base
CW32EXP=$(SUBLIB).exp

EXTRARMFILES=$(CW32BASE) $(CW32EXP)

EXPORTSFILE=$(EXPSYMS).def

builditall:: all

$(EXPORTSFILE): EXPSYMS
	echo "EXPORTS" > $(EXPORTSFILE)
	cat EXPSYMS >> $(EXPORTSFILE)

endif

CW32LIBGGIDLL=libggi.dll
SHLIBGGI_A=libggi.a

CYGWINLIBDIR=/cw32/b19/H-i386-cygwin32/i386-cygwin32/lib
CW32LIBS=-L$(CYGWINLIBDIR) -lcygwin -lkernel32
CW32DLLIBS=$(CW32LIBS) -L$(LIBGGI_TOPLEVEL) -lggi $(SHLIBLDLIBS)
CW32GGIENTRY=__ggi_dllentry@12
CW32ENTRY=__cygwin32_dll_entry@12

define HOST_SHLIB_RULE
	ld --base-file $(CW32BASE) -dll -o $@ $(SHLIBOBJECTS) $(CW32DLLIBS) -e $(CW32ENTRY)

	dlltool --as=as --dllname $@ --def $(EXPORTSFILE) --base-file $(CW32BASE) --output-exp $(CW32EXP)

	ld --base-file $(CW32BASE)  $(CW32EXP) -dll -o $@ $(SHLIBOBJECTS) $(CW32DLLIBS) -e $(CW32ENTRY)

	dlltool --as=as --dllname $@ --def $(EXPORTSFILE) --base-file $(CW32BASE) --output-exp  $(CW32EXP)

	ld  $(CW32EXP) --dll -o $@ $(SHLIBOBJECTS) $(CW32DLLIBS) -e $(CW32ENTRY)
endef

define HOST_LIBGGI_RULE
	echo "EXPORTS" > EXPORTS.def
	cat EXPSYMS >> EXPORTS.def
	ld --base-file libggi.base -dll -o $(CW32LIBGGIDLL) $(SHLIBOBJECTS) $(CW32LIBS) -e $(CW32GGIENTRY)

	dlltool --as=as --dllname $(CW32LIBGGIDLL) --def EXPORTS.def --base-file libggi.base --output-exp libggi.exp

	ld --base-file libggi.base   libggi.exp -dll -o $(CW32LIBGGIDLL) $(SHLIBOBJECTS) $(CW32LIBS) -e $(CW32GGIENTRY)

	dlltool --as=as --dllname $(CW32LIBGGIDLL) --def EXPORTS.def --base-file libggi.base --output-exp  libggi.exp

	ld   libggi.exp --dll -o $(CW32LIBGGIDLL) $(SHLIBOBJECTS) $(CW32LIBS) -e $(CW32GGIENTRY)

#	dlltool --as=as --dllname $(CW32LIBGGIDLL) --def EXPORTS.def --output-lib $(SHLIBGGI_A)
endef

CYGWIN32_NTCC		= gcc
CYGWIN32_NTmake		= make
#CYGWIN32_NTSHLIBCFLAGS	= 

compilertype		= _GNU_
