You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/games-emulation/sdlmame/files/sdlmame-0.149-QA.patch

192 lines
5.3 KiB

commit 938cfdf1f01bcc9ac736249ee6458a774d560738
Author: hasufell <hasufell@gentoo.org>
Date: Tue Jun 25 23:48:02 2013 +0200
QA: respect several environment variables
such as CC,CFLAGS,PKG_CONFIG...
diff --git a/makefile b/makefile
index ad6ae2d..dd4598d 100644
--- a/makefile
+++ b/makefile
@@ -317,13 +317,15 @@ BUILD_EXE = $(EXE)
endif
# compiler, linker and utilities
-AR = @ar
-CC = @gcc
-LD = @g++
+AR ?= @ar
+CC ?= @gcc
+CXX ?= @g++
+LD = $(CXX)
MD = -mkdir$(EXE)
RM = @rm -f
OBJDUMP = @objdump
-PYTHON = @python
+PYTHON ?= @python
+PKG_CONFIG ?= pkg-config
#-------------------------------------------------
@@ -458,7 +460,7 @@ CPPONLYFLAGS =
# CFLAGS is defined based on C or C++ targets
# (remember, expansion only happens when used, so doing it here is ok)
-CFLAGS = $(CCOMFLAGS) $(CPPONLYFLAGS)
+CFLAGS += $(CCOMFLAGS) $(CPPONLYFLAGS)
# we compile C-only to C89 standard with GNU extensions
# we compile C++ code to C++98 standard with GNU extensions
@@ -466,9 +468,6 @@ CONLYFLAGS += -std=gnu89
CPPONLYFLAGS += -x c++ -std=gnu++98
COBJFLAGS += -x objective-c++
-# this speeds it up a bit by piping between the preprocessor/compiler/assembler
-CCOMFLAGS += -pipe
-
# add -g if we need symbols, and ensure we have frame pointers
ifdef SYMBOLS
CCOMFLAGS += -g$(SYMLEVEL) -fno-omit-frame-pointer
@@ -484,19 +483,6 @@ ifdef PROFILE
CCOMFLAGS += -pg
endif
-# add the optimization flag
-CCOMFLAGS += -O$(OPTIMIZE)
-
-# add the error warning flag
-ifndef NOWERROR
-CCOMFLAGS += -Werror
-endif
-
-# if we are optimizing, include optimization options
-ifneq ($(OPTIMIZE),0)
-CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
-endif
-
# add a basic set of warnings
CCOMFLAGS += \
-Wall \
@@ -576,14 +562,6 @@ endif
# LDFLAGS are used generally; LDFLAGSEMULATOR are additional
# flags only used when linking the core emulator
-LDFLAGS =
-ifneq ($(TARGETOS),macosx)
-ifneq ($(TARGETOS),os2)
-ifneq ($(TARGETOS),solaris)
-LDFLAGS = -Wl,--warn-common
-endif
-endif
-endif
LDFLAGSEMULATOR =
# add profiling information for the linker
@@ -591,13 +569,6 @@ ifdef PROFILE
LDFLAGS += -pg
endif
-# strip symbols and other metadata in non-symbols and non profiling builds
-ifndef SYMBOLS
-ifneq ($(TARGETOS),macosx)
-LDFLAGS += -s
-endif
-endif
-
# output a map file (emulator only)
ifdef MAP
LDFLAGSEMULATOR += -Wl,-Map,$(FULLNAME).map
diff --git a/src/osd/sdl/sdl.mak b/src/osd/sdl/sdl.mak
index 84332ef..36655d3 100644
--- a/src/osd/sdl/sdl.mak
+++ b/src/osd/sdl/sdl.mak
@@ -24,6 +24,8 @@
# uncomment and edit next line to specify a distribution
# supported debian-stable, ubuntu-intrepid
+PKG_CONFIG ?= pkg-config
+
# DISTRO = debian-stable
# DISTRO = ubuntu-intrepid
# DISTRO = gcc44-generic
@@ -88,9 +90,9 @@ SDL_LIBVER = sdl
endif
ifdef SDL_INSTALL_ROOT
-SDL_CONFIG = $(SDL_INSTALL_ROOT)/bin/$(SDL_LIBVER)-config
+SDL_CONFIG ?= $(SDL_INSTALL_ROOT)/bin/$(SDL_LIBVER)-config
else
-SDL_CONFIG = $(SDL_LIBVER)-config
+SDL_CONFIG ?= $(SDL_LIBVER)-config
endif
ifeq ($(SDL_LIBVER),sdl2)
@@ -187,8 +189,8 @@ SYNC_IMPLEMENTATION = tc
SDL_NETWORK = taptun
ifndef NO_USE_MIDI
-INCPATH += `pkg-config --cflags alsa`
-LIBS += `pkg-config --libs alsa`
+INCPATH += $(shell $(PKG_CONFIG) --cflags alsa)
+LIBS += $(shell $(PKG_CONFIG) --libs alsa)
endif
endif
@@ -478,10 +480,10 @@ else
# Remove the "/SDL" component from the include path so that we can compile
# files (header files are #include "SDL/something.h", so the extra "/SDL"
# causes a significant problem)
-INCPATH += `sdl-config --cflags | sed 's:/SDL::'`
+INCPATH += $(shell $(SDL_CONFIG) --cflags | sed 's:/SDL::')
CCOMFLAGS += -DNO_SDL_GLEXT
# Remove libSDLmain, as its symbols conflict with SDLMain_tmpl.m
-LIBS += `sdl-config --libs | sed 's/-lSDLmain//'` -lpthread
+LIBS += $(shell $(SDL_CONFIG) --libs | sed 's/-lSDLmain//') -lpthread
DEFS += -DMACOSX_USE_LIBSDL
endif # MACOSX_USE_LIBSDL
@@ -534,8 +536,8 @@ INCPATH += -I$(SDL_INSTALL_ROOT)/include/directfb
endif
endif
-INCPATH += `pkg-config --cflags fontconfig`
-LIBS += `pkg-config --libs fontconfig`
+INCPATH += $(shell $(PKG_CONFIG) --cflags fontconfig)
+LIBS += $(shell $(PKG_CONFIG) --libs fontconfig)
ifeq ($(SDL_LIBVER),sdl2)
LIBS += -lSDL2_ttf
@@ -620,8 +622,8 @@ endif # Win32
ifeq ($(BASE_TARGETOS),os2)
-INCPATH += `sdl-config --cflags`
-LIBS += `sdl-config --libs`
+INCPATH += $(shell $(SDL_CONFIG) --cflags)
+LIBS += $(shell $(SDL_CONFIG) --libs)
endif # OS2
@@ -696,14 +698,14 @@ LIBS += -lX11 -lXinerama
# The newer debugger uses QT
ifndef NO_USE_QTDEBUG
-INCPATH += `pkg-config QtGui --cflags`
-LIBS += `pkg-config QtGui --libs`
+INCPATH += $(shell $(PKG_CONFIG) QtGui --cflags)
+LIBS += $(shell $(PKG_CONFIG) QtGui --libs)
else
# the old-new debugger relies on GTK+ in addition to the base SDLMAME needs
# Non-X11 builds can not use the debugger
-INCPATH += `pkg-config --cflags-only-I gtk+-2.0` `pkg-config --cflags-only-I gconf-2.0`
-CCOMFLAGS += `pkg-config --cflags-only-other gtk+-2.0` `pkg-config --cflags-only-other gconf-2.0`
-LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
+INCPATH += $(shell $(PKG_CONFIG) --cflags-only-I gtk+-2.0 gconf-2.0)
+CCOMFLAGS += $(shell $(PKG_CONFIG) --cflags-only-other gtk+-2.0 gconf-2.0)
+LIBS += $(shell $(PKG_CONFIG) --libs gtk+-2.0 gconf-2.0)
endif
# some systems still put important things in a different prefix