bc.mak
author Stefan Vogel <sv@exept.de>
Fri, 12 Jan 2007 17:53:13 +0100
changeset 771 12d5b71399b8
parent 770 02a4a8722fb3
child 773 a503a088e173
permissions -rw-r--r--
*** empty log message ***

# $Header$
#
# DO NOT EDIT 
# automagically generated from the projectDefinition: stx_projects_smalltalk.
#
# Warning: once you modify this file, do not rerun
# stmkmp or projectDefinition-build again - otherwise, your changes are lost.
#

TOP=..\..       
INCLUDE_TOP=$(TOP)\..

# CFLAGS1= -WD -w-pro -w-ccc -w-rch -w-aus -w-par -x- -r- -k -y -v -vi- -c -tWDR
CFLAGS1= -w-pro -w-ccc -w-rch -w-aus -w-par -x- -r- -k -y -v -vi- -c

CFLAGS_CONSOLE= -tWC -tWR -D_NO_VCL;WIN32
CFLAGS_NOCONSOLE=-tWR -D_NO_VCL;WIN32GUI;WIN32 -DWIN_LOGFILE="\"stx_%%d.log\""
LFLAGS_CONSOLE=-ap
LFLAGS_NOCONSOLE=-aa
CRT_STARTUP_CONSOLE=c0x32.obj
CRT_STARTUP_NOCONSOLE=c0w32.obj

!ifdef NOCONSOLE
CFLAGS_APPTYPE= $(CFLAGS_NOCONSOLE)
LFLAGS_APPTYPE=$(LFLAGS_NOCONSOLE)
CRT_STARTUP=$(CRT_STARTUP_NOCONSOLE)
ALLOBJFILES = winmain.obj
!else
CFLAGS_APPTYPE= $(CFLAGS_CONSOLE)
LFLAGS_APPTYPE=$(LFLAGS_CONSOLE)
CRT_STARTUP=$(CRT_STARTUP_CONSOLE)
ALLOBJFILES = main.obj
!endif

CFLAGS_LOCAL=$(CFLAGS_APPTYPE) \
 -DSTARTUP_CLASS="\"Smalltalk\"" \
 -DSTARTUP_SELECTOR="\"start\"" \
 -DUSE_MODULE_TABLE

#

!INCLUDE $(TOP)\rules\stdHeader_bc
!INCLUDE Make.spec

OBJS= $(COMMON_OBJS) $(WIN32_OBJS)

#
LIBNAME=dummy
STCOPT="+optinline"
LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\libbasic
STCLOCALOPT='-package=$(PACKAGE)' $(LOCALINCLUDES)  $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) $(COMMONSYMFLAG) -varPrefix=$(LIBNAME)

LINKER = ilink32

# LFLAGS = -L$(TOP)\libbc;$(BCB)\lib;$(DEBUGLIBPATH) -H:0x400000 -Hc:0x100000 -S:0x40000 -Sc:0x10000 -ap -Tpe -x -Gn -v -Ao:0x10000
LFLAGS = -L$(TOP)\libbc;$(BCB)\lib -S:0x40000 -Sc:0x10000 $(LFLAGS_APPTYPE) -Tpe -x -Gn -v -Ao:0x10000

!ifndef PROJECT
PROJECT = stx.exe
!endif


RESFILES = smalltalkWinRC.res
ALLOBJ = $(CRT_STARTUP) $(ALLOBJFILES) $(OBJS)
DEFFILE=bc.def

LIBFILES=$(TOP)\libbc\librun.lib
ALLLIB=$(LIBFILES) import32.lib $(RT_LIB)

REQUIRED_LIBS=librun.dll  \
 libstx_libbasic.dll \
 libstx_libbasic2.dll \
 libstx_libbasic3.dll \
 libstx_libcomp.dll \
 libstx_libhtml.dll \
 libstx_libtool.dll \
 libstx_libtool2.dll \
 libstx_libui.dll \
 libstx_libview.dll \
 libstx_libview2.dll \
 libstx_libwidg.dll \
 libstx_libwidg2.dll \
 libstx_libwidg3.dll \
 libstx_goodies_refactoryBrowser_helpers.dll \
 libstx_goodies_refactoryBrowser_parser.dll \
 libstx_goodies_refactoryBrowser_refactoring.dll \
 libstx_goodies_refactoryBrowser_changes.dll \
 libstx_libboss.dll \


REQUIRED_FILES=cs3245.dll symbols.stc $(REQUIRED_LIBS)

REQUIRED_SUPPORT_DIRS=

target: exe winstx

# the executable, all required files and a self-installing-installer-exe
ALL:: exe $(REQUIRED_SUPPORT_DIRS) setup

# the executable only
exe: $(OUTDIR) $(OBJS) $(REQUIRED_FILES) show $(PROJECT) 

# a nullsoft installable delivery
setup: install_stx.exe

# This uses the Nullsoft Installer Package and works in Windows only

install_stx.exe: $(PROJECT) stx.nsi
    $(MAKENSIS) stx.nsi

new:
    bmake clean
    bmake

RESOURCEFILES: stx_RESOURCES stx_BITMAPS \
	       stx_RESOURCES stx_STYLES stx_BITMAPS




libstx_libbasic.dll: ..\..\libbasic\objbc\libstx_libbasic.dll
	copy ..\..\libbasic\objbc\libstx_libbasic.dll *.*

libstx_libbasic2.dll: ..\..\libbasic2\objbc\libstx_libbasic2.dll
	copy ..\..\libbasic2\objbc\libstx_libbasic2.dll *.*

libstx_libbasic3.dll: ..\..\libbasic3\objbc\libstx_libbasic3.dll
	copy ..\..\libbasic3\objbc\libstx_libbasic3.dll *.*

libstx_libcomp.dll: ..\..\libcomp\objbc\libstx_libcomp.dll
	copy ..\..\libcomp\objbc\libstx_libcomp.dll *.*

libstx_libhtml.dll: ..\..\libhtml\objbc\libstx_libhtml.dll
	copy ..\..\libhtml\objbc\libstx_libhtml.dll *.*

libstx_libtool.dll: ..\..\libtool\objbc\libstx_libtool.dll
	copy ..\..\libtool\objbc\libstx_libtool.dll *.*

libstx_libtool2.dll: ..\..\libtool2\objbc\libstx_libtool2.dll
	copy ..\..\libtool2\objbc\libstx_libtool2.dll *.*

libstx_libui.dll: ..\..\libui\objbc\libstx_libui.dll
	copy ..\..\libui\objbc\libstx_libui.dll *.*

libstx_libview.dll: ..\..\libview\objbc\libstx_libview.dll
	copy ..\..\libview\objbc\libstx_libview.dll *.*

libstx_libview2.dll: ..\..\libview2\objbc\libstx_libview2.dll
	copy ..\..\libview2\objbc\libstx_libview2.dll *.*

libstx_libwidg.dll: ..\..\libwidg\objbc\libstx_libwidg.dll
	copy ..\..\libwidg\objbc\libstx_libwidg.dll *.*

libstx_libwidg2.dll: ..\..\libwidg2\objbc\libstx_libwidg2.dll
	copy ..\..\libwidg2\objbc\libstx_libwidg2.dll *.*

libstx_libwidg3.dll: ..\..\libwidg3\objbc\libstx_libwidg3.dll
	copy ..\..\libwidg3\objbc\libstx_libwidg3.dll *.*

libstx_goodies_refactoryBrowser_helpers.dll: ..\..\goodies\refactoryBrowser\helpers\objbc\libstx_goodies_refactoryBrowser_helpers.dll
	copy ..\..\goodies\refactoryBrowser\helpers\objbc\libstx_goodies_refactoryBrowser_helpers.dll *.*

libstx_goodies_refactoryBrowser_parser.dll: ..\..\goodies\refactoryBrowser\parser\objbc\libstx_goodies_refactoryBrowser_parser.dll
	copy ..\..\goodies\refactoryBrowser\parser\objbc\libstx_goodies_refactoryBrowser_parser.dll *.*

libstx_goodies_refactoryBrowser_refactoring.dll: ..\..\goodies\refactoryBrowser\refactoring\objbc\libstx_goodies_refactoryBrowser_refactoring.dll
	copy ..\..\goodies\refactoryBrowser\refactoring\objbc\libstx_goodies_refactoryBrowser_refactoring.dll *.*

libstx_goodies_refactoryBrowser_changes.dll: ..\..\goodies\refactoryBrowser\changes\objbc\libstx_goodies_refactoryBrowser_changes.dll
	copy ..\..\goodies\refactoryBrowser\changes\objbc\libstx_goodies_refactoryBrowser_changes.dll *.*

libstx_libboss.dll: ..\..\libboss\objbc\libstx_libboss.dll
	copy ..\..\libboss\objbc\libstx_libboss.dll *.*

      


show:
    @echo LFLAGS= $(LFLAGS)
    @echo ALLOBJ= $(ALLOBJ)
    @echo PROJECT= $(PROJECT)
    @echo ALLLIB= $(ALLLIB)
    @echo DEFFILE= $(DEFFILE)
    @echo ALLRES= $(ALLRES)

$(PROJECT): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE) $(REQUIRED_LIBS)
    $(BCB)\BIN\$(LINKER) $(LFLAGS) $(ALLOBJ), $(PROJECT),,  $(ALLLIB),  $(DEFFILE),  $(RESFILES)

#$(PROJECT): $(ALLOBJFILES) $(RESFILES) $(DEFFILE)
#    $(BCB)\BIN\$(LINKER) @&&!
#    $(LFLAGS) +
#    $(ALLOBJ), +
#    $(PROJECT),, +
#    $(ALLLIB), +
#    $(DEFFILE), +
#    $(RESFILES)
#!


!INCLUDE $(TOP)\rules\stdRules_bc

#
# additional rules
#
stxWin.res: stxWin.rc stx.ico

main.obj: buildDate.h main.c bc.mak

winmain.obj: buildDate.h main.c bc.mak
	$(CC) $(STX_INCL) $(SYS_INCL) $(FFLAGS) $(DEFS) \
		$(COPTFLAGS) $(DBGFLAGS) $(CFLAGS) -c -o$*.obj main.c
	

main.c: $(TOP)\librun\main.c
	copy $(TOP)\librun\main.c main.c

buildDate.h: $(TOP)\librun\genDate.exe
	$(TOP)\librun\genDate.exe

librun.dll: $(TOP)\librun\librun.dll
	copy $(TOP)\librun\librun.dll librun.dll

cs3245.dll: $(TOP)\support\win32\borland\cs3245.dll
	copy $(TOP)\support\win32\borland\cs3245.dll cs3245.dll

symbols.stc: $(TOP)\include\symbols.stc
	copy $(TOP)\include\symbols.stc symbols.stc

clobber::
	-del librun.dll


winstx:
	$(MAKE) -N -f bc.mak -DNOCONSOLE PROJECT=winstx.exe winstx.exe 



clean::
	-del genDate.exe
	-del c0x32.dll
	-del c0x32.lib
	-del buildDate.h
	-del $(PROJECT)
	-del install_stx.exe
	-del stx.lib
	-del stx.dll
	-del cs3245.dll
	-del $(REQUIRED_FILES)
	-del main.c
	-del *.log
	-del *.res
	-rmdir /S /Q resources
	-rmdir /S /Q objbc

clobber::
	-del *.dll
	-del *.exe

# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
$(OUTDIR)stx_projects_smalltalk.$(O) stx_projects_smalltalk.$(H): stx_projects_smalltalk.st $(INCLUDE_TOP)\stx\libbasic\ApplicationDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)

# ENDMAKEDEPEND --- do not remove this line