Work around the 32KB process limit in the build process

This commit is contained in:
Barry Harris 2017-07-03 10:30:51 +00:00
parent 7ce8642a61
commit 5607332a43
4 changed files with 49 additions and 19 deletions

View File

@ -4,7 +4,7 @@ alldir = burn burn/devices burn/snd burn/drv burn/drv/capcom burn/drv/cave burn
burn/drv/toaplan cpu cpu/a68k cpu/arm cpu/arm7 cpu/h6280 cpu/hd6309 cpu/i8039 cpu/i8051 cpu/konami cpu/m68k cpu/m6502 cpu/m6800 \
cpu/m6805 cpu/m6809 cpu/nec cpu/pic16c5x cpu/s2650 cpu/tlcs90 cpu/sh2 cpu/tms32010 cpu/upd7725 cpu/upd7810 cpu/v60 cpu/z80
drvobj = d_dodonpachi.o d_donpachi.o d_esprade.o d_feversos.o d_gaia.o d_guwange.o d_hotdogst.o d_korokoro.o d_mazinger.o \
drvsrc = d_dodonpachi.o d_donpachi.o d_esprade.o d_feversos.o d_gaia.o d_guwange.o d_hotdogst.o d_korokoro.o d_mazinger.o \
d_metmqstr.o d_pwrinst2.o d_sailormn.o d_tjumpman.o d_uopoko.o \
\
d_cps1.o \
@ -84,12 +84,10 @@ drvobj = d_dodonpachi.o d_donpachi.o d_esprade.o d_feversos.o d_gaia.o d_guwang
d_sg1000.o
ifdef INCLUDE_CPLUSPLUS11_FILES
drvobj += d_kinst.o d_wunit.o
drvsrc += d_kinst.o d_wunit.o
endif
depobj := $(drvobj) \
\
burn.o burn_gun.o burn_led.o burn_shift.o burn_memory.o burn_pal.o burn_sound.o burn_sound_c.o cheat.o debug_track.o hiscore.o load.o \
depobj = burn.o burn_gun.o burn_led.o burn_shift.o burn_memory.o burn_pal.o burn_sound.o burn_sound_c.o cheat.o debug_track.o hiscore.o load.o \
tilemap_generic.o tiles_generic.o timer.o vector.o \
\
6821pia.o 8255ppi.o 8257dma.o c169.o eeprom.o gaelco_crypt.o joyprocess.o nb1414m4.o nb1414m4_8bit.o nmk004.o nmk112.o kaneko_tmap.o mb87078.o \

View File

