Changeset - r2731:c44963662119
[Not reviewed]
master
0 6 0
bjarni - 19 years ago 2005-12-09 13:17:31
bjarni@openttd.org
(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
6 files changed with 9 insertions and 57 deletions:
0 comments (0 inline, 0 general)
Makefile
Show inline comments
 
@@ -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
makefiledir/Makefile.config_writer
Show inline comments
 
@@ -116,11 +116,6 @@ CONFIG_LINE=@$(SHELL) -c 'echo $(1)' >> 
 
	$(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))
os/macosx/Makefile
Show inline comments
 
@@ -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 @@ endif
 
# 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 @@ endif
 
	$(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)
os/macosx/Makefile.setup
Show inline comments
 
@@ -29,29 +29,16 @@ ifdef DEBUG
 
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 @@ ifdef FAT_BINARY
 
		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
 
\ No newline at end of file
stdafx.h
Show inline comments
 
@@ -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"
unix.c
Show inline comments
 
@@ -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" );
0 comments (0 inline, 0 general)