X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=jaguarcore.mak;h=8d7971d00f32f50b4c1ae745d7d99190aa622930;hb=c3254eecf4ad7be7d10cde6a0b803c09de883914;hp=85fbccaea7a219e55ed1802af0476c7fff205c4e;hpb=f76326c730ec5ed013faffa37d655a376fbbc5bb;p=virtualjaguar diff --git a/jaguarcore.mak b/jaguarcore.mak index 85fbcca..8d7971d 100644 --- a/jaguarcore.mak +++ b/jaguarcore.mak @@ -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 @@ -65,6 +77,7 @@ OBJS := \ obj/filedb.o \ obj/gpu.o \ obj/jagbios.o \ + obj/jagbios2.o \ obj/jagcdbios.o \ obj/jagdevcdbios.o \ obj/jagstub1bios.o \ @@ -99,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