@ -101,6 +101,7 @@ lib += -luser32 -lgdi32 -lcomdlg32 -lcomctl32 -lshell32 -lwinmm -lshlwapi -ladva
depobj += resource.o \
autdep = $(depobj:.o=.d)
drvdep = $(drvsrc:.o=.d)
ifdef BUILD_A68K
a68k.o = $(objdir)cpu/a68k/a68k.o
@ -146,6 +147,8 @@ alldep = $(foreach file,$(autobj:.o=.c), \
$(foreach dir,$(alldir),$(subst $(srcdir),$(objdir), \
$(firstword $(subst .rc,.d,$(wildcard $(srcdir)$(dir)/$(file)))))))
autdrv := $(drvsrc:.cpp=.o)
#
#
# Specify compiler/linker/assembler
@ -308,12 +311,12 @@ vpath %.d $(foreach dir,$(alldir),$(objdir)$(dir)/ )
ifeq ($(MAKELEVEL),1)
ifdef DEPEND
all: init $(autdep) $(autobj)
all: init $(drvdep) $(autdep) $(autobj) $(autdrv)
@$(MAKE) -f makefile.mamemingw -s GCC471=1
else
all: init $(autobj)
all: init $(autobj) $(autdrv)
@$(MAKE) -f makefile.mamemingw -s GCC471=1
@ -333,7 +336,15 @@ endif
ifeq ($(MAKELEVEL),2)
$(NAME).exe: $(allobj)
$(objdir)/drivers.o: $(autdrv)
@echo Linking drivers...
ifdef BUILD_X64_EXE
@$(LD) -m64 -r -nostdlib -o $@ $^
else
@$(LD) -m32 -r -nostdlib -o $@ $^
endif
$(NAME).exe: $(allobj) $(objdir)/drivers.o
@echo
@echo Linking executable... $(NAME).exe
@$(LD) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(lib)
@ -361,10 +372,10 @@ endif
burn.o burn.d: driverlist.h
$(driverlist.h): $(drvobj) $(srcdir)dep/scripts/gamelist.pl
$(driverlist.h): $(drvsrc) $(srcdir)dep/scripts/gamelist.pl
ifdef PERL
@$(srcdir)dep/scripts/gamelist.pl -o $@ -l gamelist.txt \
$(filter %.cpp,$(foreach file,$(drvobj:.o=.cpp),$(foreach dir,$(alldir), \
$(filter %.cpp,$(foreach file,$(drvsrc:.o=.cpp),$(foreach dir,$(alldir), \
$(firstword $(wildcard $(srcdir)$(dir)/$(file))))))
else
ifeq ($(MAKELEVEL),2)

View File

@ -124,6 +124,7 @@ endif
depobj += resource.o \
autdep = $(depobj:.o=.d)
drvdep = $(drvsrc:.o=.d)
ifdef BUILD_A68K
a68k.o = $(objdir)cpu/a68k/a68k.o
@ -168,6 +169,8 @@ alldep = $(foreach file,$(autobj:.o=.c), \
$(foreach file,$(autobj:.o=.rc), \
$(foreach dir,$(alldir),$(subst $(srcdir),$(objdir), \
$(firstword $(subst .rc,.d,$(wildcard $(srcdir)$(dir)/$(file)))))))
autdrv := $(drvsrc:.cpp=.o)
#
#
@ -419,7 +422,7 @@ vpath %.d $(foreach dir,$(alldir),$(objdir)$(dir)/ )
ifeq ($(MAKELEVEL),1)
ifdef DEPEND
all: init $(autdep) $(autobj)
all: init $(drvdep) $(autdep) $(autobj) $(autdrv)
ifdef GCC345
@$(MAKE) -f makefile.mingw -s GCC345=1
endif
@ -435,7 +438,7 @@ endif
else
all: init $(autobj)
all: init $(autobj) $(autdrv)
ifdef GCC345
@$(MAKE) -f makefile.mingw -s GCC345=1
endif
@ -464,7 +467,15 @@ endif
ifeq ($(MAKELEVEL),2)
$(NAME).exe: $(allobj)
$(objdir)/drivers.o: $(autdrv)
@echo Linking drivers...
ifdef BUILD_X64_EXE
@$(LD) -m64 -r -nostdlib -o $@ $^
else
@$(LD) -m32 -r -nostdlib -o $@ $^
endif
$(NAME).exe: $(allobj) $(objdir)/drivers.o
@echo
@echo Linking executable... $(NAME).exe
@$(LD) $(CFLAGS) $(LDFLAGS) -o $@ $^ $(lib)
@ -492,10 +503,10 @@ endif
burn.o burn.d: driverlist.h
$(driverlist.h): $(drvobj) $(srcdir)dep/scripts/gamelist.pl
$(driverlist.h): $(drvsrc) $(srcdir)dep/scripts/gamelist.pl
ifdef PERL
@$(srcdir)dep/scripts/gamelist.pl -o $@ -l gamelist.txt \
$(filter %.cpp,$(foreach file,$(drvobj:.o=.cpp),$(foreach dir,$(alldir), \
$(filter %.cpp,$(foreach file,$(drvsrc:.o=.cpp),$(foreach dir,$(alldir), \
$(firstword $(wildcard $(srcdir)$(dir)/$(file))))))
else
ifeq ($(MAKELEVEL),2)

View File

@ -151,6 +151,8 @@ ifdef BUILD_A68K
allobj += $(a68k.o)
endif
autdrv := $(drvsrc:.cpp=.o)
#
#
# Specify compiler/linker/assembler
@ -303,7 +305,7 @@ vpath %.res $(foreach dir,$(alldir),$(srcdir)$(dir)/ )
ifeq ($(MAKELEVEL),1)
all: init $(autobj) resource.res
all: init $(autdrv) $(autobj) resource.res
$(MAKE) -f makefile.vc
else
@ -320,7 +322,15 @@ endif
ifeq ($(MAKELEVEL),2)
$(NAME).exe: $(allobj)
$(objdir)/drivers.lib: $(autdrv)
@echo Linking drivers...
ifdef BUILD_X64_EXE
@LIB /MACHINE:X64 /LTCG /OUT:$@ $^
else
@LIB /MACHINE:X86 /LTCG /OUT:$@ $^
endif
$(NAME).exe: $(allobj) $(objdir)/drivers.lib
@echo
@echo Linking executable $(NAME).exe...
$(LD) $(LDFLAGS) /OUT:$@ $^ $(lib)
@ -348,10 +358,10 @@ endif
burn.o burn.d: driverlist.h
$(driverlist.h): $(drvobj) $(srcdir)dep/scripts/gamelist.pl
$(driverlist.h): $(drvsrc) $(srcdir)dep/scripts/gamelist.pl
ifdef PERL
@$(srcdir)dep/scripts/gamelist.pl -o $@ -l gamelist.txt \
$(filter %.cpp,$(foreach file,$(drvobj:.o=.cpp),$(foreach dir,$(alldir), \
$(filter %.cpp,$(foreach file,$(drvsrc:.o=.cpp),$(foreach dir,$(alldir), \
$(firstword $(wildcard $(srcdir)$(dir)/$(file))))))
else
ifeq ($(MAKELEVEL),2)