📄 makefile
字号:
#------------------------------------------------------------------# MPEG-4 Audio VM# makefile (requires GNU make)## $Id: makefile,v 1.60 1999/07/26 13:17:56 purnhage Exp $## Authors:# BG Bernhard Grill, Uni Erlangen <grl@titan.lte.e-technik.uni-erlangen.de># HP Heiko Purnhagen, Uni Hannover <purnhage@tnt.uni-hannover.de># BT Bodo Teichmann, FhG/IIS <tmn@iis.fhg.de># SE Sebastien Etienne, CCETT Rennes## Changes:# 11-jun-96 BG basic concept# 13-jun-96 HP first version# 14-jun-96 HP test stuff added# 19-jun-96 HP indiline.a added# 20-jun-96 HP modifications proposed by BG# 28-jun-96 HP fixed COPTS bug# 04-jul-96 HP restructured makefile, fixed CFLAGS/LIBS bug# 04-jul-96 HP included "pre-linked object file directory" by BG# 05-jul-96 HP fixed override CFLAGS/LIBS# 20-aug-96 BG OS2 modifications# 26-aug-96 HP removed PLOBJS, adapted to vm directory structure# 26-aug-96 HP CVS# 13-sep-96 HP removed -O option for Linux g++# 25-oct-96 HP adapted makefile options / added makefile.cfg# 01-nov-96 HP added "depend" target# 03-dec-96 HP added comment re. include dependency files# added library dependency rules# 21-jan-97 HP added audio i/o module# 31-jan-97 HP seperated encoder and -g directories# 05-feb-97 HP added COMLIBS# 12-feb-97 HP make CFLAGS and LDFLAGS values passed on and evaluated# 14-feb-97 HP included PICOLA speed control (by Panasonic)# 11-mar-97 HP included PICOLA source code# 21-mar-97 BT fixed CC and IRIX things, platform autodetect# 26-mar-97 CCETT included G729 -g source code# 20-may-97 HP clean up# 22-may-97 HP added DEBUGPLOT (substitutes PLOTMTV)# 03-jun-97 HP disabled DEBUGPLOT as default# 07-nov-97 HP merged with FhG mods# 08-apr-98 HP added OSF platform# 09-apr-98 HP/CF added rm before ar when making libs# 13-oct-98 HP improved platform detection# 02-dec-98 HP/nn merged version-dependent directory stuff by FhG# 11-jan-99 HP linux_gcc# 20-jan-99 HP cleaned up platform dependency stuff and CFLAGS defaults# 21-jan-99 HP audio.c & austream.c# 22-jan-99 HP USE_AFSP# 23-apr-99 HP updated, some files renamed for IM1-compability# 28-apr-99 HP using AFSP_INCLUDE_PATH / AFSP_LIBRARY_PATH ...#----------------------------------------------------------------------#----------------------------------------------------------------------# Notes:## This makefile provides automatic handling of different system# platforms. Therefore it is required to set the environment# variable SYSTEM_NAME according to the actual platform.# Currently, these platforms are supported:# IRIX# Linux# Solaris# ... and most other UNIX platforms ...## If CFLAGS or LDFLAGS are changed for a subsequent invocation of make,# object files and binaries are NOT remade automatically with the new# options! Use "make clean" first ...## To make mp4auenc and mp4audec, type:# make all## To allow make running e.g. 4 jobs at once, type:# make MFLAGS=-j4## On most platforms, the default compiler is g++. To use the platform's# native compiler (e.g. cc) instead, type:# make MAKE_CC=native# and to use gcc, type:# make MAKE_CC=gnu##----------------------------------------------------------------------# BG: OS2 fixifeq "$(SYSTEM_NAME)" "OS2"SHELL = /bin/shexport SHELLendif# HP 981013ifeq "$(SYSTEM_NAME)" ""ifeq "$(OSTYPE)" ""SYSTEM_NAME = $(shell uname -s)elseifeq "$(OSTYPE)" "linux"SYSTEM_NAME = Linuxendififeq "$(OSTYPE)" "linux-gnu"SYSTEM_NAME = Linuxendififeq "$(OSTYPE)" "solaris"SYSTEM_NAME = Solarisendififeq "$(OSTYPE)" "iris4d"SYSTEM_NAME = IRIXendififeq "$(OSTYPE)" "sunos4"SYSTEM_NAME = SunOSendififeq "$(OSTYPE)" "osf1"SYSTEM_NAME = OSFendififeq "$(OSTYPE)" "cygwin32"SYSTEM_NAME = cdkendifendifendififeq "$(SYSTEM_NAME)" ""include error:\ SYSTEM_NAME\ environment\ variable\ not\ defined\ !!!include Options:\ SunOS\ IRIX\ Linux\ OS2\ Solaris\ OSF\ cdk\ !!!endififeq "$(MAKELEVEL)" "0"# COMPILE TIME OPTIONS# # Several options are available to enable/disable VM modules at# compile time. These options can be specified in the make command line# (e.g. make PAR=0) or in the makefile.cfg file. # makefile options:# PAR=1 parametric core enabled# =0 parametric core disabled# LPC=1 LPC-based core enabled# =0 LPC-based core disabled# TF=1 t/f-based core enabled# =0 t/f-based core disabled# G729=1 g729-based core enabled# =0 g729-based core disabled# G723=1 g723-based core enabled# =0 g723-based core disabled# PICOLA=1 PICOLA speed control enabled# =0 PICOLA speed control disabled# DEBUGPLOT=1 DEBUGPLOT enabled (only used for debugging)# =0 DEBUGPLOT disabled# USE_AFSP=1 enable AFsp# =0 disable AFsp (only 16 bit .au files supported)-include makefile.cfg# defaults:ifndef PARPAR = 1endififndef LPCLPC = 1endififndef TFTF = 1endififndef G729G729 = 0endififndef G723G723 = 0endififndef PICOLAPICOLA = 1endififndef DEBUGPLOTDEBUGPLOT = 0endififndef USE_AFSPUSE_AFSP = 0endififndef ISOMP4ISOMP4 = 0endif# compiler options# NOTE: If CFLAGS or LDFLAGS are modified, object files are NOT remade# automatically !!!# Delete the object file manually to force recompile with the# new CFLAGS compiler options.#CFLAGS += -Wall#CFLAGS += -g#CFLAGS += -O2#CFLAGS += -pg#LDFLAGS += -pg#LDFLAGS += -g -fbounds-checking#LDFLAGS += -g# The default CFLAGS set below should work fine with gcc/g++.# If desired, you can override them when invoking make, e.g.:# make CFLAGS=""CFLAGS += -ansi -pedantic -Wall -W #CFLAGS += -ansi -pedantic -Wall -Wno-unused -W# If desired, you can override DEFFLAGS when invoking make, e.g.:# make DEFFLAGS=""#DEFFLAGS += -DHAS_ULONG# BT 990215: separate -W is necessary for gcc v 2.8.1#CFLAGS += -ansi -pedantic -Wall ifndef VERSIONVERSION = 1endififeq "$(VERSION)" "2"override DEFFLAGS += -DVERSION2endififneq "$(NO_AL_CONFIG)" "1"override DEFFLAGS += -DAL_CONFIGendififeq "$(DEBUGPLOT)" "1"override DEFFLAGS += -DDEBUGPLOT -DFHG_DEBUGPLOToverride CFLAGS += -goverride LDFLAGS += -gendif# for more info on plotmtv see src_frame/plotmtv_interf.c# see also src_frame/writevector.c# type "make USE=AFSP=1" to enable AFspifeq "$(USE_AFSP)" "1"override DEFFLAGS += -DUSE_AFSPendif# ISO MP4 file format libraryifeq "$(ISOMP4)" "1"# ISOMP4_PATH should point to your mp4lib directory treeISOMP4_PATH = mp4liboverride DEFFLAGS +=-DMP4FFoverride MFLAGS += ISOMP4_PATH=$(ISOMP4_PATH)endif# if AFSP_XXX_PATH are not set, AFsp-V3R2 as in ./include and# ./<platform>/lib is usedifdef AFSP_INCLUDE_PATHoverride MFLAGS += AFSP_INCLUDE_PATH=$(AFSP_INCLUDE_PATH)endififdef AFSP_LIBRARY_PATHoverride MFLAGS += AFSP_LIBRARY_PATH=$(AFSP_LIBRARY_PATH)endififdef VERBOSEoverride MFLAGS += VERBOSE=$(VERBOSE)endif# BG: separate sub-makefiles for the three codec families:# makefile.par# makefile.lpc# makefile.tf# makefile.g729OBJS_ENC_PAR = enc_par_dmy.oOBJS_ENC_LPC = enc_lpc_dmy.oOBJS_ENC_TF = enc_tf_dmy.oOBJS_ENC_G729 = enc_g729_dmy.oOBJS_ENC_G723 = enc_g723_dmy.oOBJS_DEC_PAR = dec_par_dmy.oOBJS_DEC_LPC = dec_lpc_dmy.o#OBJS_DEC_TF = dec_tf_dmy.o# I hate to do this, but I'm forced :-( HP 990120# Please, Heiko, tell me why it is/was necessary to include concealment_dummy.o in OBJS_DEC_TF. lauber 990421OBJS_DEC_TF = dec_tf_dmy.o tf_tables.oOBJS_DEC_G729 = dec_g729_dmy.oOBJS_DEC_G723 = dec_g723_dmy.oOBJS_ALL_G729 = $(OBJS_DEC_G729) $(OBJS_ENC_G729)OBJS_ALL_G723 = $(OBJS_DEC_G723) $(OBJS_ENC_G723)LIBS_ENC_PAR = LIBS_DEC_PAR = LIBS_ENC_LPC = LIBS_DEC_LPC = LIBS_ENC_TF = LIBS_DEC_TF = LIBS_ENC_G729 = LIBS_DEC_G729 = LIBS_ENC_G723 = LIBS_DEC_G723 = ifeq "$(PAR)" "1"include makefile.parendififeq "$(LPC)" "1"include makefile.lpcendififeq "$(TF)" "1"include makefile.tfendififeq "$(G729)" "1"include makefile.g729endififeq "$(G723)" "1"include makefile.g723endifOBJS_DEC_PICOLA = LIBS_DEC_PICOLA = ifeq "$(PICOLA)" "1"OBJS_DEC_PICOLA = pan_picola.oelseOBJS_DEC_PICOLA = picola_dmy.oendif############################################################################### don't edit after this line !!!## (unless you know what you are doing)## object filesOBJS_COM = common_m4a.o cmdline.o bitstream.o audio.o austream.o\ fir_filt.o flex_mux.o adif.oifeq "$(DEBUGPLOT)" "1"OBJS_COM += plotmtv_interf.o writevector.oelseOBJS_COM += plotmtv_interf_dummy.oendif# plotmtv_interf.c is just a C interface to the freeware program plotmtv, # see src_frame/plotmtv_interf.c for further information# see also src_frame/writevector.cifndef STATISTICSSTATISTICS = 0endififeq "$(STATISTICS)" "1"OBJS_COM += statistics.oelseOBJS_COM += statistics_dummy.oendifOBJS_ENC = mp4auenc.o $(OBJS_COM)\ $(OBJS_ENC_PAR) $(OBJS_ENC_LPC) $(OBJS_ENC_TF)\ $(OBJS_ALL_G729) $(OBJS_ALL_G723)OBJS_DEC = mp4audec.o $(OBJS_COM)\ $(OBJS_DEC_PAR) $(OBJS_DEC_LPC) $(OBJS_DEC_TF)\ $(OBJS_DEC_PICOLA) $(OBJS_DEC_G729) $(OBJS_DEC_G723) mod_buf.oifeq "$(ISOMP4)" "1"OBJS_DEC += mp4ifc.oendififeq "$(VERSION)" "2"OBJS_DEC += resilience.o endif# libraries# -lm is always included (see makelevel 1) HP 961203LIBS_COM = ifeq "$(USE_AFSP)" "1"LIBS_COM += -ltspendififeq "$(ISOMP4)" "1"LIBS_COM += -lisomp4endifLIBS_ENC = $(LIBS_ENC_PAR) $(LIBS_ENC_LPC) $(LIBS_ENC_TF) $(LIB_ENC_G729)\ $(LIB_ENC_G723)LIBS_DEC = $(LIBS_DEC_PAR) $(LIBS_DEC_LPC) $(LIBS_DEC_TF) $(LIBS_DEC_PICOLA)\ $(LIB_DEC_G729) $(LIB_DEC_G723)# rulesdefault : allall : mp4auenc mp4audecmp4auenc : $(MAKE) $(MFLAGS) OBJS="$(OBJS_ENC)"\ LIBS="$(LIBS_ENC)" COMLIBS="$(LIBS_COM)"\ CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"\ DEFFLAGS="$(DEFFLAGS)" VERSION="$(VERSION)"\ INCLDEP=1 ENCODE=1 TARGET=mp4auenc binarymp4audec : $(MAKE) $(MFLAGS) OBJS="$(OBJS_DEC)"\ LIBS="$(LIBS_DEC)" COMLIBS="$(LIBS_COM)"\ CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"\ DEFFLAGS="$(DEFFLAGS)" VERSION="$(VERSION)"\ INCLDEP=1 TARGET=mp4audec binarydepend : $(MAKE) $(MFLAGS) OBJS="$(OBJS_ENC)" VERSION="$(VERSION)"\ ENCODE=1 TARGET=mp4auenc depend $(MAKE) $(MFLAGS) OBJS="$(OBJS_DEC)" VERSION="$(VERSION)"\ TARGET=mp4audec dependclean : $(MAKE) $(MFLAGS) OBJS="$(OBJS_ENC)" VERSION="$(VERSION)"\ ENCODE=1 TARGET=mp4auenc clean $(MAKE) $(MFLAGS) OBJS="$(OBJS_DEC)" VERSION="$(VERSION)"\ TARGET=mp4audec cleanmakedirs : $(MAKE) $(MFLAGS) OBJS="" VERSION="$(VERSION)"\ TARGET=mp4auenc makedirs $(MAKE) $(MFLAGS) OBJS="" VERSION="$(VERSION)"\ TARGET=mp4audec makedirsendif #MAKELEVEL == 0#############################################################################ifeq "$(MAKELEVEL)" "1"# HP 981202 VERSION now passed down to MAKELEVEL 1ifeq "$(VERSION)" "2"VERDIR = v2elseVERDIR = v1endif# -lm is always included HP 961203SYSLIBS = -lm# defaults for "make depend" as used by most platformsDEPFLAGS = -M# SED = sed 's
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -