bc.mak
author Claus Gittinger <cg@exept.de>
Wed, 28 Feb 2007 17:29:36 +0100
changeset 802 4728a2f6fde9
parent 800 755c7c415ae0
child 809 d4cb6164aac7
permissions -rw-r--r--
automatically generated by browser

# $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
LFLAGS_CONSOLE=-ap
LFLAGS_NOCONSOLE=-aa
CRT_STARTUP_CONSOLE=c0x32.obj
CRT_STARTUP_NOCONSOLE=c0w32.obj

# notice: the following 3 are now defined via the make-stx and make-winstx rules.
#
# CFLAGS_APPTYPE=$(CFLAGS_CONSOLE)
# LFLAGS_APPTYPE=$(LFLAGS_CONSOLE)
# CRT_STARTUP=$(CRT_STARTUP_CONSOLE)

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

PROJECT_CONSOLE = stx.exe
PROJECT_NOCONSOLE = winstx.exe
ALLOBJFILES = main.obj
RESFILES = smalltalkWinRC.res
ALLOBJ = $(CRT_STARTUP) $(ALLOBJFILES) $(OBJS)
DEFFILE=$(TOP)\rules\bc_exe.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 

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

exe:  stx winstx

# the executable only
# with console
stx:
	-del main.obj
	$(MAKE) -N -f bc.mak \
		PROJECT=$(PROJECT_CONSOLE) \
		CFLAGS_APPTYPE="$(CFLAGS_CONSOLE)" \
		LFLAGS_APPTYPE="$(LFLAGS_CONSOLE)" \
		CRT_STARTUP="$(CRT_STARTUP_CONSOLE)" theExe

# without console
winstx:
	-del main.obj
	$(MAKE) -N -f bc.mak \
		PROJECT=$(PROJECT_NOCONSOLE) \
		CFLAGS_APPTYPE="$(CFLAGS_NOCONSOLE) -DWIN_LOGFILE="\\"\"winstx_%%d.log\\"\""" \
		LFLAGS_APPTYPE="$(LFLAGS_NOCONSOLE)" \
		CRT_STARTUP="$(CRT_STARTUP_NOCONSOLE)" theExe

# the executable only (internal target; needs some defines)
theExe: $(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 *.*

..\..\libbasic\objbc\libstx_libbasic.dll:
	cd ..\..\libbasic
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libbasic2\objbc\libstx_libbasic2.dll:
	cd ..\..\libbasic2
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libbasic3\objbc\libstx_libbasic3.dll:
	cd ..\..\libbasic3
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libcomp\objbc\libstx_libcomp.dll:
	cd ..\..\libcomp
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libhtml\objbc\libstx_libhtml.dll:
	cd ..\..\libhtml
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libtool\objbc\libstx_libtool.dll:
	cd ..\..\libtool
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libtool2\objbc\libstx_libtool2.dll:
	cd ..\..\libtool2
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libui\objbc\libstx_libui.dll:
	cd ..\..\libui
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libview\objbc\libstx_libview.dll:
	cd ..\..\libview
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libview2\objbc\libstx_libview2.dll:
	cd ..\..\libview2
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libwidg\objbc\libstx_libwidg.dll:
	cd ..\..\libwidg
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libwidg2\objbc\libstx_libwidg2.dll:
	cd ..\..\libwidg2
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\libwidg3\objbc\libstx_libwidg3.dll:
	cd ..\..\libwidg3
	bmake
	cd ..\..\..\stx\projects\smalltalk

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

..\..\goodies\refactoryBrowser\helpers\objbc\libstx_goodies_refactoryBrowser_helpers.dll:
	cd ..\..\goodies\refactoryBrowser\helpers
	bmake
	cd ..\..\..\..\..\stx\projects\smalltalk

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

..\..\goodies\refactoryBrowser\parser\objbc\libstx_goodies_refactoryBrowser_parser.dll:
	cd ..\..\goodies\refactoryBrowser\parser
	bmake
	cd ..\..\..\..\..\stx\projects\smalltalk

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

..\..\goodies\refactoryBrowser\refactoring\objbc\libstx_goodies_refactoryBrowser_refactoring.dll:
	cd ..\..\goodies\refactoryBrowser\refactoring
	bmake
	cd ..\..\..\..\..\stx\projects\smalltalk

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

..\..\goodies\refactoryBrowser\changes\objbc\libstx_goodies_refactoryBrowser_changes.dll:
	cd ..\..\goodies\refactoryBrowser\changes
	bmake
	cd ..\..\..\..\..\stx\projects\smalltalk

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

..\..\libboss\objbc\libstx_libboss.dll:
	cd ..\..\libboss
	bmake
	cd ..\..\..\stx\projects\smalltalk

      


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

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

$(PROJECT_NOCONSOLE): $(ALLOBJFILES) $(OBJS) $(RESFILES) $(DEFFILE)
    $(BCB)\BIN\$(LINKER) $(LFLAGS) $(ALLOBJ), $(PROJECT_NOCONSOLE),, $(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

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



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