178 lines
4.7 KiB
Diff
178 lines
4.7 KiB
Diff
|
--- makefile
|
||
|
+++ makefile
|
||
|
@@ -314,13 +314,14 @@
|
||
|
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
|
||
|
|
||
|
|
||
|
#-------------------------------------------------
|
||
|
@@ -455,7 +456,7 @@
|
||
|
|
||
|
# 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
|
||
|
@@ -463,9 +464,6 @@
|
||
|
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
|
||
|
@@ -479,19 +477,6 @@
|
||
|
# add profiling information for the compiler
|
||
|
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
|
||
|
@@ -565,26 +550,11 @@
|
||
|
|
||
|
# 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
|
||
|
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)
|
||
|
--- src/osd/sdl/sdl.mak
|
||
|
+++ 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
|
||
|
@@ -91,9 +93,9 @@
|
||
|
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)
|
||
|
@@ -190,8 +192,8 @@
|
||
|
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
|
||
|
@@ -476,10 +478,10 @@
|
||
|
# 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
|
||
|
|
||
|
@@ -532,8 +534,8 @@
|
||
|
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
|
||
|
@@ -616,8 +618,8 @@
|
||
|
|
||
|
ifeq ($(BASE_TARGETOS),os2)
|
||
|
|
||
|
-INCPATH += `sdl-config --cflags`
|
||
|
-LIBS += `sdl-config --libs`
|
||
|
+INCPATH += $(shell $(SDL_CONFIG) --cflags)
|
||
|
+LIBS += $(shell $(SDL_CONFIG) --libs)
|
||
|
|
||
|
endif # OS2
|
||
|
|
||
|
@@ -690,15 +692,15 @@
|
||
|
|
||
|
# the 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)
|
||
|
#CCOMFLAGS += -DGTK_DISABLE_DEPRECATED
|
||
|
|
||
|
# The newer debugger uses QT
|
||
|
ifdef USE_QTDEBUG
|
||
|
-INCPATH += `pkg-config QtGui --cflags`
|
||
|
-LIBS += `pkg-config QtGui --libs`
|
||
|
+INCPATH += $(shell $(PKG_CONFIG) QtGui --cflags)
|
||
|
+LIBS += $(shell $(PKG_CONFIG) QtGui --libs)
|
||
|
endif
|
||
|
|
||
|
# some systems still put important things in a different prefix
|