]> Shamusworld >> Repos - stargem2/blobdiff - Makefile
Finally fixed problems with demo mode.
[stargem2] / Makefile
old mode 100755 (executable)
new mode 100644 (file)
index 40b8c56..0f029a2
--- a/Makefile
+++ b/Makefile
@@ -3,25 +3,24 @@
 #
 # by James L. Hammons
 # (C) 2005 Underground Software
-# This software is licensed under the GPL v2
+# This software is licensed under the GPL v3 or later
 #
 
+FIND = find
+
 ifeq "$(OSTYPE)" "msys"                                                        # Win32
 
 SYSTYPE    = __GCCWIN32__
 EXESUFFIX  = .exe
-GLLIB      = -lopengl32
 ICON       = obj/icon.o
 SDLLIBTYPE = --libs
 MSG        = Win32 on MinGW
 
 else
-#ifeq "$(OSTYPE)" "darwin"
 ifeq "darwin" "$(findstring darwin,$(OSTYPE))" # Should catch both 'darwin' and 'darwin7.0'
 
 SYSTYPE    = __GCCUNIX__ -D_OSX_
 EXESUFFIX  =
-GLLIB      =
 ICON       =
 SDLLIBTYPE = --static-libs
 MSG        = Mac OS X
@@ -30,7 +29,6 @@ else                                                                                  # *nix
 
 SYSTYPE    = __GCCUNIX__
 EXESUFFIX  =
-GLLIB      = -lGL
 ICON       =
 SDLLIBTYPE = --libs
 MSG        = generic Unix/Linux
@@ -42,67 +40,65 @@ CC         = gcc
 LD         = gcc
 TARGET     = stargem2
 
-CFLAGS   = -MMD -Wall -Wno-switch -Wno-uninitialized -O2 -D$(SYSTYPE) -fomit-frame-pointer `sdl-config --cflags`
-CPPFLAGS = -MMD -Wall -Wno-switch -Wno-non-virtual-dtor -Wno-uninitialized -O2 -D$(SYSTYPE) \
-               -fomit-frame-pointer `sdl-config --cflags`
-#              -fomit-frame-pointer `sdl-config --cflags` -g
-#              -fomit-frame-pointer `sdl-config --cflags` -DLOG_UNMAPPED_MEMORY_ACCESSES
+CFLAGS   = -MMD -Wall -Wno-switch -Wno-uninitialized -Wno-unused -O2 -D$(SYSTYPE) -fomit-frame-pointer `sdl2-config --cflags`
+CPPFLAGS = -MMD -Wall -Wno-switch -Wno-non-virtual-dtor -Wno-uninitialized -Wno-unused -O2 -D$(SYSTYPE) \
+               -fomit-frame-pointer `sdl2-config --cflags` \
+               -g
+#              -DLOG_UNMAPPED_MEMORY_ACCESSES
 
 LDFLAGS =
 
-LIBS = -L/usr/local/lib `sdl-config $(SDLLIBTYPE)` -lstdc++ -lz $(GLLIB)
+LIBS = -L/usr/local/lib `sdl2-config $(SDLLIBTYPE)` -lstdc++ -lz
 
 INCS = -I. -Isrc -I/usr/local/include
 
-#THECC = $(CC) $(CFLAGS) $(INCS)
-
 OBJS = \
        obj/dis6808.o       \
        obj/dis6809.o       \
        obj/log.o           \
        obj/v6808.o         \
        obj/v6809.o         \
+       obj/v6821.o         \
        obj/video.o         \
        obj/settings.o      \
        obj/sound.o         \
        obj/sdlemu_config.o \
-       obj/sdlemu_opengl.o \
        obj/timing.o        \
        obj/stargem2.o      \
        $(ICON)
 
 all: checkenv message obj $(TARGET)$(EXESUFFIX)
        @echo
-       @echo "*** Looks like it compiled OK... Give it a whirl!"
+       @echo -e "\033[01;33m***\033[00;32m Looks like it compiled OK... Give it a whirl!\033[00m"
 
 # Check the compilation environment, barf if not appropriate
 
 checkenv:
        @echo
-       @echo -n "*** Checking compilation environment... "
+       @echo -en "\033[01;33m***\033[00;32m Checking compilation environment... \033[00m"
 ifeq "" "$(shell which sdl-config)"
        @echo
        @echo
-       @echo "It seems that you don't have the SDL development libraries installed. If you"
-       @echo "have installed them, make sure that the sdl-config file is somewhere in your"
-       @echo "path and is executable."
+       @echo -e "\033[01;33mIt seems that you don't have the SDL development libraries installed.
+       @echo -e "have installed them, make sure that the sdl-config file is somewhere in your"
+       @echo -e "path and is executable.\033[00m"
        @echo
 #Is there a better way to break out of the makefile?
        @break
 else
-       @echo "OK"
+       @echo -e "\033[01;37mOK\033[00m"
 endif
 
 message:
        @echo
-       @echo "*** Building StarGem 2 for $(MSG)..."
+       @echo -e "\033[01;33m***\033[00;32m Building StarGem 2 for $(MSG)...\033[00m"
        @echo
 
 clean:
-       @echo -n "*** Cleaning out the garbage..."
+       @echo -en "\033[01;33m***\033[00;32m Cleaning out the garbage...\033[00m"
        @rm -rf obj
        @rm -f ./$(TARGET)$(EXESUFFIX)
-       @echo "done!"
+       @echo -e "\033[01;37mdone!\033[00m"
 
 obj:
        @mkdir obj
@@ -111,24 +107,30 @@ obj:
 
 ifneq "" "$(ICON)"
 $(ICON): res/$(TARGET).rc res/$(TARGET).ico
-       @echo "*** Processing icon..."
+       @echo -e "\033[01;33m***\033[00;32m Processing icon...\033[00m"
        @windres -i res/$(TARGET).rc -o $(ICON) --include-dir=./res
 endif
 
 obj/%.o: src/%.c
-       @echo "*** Compiling $<..."
+       @echo -e "\033[01;33m***\033[00;32m Compiling $<...\033[00m"
        @$(CC) $(CFLAGS) $(INCS) -c $< -o $@
 
 obj/%.o: src/%.cpp
-       @echo "*** Compiling $<..."
+       @echo -e "\033[01;33m***\033[00;32m Compiling $<...\033[00m"
        @$(CC) $(CPPFLAGS) $(INCS) -c $< -o $@
 
 $(TARGET)$(EXESUFFIX): $(OBJS)
-       @echo "*** Linking it all together..."
+       @echo -e "\033[01;33m***\033[00;32m Linking it all together...\033[00m"
        @$(LD) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
 #      strip --strip-all $(TARGET)$(EXESUFFIX)
 #      upx -9 $(TARGET)$(EXESUFFIX)
 
+statistics:
+       @echo -n "Lines in source files: "
+       @-$(FIND) ./src -name "*.cpp" | xargs cat | wc -l
+       @echo -n "Lines in header files: "
+       @-$(FIND) ./src -name "*.h" | xargs cat | wc -l
+
 # Pull in dependencies autogenerated by gcc's -MMD switch
 # The "-" in front in there just in case they haven't been created yet