]> Shamusworld >> Repos - virtualjaguar/blobdiff - jaguarcore.mak
Added Memory Track support. One small step towards full CD-ROM support.
[virtualjaguar] / jaguarcore.mak
index 89faa3bad1e42c1779da55d6a5a3520772aaf89a..a90bb18fdacb697422741da08eafd402b6a22a23 100644 (file)
@@ -7,41 +7,24 @@
 # file GPLv3 for details. ;-)
 #
 
+ifeq ("$(V)","1")
+Q :=
+else
+Q := @
+endif
+
 # Cross compilation with MXE
 #CROSS = i686-pc-mingw32-
 
-# Figure out which system we're compiling for, and set the appropriate variables
-
-ifeq "$(CROSS)" ""
-OSTYPE := $(shell uname -a)
-
-# Win32
-ifeq "$(findstring Msys,$(OSTYPE))" "Msys"
-
-SYSTYPE    := __GCCWIN32__
-SDLLIBTYPE := --libs
-
-# Apple. Should catch both 'darwin' and 'darwin7.0'
-else ifeq "$(findstring Darwin,$(OSTYPE))" "Darwin"
-
-SYSTYPE    := __GCCUNIX__ -D__THINK_STUPID__
-SDLLIBTYPE := --static-libs
-
-# Linux
-else ifeq "$(findstring Linux,$(OSTYPE))" "Linux"
-
 SYSTYPE    := __GCCUNIX__
-SDLLIBTYPE := --libs
-
-# ??? Throw error, unknown OS
-else
 
-$(error OS TYPE UNDETECTED)
-
-endif
+ifneq "$(CROSS)" ""
+SYSTYPE    := __GCCWIN32__
 else
+OSTYPE := $(shell uname -o)
+ifeq "$(OSTYPE)" "Msys"
 SYSTYPE    := __GCCWIN32__
-SDLLIBTYPE := --libs
+endif
 endif
 
 # Set vars for libcdio
@@ -58,15 +41,9 @@ LD      := $(CROSS)gcc
 AR      := $(CROSS)ar
 ARFLAGS := -rs
 
-# Note that we use optimization level 2 instead of 3--3 doesn't seem to gain much over 2
-#CFLAGS  := -MMD -O2 -ffast-math -fomit-frame-pointer `sdl-config --cflags` -D$(SYSTYPE)
-#CXXFLAGS  := -MMD -O2 -ffast-math -fomit-frame-pointer `sdl-config --cflags` -D$(SYSTYPE)
-CFLAGS ?= -O2 -ffast-math -fomit-frame-pointer
-CXXFLAGS ?= -O2 -ffast-math -fomit-frame-pointer
-
 SDL_CFLAGS = `$(CROSS)sdl-config --cflags`
 DEFINES = -D$(SYSTYPE)
-GCC_DEPS = "-MMD"
+GCC_DEPS = -MMD
 
 INCS := -I./src
 
@@ -83,6 +60,7 @@ OBJS := \
        obj/filedb.o       \
        obj/gpu.o          \
        obj/jagbios.o      \
+       obj/jagbios2.o     \
        obj/jagcdbios.o    \
        obj/jagdevcdbios.o \
        obj/jagstub1bios.o \
@@ -93,6 +71,7 @@ OBJS := \
        obj/joystick.o     \
        obj/log.o          \
        obj/memory.o       \
+       obj/memtrack.o     \
        obj/mmu.o          \
        obj/op.o           \
        obj/settings.o     \
@@ -113,18 +92,12 @@ obj:
 
 # Library rules (might not be cross-platform compatible)
 obj/libjaguarcore.a: $(OBJS) 
-       @$(AR) $(ARFLAGS) obj/libjaguarcore.a $(OBJS)
+       $(Q)$(AR) $(ARFLAGS) obj/libjaguarcore.a $(OBJS)
 
 # Main source compilation (implicit rules)...
 
-obj/%.o: src/%.c
-       @echo -e "\033[01;33m***\033[00;32m Compiling $<...\033[00m"
-#      @$(CC) $(CFLAGS) $(INCS) -c $< -o $@
-       @$(CC) $(GCC_DEPS) $(CFLAGS) $(SDL_CFLAGS) $(DEFINES) $(INCS) -c $< -o $@
-
 obj/%.o: src/%.cpp
        @echo -e "\033[01;33m***\033[00;32m Compiling $<...\033[00m"
-#      @$(CC) $(CXXFLAGS) $(INCS) -c $< -o $@
-       @$(CC) $(GCC_DEPS) $(CXXFLAGS) $(SDL_CFLAGS) $(DEFINES) $(INCS) -c $< -o $@
+       $(Q)$(CC) $(GCC_DEPS) $(CXXFLAGS) $(SDL_CFLAGS) $(DEFINES) $(INCS) -c $< -o $@
 
 -include obj/*.d