1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
# -*- makefile -*-
# Copyright (c) 2001 Dan Gudmundsson
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
# $Id: Makefile.macOSX,v 1.1 2004/03/30 07:49:22 bjorng Exp $
#
# MacOSX needs some attention
# this first version provided by Hkan Stenholm
#
# ... gracefully ruined by David Wallin [david@wallin.cx]
CC = cc
CFLAGS = -g -O2 -Wall -D_THREAD_SAFE -D_OSX_COCOA -F$(HOME)/Library/Frameworks $(ERLINC)
LDFLAGS = -F$(HOME)/Library/Frameworks -framework OpenGL -framework SDL -framework OpenGL -framework AGL -framework IOKit -framework Cocoa -L. -lsdlmain
TARGETDIR = ../priv
## The driver part needs erlang includes
ERL_DIR := $(shell echo 'io:format("~s~n",[code:root_dir()]),halt().' | erl | sed 's,^[0-9]*> *,,g' | tail +2)
ERLINC = -I$(ERL_DIR)/usr/include
# Files
COMMON = esdl_wrapper esdl_gen esdl_spec esdl_util \
esdl_video esdl_events esdl_audio \
esdl_gl esdl_glu esdl_glext
COMMON_OBJ = $(COMMON:%=%.o)
# Targets
#target: libsdlmain.a $(TARGETDIR)/sdlwrapper $(TARGETDIR)/sdl_driver.so
target: $(TARGETDIR)/sdl_driver.so
clean:
rm -f $(COMMON_OBJ)
rm -f ../priv/*.so ../priv/sdlwrapper *.o libsdlmain.a
rm -f *~ erl_crash.dump
##
##
%.o: %.c
$(CC) -c $(CFLAGS) $<
%.o: %.m
$(CC) -c -I$(HOME)/Library/Frameworks/SDL.framework/Headers $(CFLAGS) $<
#esdl_main.o : esdl_main.c
# $(CC) -c -ObjC $(CFLAGS) $(ERLINC) $<
esdl_driver.o : esdl_driver.c
$(CC) -c -ObjC $(CFLAGS) $(ERLINC) $<
libsdlmain.a : SDLMain.o
ar cru libsdlmain.a SDLMain.o
ranlib libsdlmain.a
##
## sdlwrapper
#$(TARGETDIR)/sdlwrapper: esdl_main.o esdl_stream.o $(COMMON_OBJ)
# $(CC) $< esdl_stream.o $(COMMON_OBJ) $(LDFLAGS) -o $@
##
## sdl_driver.so
$(TARGETDIR)/sdl_driver.so: esdl_driver.o $(COMMON_OBJ)
$(CC) $< $(COMMON_OBJ) $(LDFLAGS) -bundle -flat_namespace -undefined suppress -o $@
|