makefiledir/Makefile.libdetection
author bjarni
Sat, 10 Dec 2005 11:16:45 +0000
changeset 2736 3d6487cbbb69
parent 2688 067c4362dcb0
child 3083 8afc31558162
permissions -rw-r--r--
(svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
you can still use SDL drivers if you like and you have to run "make upgradeconf" to start using the cocoa drivers (or manually write WITH_COCOA:=1)
since SDL breaks the cocoa drivers, you can't compile with both SDL and cocoa support
Using cocoa drivers makes it easier to make universal binaries and it solves:
-FS#18 [OSX] SDL is weird in universal binaries
-FS#2 [OSX] lazy pointer crash on exit
-FS#10 [OSX] linking error when linking statically to SDL 1.2.8 (needless to explain this, but it means it should be able to compile statically with the default settings now)
-[ 1215073 ] Switching to large size out of fullscreen crashes
Using SDL drivers will still have those issues though
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     1
# this file detects what OS and libs the computer have/are running
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     2
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     3
# Automatically recognize if building on Win32
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     4
ifdef WINDIR
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     5
ifndef UNIX
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     6
WIN32:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     7
CYGWIN:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     8
MINGW:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
     9
STATIC:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    10
SKIP_STATIC_CHECK:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    11
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    12
else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    13
UNIX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    14
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    15
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    16
# Automatically recognize if building on FreeBSD
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    17
ifeq ($(shell uname),FreeBSD)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    18
FREEBSD:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    19
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    20
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    21
# Automatically recognize if building on MacOSX
2000
0742fdd448e3 (svn r2506) - Fix: [OSX, makefile] The makefile can now also see OSX 10.4 as OSX
bjarni
parents: 1955
diff changeset
    22
ifeq ($(shell uname), Darwin)
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    23
OSX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    24
# OSX uses the unix setup too
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    25
UNIX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    26
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    27
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    28
# Automatically recognize if building on MorphOS
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    29
ifeq ($(shell uname), MorphOS)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    30
MORPHOS:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    31
# MorphOS uses UNIX setup too
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    32
UNIX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    33
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    34
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    35
# Automatically recognize if building on BeOS
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    36
ifeq ($(shell uname), BeOS)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    37
BEOS:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    38
# BeOS uses UNIX setup too
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    39
UNIX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    40
# Except that in BeOS 5.0 we need to use net_server, not BONE networking
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    41
ifeq ($(shell uname -r), 5.0)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    42
BEOS_NET_SERVER:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    43
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    44
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    45
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    46
# Automatically recognize if building on SunOS/Solaris
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    47
ifeq ($(shell uname), SunOS)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    48
SUNOS:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    49
# SunOS uses UNIX setup too
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    50
UNIX:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    51
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    52
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    53
# FreeBSD uses sdl11 instead of sdl
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    54
ifdef FREEBSD
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    55
SDL-CONFIG:=sdl11-config
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    56
else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    57
SDL-CONFIG:=sdl-config
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    58
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    59
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    60
# Networking, enabled by default
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    61
WITH_NETWORK:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    62
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    63
# Library detections
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    64
WITH_SDL:=$(shell $(SDL-CONFIG) --version 2>/dev/null)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    65
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    66
# libpng detection
1955
793bb2e9f1d3 (svn r2461) -Feature [Makefile] libpng-config can now be called something else in Makefile.config
bjarni
parents: 1823
diff changeset
    67
WITH_PNG:=$(shell $(LIBPNG-CONFIG) --version 2>/dev/null)
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    68
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    69
ifdef WITH_PNG
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    70
# LibPNG depends on Zlib
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    71
WITH_ZLIB:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    72
else
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    73
# We go looking for zlib with a little hack
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    74
WITH_ZLIB:=$(shell ls /usr/include | grep "zlib.h" 2>/dev/null) \
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    75
$(shell ls /usr/local/include | grep "zlib.h" 2>/dev/null)
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    76
ifdef WITH_ZLIB
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    77
WITH_ZLIB:=1
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    78
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    79
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    80
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    81
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    82
# sets the default paths
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    83
ifdef UNIX
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    84
ifndef OSX
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    85
ifndef MORPHOS
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    86
ifndef BIN_DIR
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    87
#BINARY_DIR:=
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    88
#DATA_DIR_PREFIX:=
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    89
#INSTALL_DIR:=/usr/local/
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    90
#USE_HOMEDIR:=
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    91
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    92
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    93
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    94
endif
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
    95
2736
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
    96
ifdef OSX
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
    97
# we prefer to use cocoa drivers rather than SDL drivers
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
    98
# if you really want SDL drivers, you can always modify Makefile.config
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
    99
WITH_COCOA:=1
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
   100
WITH_SDL:=
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
   101
endif
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
   102
3d6487cbbb69 (svn r3281) -Feature: [OSX] added native cocoa sound and video drivers (egladil)
bjarni
parents: 2688
diff changeset
   103
543
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
   104
# workaround
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
   105
# cygwin have problems with libpng, so we will just disable it for now until the problem is solved
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
   106
ifdef CYGWIN
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
   107
WITH_PNG:=
946badd71033 (svn r942) -Merged branch/network back into the trunk
truelight
parents: 528
diff changeset
   108
endif