-# $Id: GNUmakefile,v 1.6 2014/06/29 23:58:38 mmondor Exp $
+# $Id: GNUmakefile,v 1.7 2014/07/12 08:42:49 mmondor Exp $
CC := cc
+CC_HOST := cc
RM := rm
UNAME := uname
DATE := date
RAWFILES_H := $(addsuffix .h, $(RAWFILES_ENC))
RAWFILES_O := $(addsuffix .o, $(RAWFILES_ENC))
-SDL_CFLAGS := $(shell sdl-config --cflags)
-SDL_LDFLAGS := $(shell sdl-config --libs)
-SDL_LDFLAGS += -lSDL_image -lSDL_mixer -lSDL_net -lSDL_gfx
-
-Z_CFLAGS := -I/usr/local/include
-Z_LDFLAGS := -lz
-
-LDFLAGS += -lm
-
# OS dependent settings follow
OS_TARGET := UNIX
-OS := $(shell $(UNAME) -s)
+SDLCONFIG := sdl-config
+EXE_SUFFIX :=
-ifneq (,$(findstring CYGWIN,$(OS)))
- # cygwin-mingw
+# MINGW=yes gmake
+ifdef MINGW
OS_TARGET := MINGW
- CFLAGS += -mno-cygwin -I/usr/include/mingw -DWIN32
- LDFLAGS += -mwindows -mno-cygwin -L/usr/lib/mingw -L/usr/local/lib
+ OS := MINGW
+else
+ OS := $(shell $(UNAME) -s)
+endif
+
+ifneq (,$(findstring MINGW,$(OS)))
+ # i386--mingw32 from NetBSD, libraries under /usr/local/mingw32/
+ OS_TARGET := MINGW
+ EXE_SUFFIX := .exe
+ PREFIX_PKG := /usr/pkg/cross/i386--mingw32
+ PREFIX_OPT := /usr/local/mingw32
+ CFLAGS += -I$(PREFIX_PKG)/include -I$(PREFIX_OPT)/include -DWIN32
+ LDFLAGS += -mwindows -L$(PREFIX_PKG)/lib -L$(PREFIX_OPT)/lib
# GL_CFLAGS :=
# GL_LDFLAGS := -lopengl32 -lglu32
+ # New path to tools
+ SDLCONFIG := $(PREFIX_OPT)/bin/sdl-config
+# PKG_CONFIG := /usr/pkg/bin/pkg-config
+# PKG_CONFIG_PATH := $(PREFIX_OPT)/lib/pkgconfig
+# MAKE := gmake
+ CPP := $(PREFIX_PKG)/bin/cpp
+ CC := $(PREFIX_PKG)/bin/cc
+# AS := $(PREFIX_PKG)/bin/as
+# CXX := $(PREFIX_PKG)/bin/g++
+# LD := $(PREFIX_PKG)/bin/ld
+# AR := $(PREFIX_PKG)/bin/ar
+ STRIP := $(PREFIX_PKG)/bin/strip
+# RANLIB := $(PREFIX_PKG)/bin/ranlib
+# OBJDUMP := $(PREFIX_PKG)/bin/objdump
+# NM := $(PREFIX_PKG)/bin/nm
+# DLLTOOL := $(PREFIX_PKG)/bin/dlltool
+# WINDRES := $(PREFIX_PKG)/bin/windres
+# HOSTARCH := i386--mingw32
endif
ifneq (,$(findstring Darwin,$(OS)))
ifneq (,$(findstring UNIX,$(OS_TARGET)))
# Other unix (BSD, Linux)
- CFLAGS += -I/usr/include -I/usr/pkg/include -I/usr/X11R7/include
- LDFLAGS += -L/usr/lib -L/usr/pkg/lib -L/usr/X11R7/lib
+ CFLAGS += -I/usr/local/include -I/usr/include -I/usr/pkg/include -I/usr/X11R7/include
+ LDFLAGS += -L/usr/local/lib -L/usr/lib -L/usr/pkg/lib -L/usr/X11R7/lib
# GL_CFLAGS :=
# GL_LDFLAGS := -lGL -lGLU
endif
+SDL_CFLAGS := $(shell $(SDLCONFIG) --cflags)
+SDL_LDFLAGS := $(shell $(SDLCONFIG) --libs)
+SDL_LDFLAGS += -lSDL_image -lSDL_mixer -lSDL_net -lSDL_gfx
+Z_CFLAGS := -I/usr/local/include
+Z_LDFLAGS := -lz
SEED := $(shell $(DATE) +%s)
$(CC) -c $(CFLAGS) -I. -o $@ $<
encode:
- $(CC) -o src/encode src/encode.c
+ $(CC_HOST) -o src/encode src/encode.c
filetoc:
- $(CC) -o src/file-to-c src/file-to-c.c
+ $(CC_HOST) -o src/file-to-c src/file-to-c.c
$(RAWFILES_O): encode filetoc
src/encode $(basename $(basename $@)) $(basename $@) $(SEED)
$(CC) -c -o $@ $(basename $@).c
$(BIN): $(OBJS) $(RAWFILES_O)
- $(CC) -o $@ $(OBJS) $(RAWFILES_O) $(LDFLAGS)
- $(STRIP) $@*
+ $(CC) -o $@$(EXE_SUFFIX) $(OBJS) $(RAWFILES_O) $(LDFLAGS)
+ $(STRIP) $@$(EXE_SUFFIX)
clean:
$(RM) -f $(BIN) $(BIN).exe $(OBJS) \