Skip to content

Latest commit

 

History

History
184 lines (139 loc) · 5.62 KB

Makefile.org

File metadata and controls

184 lines (139 loc) · 5.62 KB

########################################################################## ### Copyright (c) 1999, 2000, 2001, 2002 Sony Computer Entertainment America Inc. ### All rights reserved. ### ### Boilerplate Makefile by Bret Mogilefsky (mogul@playstation.sony.com) ### and Tyler Daniel (tyler_daniel@playstation.sony.com) ### ### Use this makefile as a template for new projects! ### ### General Features: ### ### Just specify SRCS and go! ### Automatic and minimal (fast!) dependency generation (for vu microcode as well) ### Allows keeping source and headers from src and include dirs, or elsewhere. ### Builds in a subdirectory. ### Allows additional defines, include dirs, and lib dirs without ### specifying -D, -I, and -L ### Easy to specify parallel builds (debug, optimized, release, etc) ### Easy to add flags on a per-file, per-build, or per-file-build basis ### Can specify parent projects to make first (libraries) ### Builds libraries ### Slices, dices, feeds your cat, calls your mum. ### ### VU microcode features: ### ### Generates depencies for microcode (for .include and #include) ### Uses a preprocessing script to optionally manage registers ### and add a few pseudo-directives ### Runs the c preprocessor over microcode - you can use #define and #include ### freely (and share #defines with c/c++) ### Support for vcl ### automatically finds and optimizes .include “*.vcl” in vsm files ### ### Useful targets: ### ### run Run the executable. ### xrun Run the executable under a new xterminal. ### clean Remove everything we can rebuild. ### tags Generate source-browsing tags for Emacs. ### ### Using builds: ### ### To specify a particular build include the name of the build anywhere on ### the command line: ### make xrun optimized, ### make clean optimized, etc. ### ### Included builds (add your own!): ### debug ### optimized (default) ### release ### ### For more info see the “Build Options” section below ##########################################################################

########################################################################## ### Target ##########################################################################

TARGET = libps2stuff.a

########################################################################## ### Files and Paths - this is probably the only section you’ll need to change ##########################################################################

SRCS += $(wildcard .cpp) SRCS += $(foreach DIR,$(SRCDIRS),$(subst $(DIR)/,,$(wildcard $(DIR)/.cpp)))

OBJS =

LIBS =

INCDIRS = include

LIBDIRS =

SRCDIRS = src

OBJDIRBASE = objs

DEPDIRBASE = deps

MAKEPARENTS =

SCEDIR = $(PS2SDK) PS2DEVDIR = $(PS2SDK)

PS2STUFF = .

########################################################################## ### Common Options (shared across builds) ##########################################################################

INCDIRS +=

LIBDIRS += $(SCEDIR)/ee/lib

DEFINES =

OPTFLAGS = -fno-rtti -G 0

DEBUGFLAGS = -Wall

DEBUGFLAGS += -Wa,-alh

DEBUGFLAGS += -fno-strict-aliasing

DEBUGFLAGS += -fno-exceptions

DEBUGFLAGS += -fno-common

RUNARGS =

########################################################################## ### Build Options - applied per-build ##########################################################################

PS2GLDIR = ../ps2gl include Makefile.builds

########################################################################## ### Per-file Options ##########################################################################

########################################################################## ### Per-file, per-build Options ##########################################################################

########################################################################## ### Makefile operation ##########################################################################

PRINT_MSGS = 1

PRINT_CMDS = 0

########################################################################## ### include the makefile that does all the work ##########################################################################

include Makefile.work

ifeq ($(GCC_MAJOR),3) DEBUGFLAGS += -Wno-deprecated endif