forked from mirror/OpenTTD
(svn r3276) reverted the last two commits. OSX 10.2 kept finding new stuff to prevent it from running OpenTTD, so now it's not supported anymore
This commit is contained in:
8
Makefile
8
Makefile
@@ -107,7 +107,6 @@
|
||||
# Special for crosscompiling there are some commands available:
|
||||
#
|
||||
# FAT_BINARY: builds a universal binary for OSX. Make sure you got both PPC and x86 libs
|
||||
# JAGUAR: Make the binary suited for MacOS X 10.2 (codenamed jaguar). It will not include network support
|
||||
#
|
||||
# ENDIAN_FORCE: forces the endian-check to give a certain result. Can be BE, LE or PREPROCESSOR.
|
||||
# PREPROCESSOR is always used on all OSX targets and will make the preprocessor pick the right endian.
|
||||
@@ -515,11 +514,6 @@ ifdef OSX
|
||||
LDFLAGS += -headerpad_max_install_names
|
||||
endif
|
||||
endif
|
||||
ifdef JAGUAR
|
||||
# ensure that changing libpathnames will not overwrite anything in the binary
|
||||
LDFLAGS += -headerpad_max_install_names
|
||||
CFLAGS += -DJAGUAR_CROSSCOMPILE
|
||||
endif
|
||||
|
||||
ifndef DEDICATED
|
||||
LIBS += -framework QuickTime
|
||||
@@ -754,9 +748,7 @@ C_SOURCES += music/extmidi.c
|
||||
endif
|
||||
|
||||
ifdef OSX
|
||||
ifndef JAGUAR
|
||||
OBJC_SOURCES += os/macosx/macos.m
|
||||
endif
|
||||
ifndef DEDICATED
|
||||
C_SOURCES += music/qtmidi.c
|
||||
endif
|
||||
|
@@ -116,11 +116,6 @@ $(MAKE_CONFIG):
|
||||
$(call CONFIG_LINE,LDFLAGS_x86:=$(LDFLAGS_x86))
|
||||
$(call CONFIG_LINE,)
|
||||
|
||||
$(call CONFIG_LINE,\# For OSX 10.2 support)
|
||||
$(call CONFIG_LINE,CFLAGS_JAGUAR:=$(CFLAGS_JAGUAR))
|
||||
$(call CONFIG_LINE,LDFLAGS_JAGUAR:=$(LDFLAGS_JAGUAR))
|
||||
$(call CONFIG_LINE,)
|
||||
|
||||
$(call CONFIG_LINE,\# For cross-compiling)
|
||||
$(call CONFIG_LINE,CC_TARGET:=$(CC_TARGET))
|
||||
$(call CONFIG_LINE,CC_HOST:=$(CC_HOST))
|
||||
|
@@ -4,7 +4,7 @@
|
||||
|
||||
ifdef FAT_BINARY
|
||||
FAT_BINARY:=build_universal_binary
|
||||
POST_BUNDLE_BUILDING:=$(Q)cp $(x86_SDL_LIB) $(OSXAPP)/Contents/lib/libSDL-x86.dylib
|
||||
COPY_x86_SDL_LIB:=$(Q)cp $(x86_SDL_LIB) $(OSXAPP)/Contents/lib/libSDL-x86.dylib
|
||||
endif
|
||||
|
||||
ifdef UNIVERSAL_x86_PART
|
||||
@@ -14,17 +14,6 @@ else
|
||||
BUILD_OSX_BUNDLE:=build_OSX_bundle
|
||||
endif
|
||||
|
||||
ifdef JAGUAR
|
||||
JAGUAR:=jaguar
|
||||
POST_BUNDLE_BUILDING:=$(Q)cp /usr/lib/libmx.A.dylib $(OSXAPP)/Contents/lib/libmx.A.dylib
|
||||
endif
|
||||
|
||||
# MacOS X got some issues in OpenTTD, so we got a workaround target to solve them
|
||||
# only network support will not be fixed this way, so we will have a binary without network support
|
||||
|
||||
$(JAGUAR):
|
||||
$(Q)install_name_tool -change /usr/lib/libmx.A.dylib @executable_path/../lib/libmx.A.dylib $(TTD)
|
||||
|
||||
# building an universal binary
|
||||
# since we can only compile for PPC or x86 at any one time, we compile one and then
|
||||
# we make clean and compile the other one. In the end we use lipo to join them together
|
||||
@@ -44,7 +33,7 @@ $(FAT_BINARY): $(TTD)
|
||||
# build the bundle. OSX wants to keep apps in bundles, so we will give it one
|
||||
# the good thing about bundles is that you can keep extra files in them, so we keep lng files and a data dir in it
|
||||
|
||||
$(BUILD_OSX_BUNDLE): $(TTD) $(FAT_BINARY) $(JAGUAR)
|
||||
$(BUILD_OSX_BUNDLE): $(TTD) $(FAT_BINARY)
|
||||
@echo '===> Building application bundle'
|
||||
$(Q)rm -fr "$(OSXAPP)"
|
||||
$(Q)mkdir -p "$(OSXAPP)"/Contents/MacOS
|
||||
@@ -58,7 +47,7 @@ $(BUILD_OSX_BUNDLE): $(TTD) $(FAT_BINARY) $(JAGUAR)
|
||||
$(Q)cp data/* "$(OSXAPP)"/Contents/Data/
|
||||
$(Q)cp lang/*.lng "$(OSXAPP)"/Contents/Lang/
|
||||
$(Q)cp $(TTD) "$(OSXAPP)"/Contents/MacOS/$(TTD)
|
||||
$(POST_BUNDLE_BUILDING)
|
||||
$(COPY_x86_SDL_LIB)
|
||||
|
||||
# make the release disk image. Should only be used with releases and is a good and fast way to make sure to remember all the needed files
|
||||
release: all
|
||||
@@ -81,4 +70,4 @@ release: all
|
||||
|
||||
$(OSX): $(TTD) $(BUILD_OSX_BUNDLE)
|
||||
|
||||
.PHONY: release $(BUILD_OSX_BUNDLE) $(FAT_BINARY) $(JAGUAR)
|
||||
.PHONY: release $(BUILD_OSX_BUNDLE) $(FAT_BINARY)
|
||||
|
@@ -29,29 +29,16 @@ $(warning Compiling a release build, that is a debug build)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef JAGUAR
|
||||
ifdef FAT_BINARY
|
||||
$(error FAT_BINARY and JAGUAR can't be used at the same time)
|
||||
endif
|
||||
endif
|
||||
|
||||
# setup flags if none are defined
|
||||
ifndef CFLAGS_JAGUAR
|
||||
CFLAGS_JAGUAR:= -isysroot /Developer/SDKs/MacOSX10.2.8.sdk
|
||||
endif
|
||||
ifndef LDFLAGS_JAGUAR
|
||||
LDFLAGS_JAGUAR:= -Wl,-syslibroot,/Developer/SDKs/MacOSX10.2.8.sdk
|
||||
endif
|
||||
|
||||
ifndef PPC_CC
|
||||
PPC_CC:=powerpc-apple-darwin8-gcc-4.0.0
|
||||
endif
|
||||
ifndef CFLAGS_PPC
|
||||
CFLAGS_PPC:= -isysroot /Developer/SDKs/MacOSX10.3.9.sdk
|
||||
endif
|
||||
ifndef LDFLAGS_PPC
|
||||
LDFLAGS_PPC:= -Wl,-syslibroot,/Developer/SDKs/MacOSX10.3.9.sdk
|
||||
endif
|
||||
ifndef PPC_CC
|
||||
PPC_CC:=powerpc-apple-darwin8-gcc-4.0.0
|
||||
endif
|
||||
ifndef CFLAGS_x86
|
||||
CFLAGS_x86:= -isysroot /Developer/SDKs/MacOSX10.4u.sdk
|
||||
endif
|
||||
@@ -128,14 +115,3 @@ $(error no x86 SDL lib found)
|
||||
LDFLAGS:= $(LDFLAGS_PPC)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef JAGUAR
|
||||
CFLAGS:=$(CFLAGS_JAGUAR)
|
||||
LDFLAGS:=$(LDFLAGS_JAGUAR)
|
||||
# network support is broken is jaguar (OSX 10.2)
|
||||
WITH_NETWORK:=
|
||||
# crosscompiling for jaguar should always be static
|
||||
STATIC:=1
|
||||
# libpng appears to break it too
|
||||
WITH_PNG:=
|
||||
endif
|
2
stdafx.h
2
stdafx.h
@@ -9,7 +9,7 @@
|
||||
|
||||
// MacOS X will use an NSAlert to display failed assertaions since they're lost unless running from a terminal
|
||||
// strgen always runs from terminal and don't need a window for asserts
|
||||
#if !defined(__APPLE__) || defined(STRGEN) || defined(JAGUAR_CROSSCOMPILE)
|
||||
#if !defined(__APPLE__) || defined(STRGEN)
|
||||
# include <assert.h>
|
||||
#else
|
||||
# include "os/macosx/macos.h"
|
||||
|
2
unix.c
2
unix.c
@@ -434,7 +434,7 @@ void ShowInfo(const char *str)
|
||||
|
||||
void ShowOSErrorBox(const char *buf)
|
||||
{
|
||||
#if defined(__APPLE__) && !defined(JAGUAR_CROSSCOMPILE)
|
||||
#if defined(__APPLE__)
|
||||
// this creates an NSAlertPanel with the contents of 'buf'
|
||||
// this is the native and nicest way to do this on OSX
|
||||
ShowMacDialog( buf, "See readme for more info\nMost likely you are missing files from the original TTD", "Quit" );
|
||||
|
Reference in New Issue
Block a user