2ad6f1d24b
git-svn-id: https://matroska.svn.sourceforge.net/svnroot/matroska/trunk/libmatroska@1 a6f86f6d-0131-4f8e-9e7b-e335508773d5
99 lines
2.6 KiB
Makefile
99 lines
2.6 KiB
Makefile
##
|
|
## This Makefile is made for cygwin, but might probably work on any standard UNIX too
|
|
##
|
|
|
|
#****************************************************************************
|
|
|
|
# DEBUG can be set to YES to include debugging info, or NO otherwise
|
|
DEBUG = YES
|
|
|
|
# PROFILE can be set to YES to include profiling info, or NO otherwise
|
|
PROFILE = NO
|
|
|
|
#****************************************************************************
|
|
|
|
CC = gcc
|
|
CXX = g++
|
|
LD = gcc
|
|
AR = ar rcvu
|
|
RANLIB = ranlib
|
|
DEPEND = makedepend
|
|
INDENT =indent --gnu-style -ut -ts6 -br -npsl -npcs
|
|
DELETE =rm -f
|
|
|
|
GLOBAL_CFLAGS = -Wall -Wno-unknown-pragmas -Wno-format
|
|
DEBUG_CFLAGS = -g -O0 -DDEBUG ${GLOBAL_CFLAGS}
|
|
RELEASE_CFLAGS = -O2 ${GLOBAL_CFLAGS}
|
|
|
|
P_OPTIONS = -pedantic
|
|
|
|
LIBS =
|
|
|
|
DEBUG_CXXFLAGS = ${DEBUG_CFLAGS}
|
|
RELEASE_CXXFLAGS = ${RELEASE_CFLAGS}
|
|
|
|
DEBUG_LDFLAGS = -g
|
|
RELEASE_LDFLAGS =
|
|
|
|
ifeq (YES, ${DEBUG})
|
|
CFLAGS = ${DEBUG_CFLAGS} ${INCS} ${P_OPTIONS}
|
|
CXXFLAGS = ${DEBUG_CXXFLAGS} ${INCS} ${P_OPTIONS}
|
|
LDFLAGS = ${DEBUG_LDFLAGS}
|
|
DEPENDFLAGS = ${DEBUG_CFLAGS} ${INCS}
|
|
else
|
|
CFLAGS = ${RELEASE_CFLAGS} ${INCS} ${P_OPTIONS}
|
|
CXXFLAGS = ${RELEASE_CXXFLAGS} ${INCS} ${P_OPTIONS}
|
|
LDFLAGS = ${RELEASE_LDFLAGS}
|
|
DEPENDFLAGS = ${RELEASE_CFLAGS} ${INCS}
|
|
endif
|
|
|
|
ifeq (YES, ${PROFILE})
|
|
CFLAGS := ${CFLAGS} -pg
|
|
CXXFLAGS := ${CXXFLAGS} -pg
|
|
LDFLAGS := ${LDFLAGS} -pg
|
|
endif
|
|
|
|
#****************************************************************************
|
|
# Preprocessor directives
|
|
#****************************************************************************
|
|
|
|
ifeq (YES, ${PROFILE})
|
|
DEFS =
|
|
else
|
|
DEFS =
|
|
endif
|
|
|
|
#****************************************************************************
|
|
# Include paths
|
|
#****************************************************************************
|
|
|
|
#INCS := -I/usr/include/g++-2 -I/usr/local/include
|
|
#INCS =
|
|
|
|
|
|
#****************************************************************************
|
|
# Makefile code common to all platforms
|
|
#****************************************************************************
|
|
|
|
CFLAGS := ${CFLAGS} ${DEFS}
|
|
CXXFLAGS := ${CXXFLAGS} ${DEFS}
|
|
|
|
#****************************************************************************
|
|
# General rules
|
|
#****************************************************************************
|
|
|
|
indent:
|
|
$(INDENT) --line-length 100 ${SRCS} ${SRCS_HEADERS}
|
|
$(DELETE) *.*~
|
|
|
|
indent80:
|
|
$(INDENT) --line-length 80 ${SRCS} ${SRCS_HEADERS}
|
|
$(DELETE) *.*~
|
|
|
|
clean:
|
|
rm -f core *.o *.so *.a *.exe
|
|
|
|
# what are the source dependencies
|
|
depend: $(SRCS)
|
|
$(DEPEND) $(DEPENDFLAGS) $(SRCS)
|