]> Shamusworld >> Repos - virtualjaguar/blobdiff - jaguarcore.mak
UI cleanups, added RAM randomization for main RAM & GPU local RAM.
[virtualjaguar] / jaguarcore.mak
index dd288950862ca89088ec092f1dfa52224454f86f..8d7971d00f32f50b4c1ae745d7d99190aa622930 100644 (file)
@@ -1,35 +1,47 @@
 #
 # Makefile for Virtual Jaguar core library
 #
-# by James L. Hammons
+# by James Hammons
 #
 # This software is licensed under the GPL v3 or any later version. See the
 # file GPLv3 for details. ;-)
 #
 
+# 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)
 
-ifeq "$(findstring Msys,$(OSTYPE))" "Msys"                     # Win32
+# Win32
+ifeq "$(findstring Msys,$(OSTYPE))" "Msys"
 
 SYSTYPE    := __GCCWIN32__
 SDLLIBTYPE := --libs
 
-else ifeq "$(findstring Darwin,$(OSTYPE))" "Darwin"    # Should catch both 'darwin' and 'darwin7.0'
+# Apple. Should catch both 'darwin' and 'darwin7.0'
+else ifeq "$(findstring Darwin,$(OSTYPE))" "Darwin"
 
-SYSTYPE    := __GCCUNIX__ -D_OSX_
+SYSTYPE    := __GCCUNIX__ -D__THINK_STUPID__
 SDLLIBTYPE := --static-libs
 
-else ifeq "$(findstring Linux,$(OSTYPE))" "Linux"              # Linux
+# Linux
+else ifeq "$(findstring Linux,$(OSTYPE))" "Linux"
 
 SYSTYPE    := __GCCUNIX__
 SDLLIBTYPE := --libs
 
-else                                                                                   # ???
+# ??? Throw error, unknown OS
+else
 
 $(error OS TYPE UNDETECTED)
 
+endif
+else
+SYSTYPE    := __GCCWIN32__
+SDLLIBTYPE := --libs
 endif
 
 # Set vars for libcdio
@@ -41,14 +53,14 @@ HAVECDIO :=
 CDIOLIB  :=
 endif
 
-CC      := gcc
-LD      := gcc
-AR      := ar
+CC      := $(CROSS)gcc
+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)
+SDL_CFLAGS = `$(CROSS)sdl-config --cflags`
+DEFINES = -D$(SYSTYPE)
+GCC_DEPS = -MMD
 
 INCS := -I./src
 
@@ -64,6 +76,12 @@ OBJS := \
        obj/file.o         \
        obj/filedb.o       \
        obj/gpu.o          \
+       obj/jagbios.o      \
+       obj/jagbios2.o     \
+       obj/jagcdbios.o    \
+       obj/jagdevcdbios.o \
+       obj/jagstub1bios.o \
+       obj/jagstub2bios.o \
        obj/jagdasm.o      \
        obj/jaguar.o       \
        obj/jerry.o        \
@@ -94,12 +112,8 @@ 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 $@
-
 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 $@
 
 -include obj/*.d