put optional cpu, video, sound and machine cores in one library in order to prevent linking issues on small builds, also created temp solution for subtargets for arcade,fruit and pinball machines (nw)

This commit is contained in:
Miodrag Milanovic 2013-06-17 10:27:14 +00:00
parent fc2aaf75b4
commit 6fbd776a21
7 changed files with 49 additions and 17 deletions

3
.gitattributes vendored
View File

@ -2545,6 +2545,7 @@ src/lib/zlib/zlib.h svneol=native#text/plain
src/lib/zlib/zutil.c svneol=native#text/plain
src/lib/zlib/zutil.h svneol=native#text/plain
src/mame/arcade.lst svneol=native#text/plain
src/mame/arcade.mak svneol=native#text/plain
src/mame/audio/8080bw.c svneol=native#text/plain
src/mame/audio/amiga.c svneol=native#text/plain
src/mame/audio/asteroid.c svneol=native#text/plain
@ -3970,6 +3971,7 @@ src/mame/etc/template_device.c svneol=native#text/plain
src/mame/etc/template_device.h svneol=native#text/plain
src/mame/etc/template_driver.c svneol=native#text/plain
src/mame/fruit.lst svneol=native#text/plain
src/mame/fruit.mak svneol=native#text/plain
src/mame/includes/1942.h svneol=native#text/plain
src/mame/includes/1943.h svneol=native#text/plain
src/mame/includes/20pacgal.h svneol=native#text/plain
@ -5215,6 +5217,7 @@ src/mame/mame.c svneol=native#text/plain
src/mame/mame.lst svneol=native#text/plain
src/mame/mame.mak svneol=native#text/plain
src/mame/pinball.lst svneol=native#text/plain
src/mame/pinball.mak svneol=native#text/plain
src/mame/tiny.lst svneol=native#text/plain
src/mame/tiny.mak svneol=native#text/plain
src/mame/video/1942.c svneol=native#text/plain

View File

@ -636,11 +636,8 @@ OBJDIRS = $(OBJ) $(OBJ)/$(TARGET)/$(SUBTARGET)
#-------------------------------------------------
LIBEMU = $(OBJ)/libemu.a
LIBCPU = $(OBJ)/$(TARGET)/$(SUBTARGET)/libcpu.a
LIBOPTIONAL = $(OBJ)/$(TARGET)/$(SUBTARGET)/liboptional.a
LIBDASM = $(OBJ)/$(TARGET)/$(SUBTARGET)/libdasm.a
LIBSOUND = $(OBJ)/$(TARGET)/$(SUBTARGET)/libsound.a
LIBVIDEO = $(OBJ)/$(TARGET)/$(SUBTARGET)/libvideo.a
LIBMACHINE = $(OBJ)/$(TARGET)/$(SUBTARGET)/libmachine.a
LIBUTIL = $(OBJ)/libutil.a
LIBOCORE = $(OBJ)/libocore.a
LIBOSD = $(OBJ)/libosd.a
@ -822,7 +819,7 @@ $(sort $(OBJDIRS)):
ifndef EXECUTABLE_DEFINED
$(EMULATOR): $(EMUINFOOBJ) $(DRIVLISTOBJ) $(DRVLIBS) $(LIBOSD) $(LIBCPU) $(LIBMACHINE) $(LIBEMU) $(LIBDASM) $(LIBSOUND) $(LIBVIDEO) $(LIBUTIL) $(EXPAT) $(SOFTFLOAT) $(JPEG_LIB) $(FLAC_LIB) $(7Z_LIB) $(FORMATS_LIB) $(LUA_LIB) $(ZLIB) $(LIBOCORE) $(MIDI_LIB) $(RESFILE)
$(EMULATOR): $(EMUINFOOBJ) $(DRIVLISTOBJ) $(DRVLIBS) $(LIBOSD) $(LIBOPTIONAL) $(LIBEMU) $(LIBDASM) $(LIBUTIL) $(EXPAT) $(SOFTFLOAT) $(JPEG_LIB) $(FLAC_LIB) $(7Z_LIB) $(FORMATS_LIB) $(LUA_LIB) $(ZLIB) $(LIBOCORE) $(MIDI_LIB) $(RESFILE)
$(CC) $(CDEFS) $(CFLAGS) -c $(SRC)/version.c -o $(VERSIONOBJ)
@echo Linking $@...
$(LD) $(LDFLAGS) $(LDFLAGSEMULATOR) $(VERSIONOBJ) $^ $(LIBS) -o $@

View File

@ -183,39 +183,32 @@ $(LIBEMU): $(LIBEMUOBJS)
include $(EMUSRC)/cpu/cpu.mak
$(LIBCPU): $(CPUOBJS)
$(LIBDASM): $(DASMOBJS)
#-------------------------------------------------
# sound core objects
#-------------------------------------------------
include $(EMUSRC)/sound/sound.mak
$(LIBSOUND): $(SOUNDOBJS)
#-------------------------------------------------
# video core objects
#-------------------------------------------------
include $(EMUSRC)/video/video.mak
$(LIBVIDEO): $(VIDEOOBJS)
#-------------------------------------------------
# machine core objects
#-------------------------------------------------
include $(EMUSRC)/machine/machine.mak
$(LIBMACHINE): $(MACHINEOBJS)
#-------------------------------------------------
# core optional library
#-------------------------------------------------
$(LIBOPTIONAL): $(CPUOBJS) $(SOUNDOBJS) $(VIDEOOBJS) $(MACHINEOBJS)
#-------------------------------------------------
# additional dependencies

13
src/mame/arcade.mak Normal file
View File

@ -0,0 +1,13 @@
###########################################################################
#
# arcade.mak
#
# Small driver-specific example makefile
# Use make SUBTARGET=arcade to build
#
# Copyright Nicola Salmoria and the MAME Team.
# Visit http://mamedev.org for licensing and usage restrictions.
#
###########################################################################
include $(SRC)/$(TARGET)/mame.mak

13
src/mame/fruit.mak Normal file
View File

@ -0,0 +1,13 @@
###########################################################################
#
# fruit.mak
#
# Small driver-specific example makefile
# Use make SUBTARGET=fruit to build
#
# Copyright Nicola Salmoria and the MAME Team.
# Visit http://mamedev.org for licensing and usage restrictions.
#
###########################################################################
include $(SRC)/$(TARGET)/mame.mak

View File

@ -597,6 +597,7 @@ $(MAMEOBJ)/shared.a: \
$(MACHINE)/segacrp2.o \
$(MACHINE)/ticket.o \
$(VIDEO)/avgdvg.o \
$(AUDIO)/decobsmt.o \
#-------------------------------------------------
# manufacturer-specific groupings for drivers
@ -870,7 +871,6 @@ $(MAMEOBJ)/dataeast.a: \
$(DRIVERS)/deco_mlc.o $(VIDEO)/deco_mlc.o \
$(DRIVERS)/deco156.o $(MACHINE)/deco156.o \
$(DRIVERS)/deco32.o $(VIDEO)/deco32.o $(VIDEO)/dvi.o \
$(AUDIO)/decobsmt.o \
$(DRIVERS)/decocass.o $(MACHINE)/decocass.o $(MACHINE)/decocass_tape.o $(VIDEO)/decocass.o \
$(DRIVERS)/deshoros.o \
$(DRIVERS)/dietgo.o $(VIDEO)/dietgo.o \

13
src/mame/pinball.mak Normal file
View File

@ -0,0 +1,13 @@
###########################################################################
#
# pinball.mak
#
# Small driver-specific example makefile
# Use make SUBTARGET=pinball to build
#
# Copyright Nicola Salmoria and the MAME Team.
# Visit http://mamedev.org for licensing and usage restrictions.
#
###########################################################################
include $(SRC)/$(TARGET)/mame.mak