Commit 5812a6f1 authored by hybrid's avatar hybrid

Created a better configurable makefile. Needs to be transferred to the other examples sometimes.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1035 dfc29bdd-3216-0410-991c-e03cc46cb475
parent eb6f51a6
# Makefile for Irrlicht Examples # Makefile for Irrlicht Examples
# It's usually sufficient to change just the target name and source file list # It's usually sufficient to change just the target name and source file list
# and be sure that CXX is set to a valid compiler # and be sure that CXX is set to a valid compiler
Target = 01.HelloWorld
Sources = main.cpp
# general compiler settings # Name of the executable created (.exe will be added automatically if necessary)
CPPFLAGS = -I../../include -I/usr/X11R6/include Target := 01.HelloWorld
CXXFLAGS = -O3 -ffast-math # List of source files, separated by spaces
#CXXFLAGS = -g -Wall Sources := main.cpp
# Path to Irrlicht directory, should contain include/ and lib/
IrrlichtHome := ../..
# Path for the executable. Note that Irrlicht.dll should usually also be there for win32 systems
BinPath = ../../bin/$(SYSTEM)
# general compiler settings (might need to be set when compiling the lib, too)
# preprocessor flags, e.g. defines and include paths
USERCPPFLAGS =
# compiler flags such as optimization flags
USERCXXFLAGS = -O3 -ffast-math
#USERCXXFLAGS = -g -Wall
# linker flags such as additional libraries and link paths
USERLDFLAGS =
####
#no changes necessary below this line
####
CPPFLAGS = -I$(IrrlichtHome)/include -I/usr/X11R6/include $(USERCPPFLAGS)
CXXFLAGS = $(USERCXXFLAGS)
LDFLAGS = $(USERLDFLAGS)
#default target is Linux #default target is Linux
all: all_linux all: all_linux
ifeq ($(HOSTTYPE), x86_64)
LIBSELECT=64
endif
# target specific settings # target specific settings
all_linux all_win32 static_win32: LDFLAGS = -L../../lib/$(SYSTEM) -lIrrlicht all_linux all_win32 static_win32: LDFLAGS = -L$(IrrlichtHome)/lib/$(SYSTEM) -lIrrlicht
all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11 all_linux: LDFLAGS += -L/usr/X11R6/lib$(LIBSELECT) -lGL -lXxf86vm -lXext -lX11
all_linux clean_linux: SYSTEM=Linux all_linux clean_linux: SYSTEM=Linux
all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc all_win32 clean_win32 static_win32: SYSTEM=Win32-gcc
...@@ -26,7 +41,7 @@ static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_ ...@@ -26,7 +41,7 @@ static_win32: CPPFLAGS += -D_IRR_STATIC_LIB_
all_win32: LDFLAGS += -lopengl32 -lm all_win32: LDFLAGS += -lopengl32 -lm
static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32 static_win32: LDFLAGS += -lgdi32 -lwinspool -lcomdlg32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 -lopengl32
# name of the binary - only valid for targets which set SYSTEM # name of the binary - only valid for targets which set SYSTEM
DESTPATH = ../../bin/$(SYSTEM)/$(Target)$(SUF) DESTPATH = $(BinPath)/$(Target)$(SUF)
all_linux all_win32 static_win32: all_linux all_win32 static_win32:
$(warning Building...) $(warning Building...)
...@@ -39,3 +54,13 @@ clean_linux clean_win32: ...@@ -39,3 +54,13 @@ clean_linux clean_win32:
@$(RM) $(DESTPATH) @$(RM) $(DESTPATH)
.PHONY: all all_win32 static_win32 clean clean_linux clean_win32 .PHONY: all all_win32 static_win32 clean clean_linux clean_win32
#multilib handling
ifeq ($(HOSTTYPE), x86_64)
LIBSELECT=64
endif
#solaris real-time features
ifeq ($(HOSTTYPE), sun4)
LDFLAGS += -lrt
endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment