2014-05-17 23:15:15 +02:00
|
|
|
PLATFORM ?= $(shell uname -s)
|
|
|
|
OPTIMIZE ?= 2
|
|
|
|
LTO ?= 0
|
|
|
|
|
2019-11-02 13:26:21 +01:00
|
|
|
VERSION ?= unknown
|
|
|
|
TARGET ?= darwin12
|
|
|
|
OSX_VERSION_MIN ?= 10.5
|
|
|
|
LINKER_VERSION ?= 134.9
|
|
|
|
LIBLTO_PATH ?=
|
|
|
|
ADDITIONAL_CXXFLAGS ?=
|
|
|
|
|
|
|
|
override CXXFLAGS=-std=c++1y -Wall -Wextra -pedantic
|
2015-06-21 11:46:01 +02:00
|
|
|
override CXXFLAGS+=-Wno-missing-field-initializers
|
2019-11-04 20:32:05 +01:00
|
|
|
override CXXFLAGS+=-I. -O$(OPTIMIZE)
|
2014-05-17 23:15:15 +02:00
|
|
|
|
|
|
|
ifeq ($(LTO), 1)
|
|
|
|
override CXXFLAGS+=-flto
|
|
|
|
endif
|
|
|
|
|
2019-11-04 20:32:05 +01:00
|
|
|
ifeq ($(OCDEBUG), 1)
|
|
|
|
override CXXFLAGS+=-g
|
|
|
|
endif
|
|
|
|
|
2019-11-02 13:26:21 +01:00
|
|
|
override CXXFLAGS+=-DOSXCROSS_VERSION="\"$(VERSION)\""
|
|
|
|
override CXXFLAGS+=-DOSXCROSS_TARGET="\"$(TARGET)\""
|
|
|
|
override CXXFLAGS+=-DOSXCROSS_OSX_VERSION_MIN="\"$(OSX_VERSION_MIN)\""
|
|
|
|
override CXXFLAGS+=-DOSXCROSS_LINKER_VERSION="\"$(LINKER_VERSION)\""
|
|
|
|
override CXXFLAGS+=-DOSXCROSS_LIBLTO_PATH="\"$(LIBLTO_PATH)\""
|
|
|
|
override CXXFLAGS+=-DOSXCROSS_BUILD_DIR="\"$(BUILD_DIR)\""
|
2014-05-17 23:15:15 +02:00
|
|
|
|
2019-11-02 13:26:21 +01:00
|
|
|
override CXXFLAGS+= $(ADDITIONAL_CXXFLAGS)
|
2014-05-17 23:15:15 +02:00
|
|
|
|
|
|
|
ifneq (,$(findstring FreeBSD, $(PLATFORM)))
|
|
|
|
override LDFLAGS+=-lutil
|
|
|
|
else ifneq (,$(findstring Darwin, $(PLATFORM)))
|
|
|
|
override CXXFLAGS+=-Wno-deprecated
|
|
|
|
override LDFLAGS+=-framework CoreServices -Wno-deprecated
|
2015-07-19 22:28:10 +02:00
|
|
|
else ifneq (,$(findstring CYGWIN, $(PLATFORM)))
|
|
|
|
# -std=gnu++0x doesn't work, so work around...
|
|
|
|
override CXXFLAGS+=-U__STRICT_ANSI__
|
|
|
|
else
|
|
|
|
|
|
|
|
ifeq (,$(findstring Windows, $(PLATFORM)))
|
|
|
|
ifeq (,$(findstring OpenBSD, $(PLATFORM)))
|
2014-05-17 23:15:15 +02:00
|
|
|
override LDFLAGS+=-lrt
|
|
|
|
endif
|
2015-07-19 22:28:10 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
endif
|
2014-05-17 23:15:15 +02:00
|
|
|
|
|
|
|
BIN=wrapper
|
|
|
|
|
|
|
|
SRCS= \
|
|
|
|
main.cpp \
|
|
|
|
tools.cpp \
|
|
|
|
target.cpp \
|
|
|
|
programs/osxcross-version.cpp \
|
|
|
|
programs/osxcross-env.cpp \
|
|
|
|
programs/osxcross-conf.cpp \
|
2014-06-20 14:16:57 +02:00
|
|
|
programs/osxcross-cmp.cpp \
|
2015-06-21 14:07:19 +02:00
|
|
|
programs/osxcross-man.cpp \
|
2014-09-27 19:45:49 +02:00
|
|
|
programs/sw_vers.cpp \
|
2015-06-21 11:46:01 +02:00
|
|
|
programs/pkg-config.cpp \
|
2015-08-31 21:02:38 +02:00
|
|
|
programs/xcrun.cpp \
|
2020-03-10 16:49:39 +01:00
|
|
|
programs/xcodebuild.cpp \
|
2015-08-31 21:02:38 +02:00
|
|
|
programs/dsymutil.cpp
|
2014-05-17 23:15:15 +02:00
|
|
|
|
|
|
|
OBJS=$(subst .cpp,.o,$(SRCS))
|
|
|
|
|
|
|
|
all: wrapper
|
|
|
|
|
|
|
|
wrapper: $(OBJS)
|
|
|
|
$(CXX) $(CXXFLAGS) -o wrapper $(OBJS) $(LDFLAGS)
|
|
|
|
|
|
|
|
.PHONY: clean
|
|
|
|
|
|
|
|
clean:
|
|
|
|
rm -f $(BIN) $(OBJS)
|
|
|
|
|
|
|
|
-include $(SRCS:cpp=d)
|