⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makefile.unix

📁 音频编码
💻 UNIX
📖 第 1 页 / 共 2 页
字号:
   LIBS =ifeq ($(ARCH),BePC)   CC_OPTS = -O9 -fomit-frame-pointer -march=pentium \   -mcpu=pentium -ffast-math -funroll-loops \   -fprofile-arcs -fbranch-probabilitieselse   CC_OPTS = -opt all   MAKEDEP = -makeendifendif############################################################################ MOSXS (Rhapsody PPC)###########################################################################ifeq ($(UNAME),Rhapsody)   CC = cc   LIBS =   CC_OPTS = -O9 -ffast-math -funroll-loops -fomit-frame-pointer   MAKEDEP = -make    endif########################################################################### OS/2########################################################################### Properly installed EMX runtime & development package is a prerequisite.# tools I used: make 3.76.1, uname 1.12, sed 2.05, PD-ksh 5.2.13###########################################################################ifeq ($(UNAME),OS/2)   SHELL=sh	   CC = gcc   CC_OPTS = -O3 -D__OS2__   PGM = lame.exe   LIBS =   RANLIB = touch# I use the following for slightly better performance on my Pentium-II# using pgcc-2.91.66:#   CC_OPTS = -O6 -ffast-math -funroll-loops -mpentiumpro -march=pentiumpro -D__OS2__# for the unfortunates with a regular pentium (using pgcc):# CC_OPTS = -O6 -ffast-math -funroll-loops -mpentium -march=pentium -D__OS2__# Comment out next 2 lines if you want to remove VBR histogram capability   BRHIST_SWITCH = -DBRHIST -DHAVE_TERMCAP -DHAVE_{NCURSES_}TERMCAP_H   LIBTERMCAP = -lncurses# Uncomment & inspect the 2 GTK lines to use MP3x GTK frame analyzer.# Properly installed XFree86/devlibs & GTK+ is a prerequisite.# The following works for me using Xfree86/OS2 3.3.5 and GTK+ 1.2.3:#   GTK = -DHAVE_GTK -IC:/XFree86/include/gtk12 -Zmt -D__ST_MT_ERRNO__ -IC:/XFree86/include/glib12 -IC:/XFree86/include#   GTKLIBS = -LC:/XFree86/lib -Zmtd -Zsysv-signals -Zbin-files -lgtk12 -lgdk12 -lgmodule -lglib12 -lXext -lX11 -lshm -lbsd -lsocket -lmendif############################################################################ MSDOS/Windows###########################################################################ifeq ($(UNAME),MSDOS)  RM =  CC_OPTS = \       -Wall -pipe -O3 -fomit-frame-pointer -ffast-math -funroll-loops \       -fschedule-insns2 -fmove-all-movables -freduce-all-givs         \       -mcpu=pentium -march=pentium -mfancy-math-387  CC_OPTS += -D_cdecl=__cdecl  PGM = lame.exeendif############################################################################ AmigaOS############################################################################ Type 'Make ARCH=PPC' for PowerUP and 'Make ARCH=WOS' for WarpOS############################################################################ifeq ($(UNAME),AmigaOS)	CC = gcc -noixemul	CC_OPTS = -O3 -ffast-math -funroll-loops -m68020-60 -m68881	BRHIST_SWITCH = -DBRHIST	MAKEDEP = -MM	ifeq ($(ARCH),WOS)		CC = ppc-amigaos-gcc -warpup		CC_OPTS = -O3 -ffast-math -fomit-frame-pointer -funroll-loops \		-mmultiple -mcpu=603e		AR = ppc-amigaos-ar		RANLIB = ppc-amigaos-ranlib		LIBS =	endif	ifeq ($(ARCH),PPC)		CC = ppc-amigaos-gcc		CC_OPTS = -O3 -ffast-math -fomit-frame-pointer -funroll-loops \		-mmultiple -mcpu=603e		AR = ppc-amigaos-ar		RANLIB = ppc-amigaos-ranlib		LIBS =	endifendif# 10/99 added -D__NO_MATH_INLINES to fix a bug in *all* versions of# gcc 2.8+ as of 10/99.  ifeq ($(HAVE_NEWER_GLIBC),YES)CC_SWITCHES = elseCC_SWITCHES = -D__NO_MATH_INLINES  # only needed by some older glibcendifCC_SWITCHES += -DNDEBUG $(CC_OPTS) $(SNDLIB) $(GTK) $(BRHIST_SWITCH)frontend_sources = \	frontend/amiga_mpega.c \        frontend/brhist.c \	frontend/get_audio.c \        frontend/lametime.c \        frontend/parse.c \	frontend/portableio.c \	frontend/timestatus.c lib_sources = \	libmp3lame/bitstream.c \	libmp3lame/encoder.c \	libmp3lame/fft.c \	libmp3lame/gain_analysis.c \        libmp3lame/id3tag.c \        libmp3lame/lame.c \        libmp3lame/newmdct.c \	libmp3lame/psymodel.c \	libmp3lame/quantize.c \	libmp3lame/quantize_pvt.c \        libmp3lame/set_get.c \	libmp3lame/vbrquantize.c \	libmp3lame/reservoir.c \	libmp3lame/tables.c \	libmp3lame/takehiro.c \	libmp3lame/util.c \	libmp3lame/mpglib_interface.c \        libmp3lame/VbrTag.c \        libmp3lame/version.c \        libmp3lame/presets.c \        mpglib/common.c \        mpglib/dct64_i386.c \        mpglib/decode_i386.c \        mpglib/layer1.c \        mpglib/layer2.c \        mpglib/layer3.c \        mpglib/tabinit.c \        mpglib/interface.c #ifeq ($(UNAME),MSDOS)#  frontend_sources := $(subst /,\,$(frontend_sources))#  lib_sources := $(subst /,\,$(lib_sources))#endiffrontend_obj = $(frontend_sources:.c=.o)lib_obj = $(lib_sources:.c=.o)DEP = $(frontend_sources:.c=.d) $(lib_sources:.c=.d )gtk_sources = frontend/gtkanal.c frontend/gpkplotting.cgtk_obj = $(gtk_sources:.c=.o)gtk_dep = $(gtk_sources:.c=.d)NASM = nasmASFLAGS=-f elf -i libmp3lame/i386/# for people with nasmwifeq ($(UNAME),MSDOS)  NASM = nasmw ASFLAGS=-f win32 -DWIN32 -i libmp3lame/i386/endif%.o: %.nas	$(NASM) $(ASFLAGS) $< -o $@%.o: %.s	gcc -c $< -o $@#HAVE_NASM = YESifeq ($(HAVE_NASM),YES)## have NASMCC_SWITCHES += -DHAVE_NASMlib_obj += libmp3lame/i386/cpu_feat.o## use MMX extension. you need nasm and MMX supported CPU.CC_SWITCHES += -DMMX_choose_tablelib_obj += libmp3lame/i386/choose_table.o## use 3DNow! extension. you need nasm and 3DNow! supported CPU.lib_obj += libmp3lame/i386/fft3dn.o## not yet coded#CC_SWITCHES += -DUSE_FFTSSE#lib_obj += libmp3lame/i386/fftsse.o## not yet coded#CC_SWITCHES += -DUSE_FFTFPU#lib_obj += libmp3lame/i386/fftfpu.oendif%.o: %.c 	$(CC) $(CPP_OPTS) $(CC_SWITCHES) -c $< -o $@%.d: %.c  ifeq ($(NOUNIXCMD),YES)	$(CC) $(MAKEDEP)  $(CPP_OPTS) $(CC_SWITCHES)  $< > $@  else	$(SHELL) -ec '$(CC) $(MAKEDEP)  $(CPP_OPTS) $(CC_SWITCHES)  $< | sed '\''s;$*.o;& $@;g'\'' > $@'  endifall: frontend/$(PGM)$(lib_sources) $(frontend_sources) $(gtk_sources) : config.hconfig.h: configMS.h  ifeq ($(NOUNIXCMD),YES)	copy configMS.h config.h  else	cp configMS.h config.h  endiffrontend/$(PGM):	frontend/main.o $(frontend_obj)  $(MP3LIB)	$(CC) $(CC_OPTS) -o frontend/$(PGM)  frontend/main.o $(frontend_obj) \        $(MP3LIB) $(LIBS) $(LIBSNDFILE) $(LIBTERMCAP)mp3x:   frontend/mp3x.o $(frontend_obj) $(gtk_obj) $(MP3LIB)	$(CC) $(CC_OPTS) -o frontend/mp3x frontend/mp3x.o $(frontend_obj) $(gtk_obj) $(MP3LIB) \        $(LIBS) $(LIBSNDFILE) $(GTKLIBS) $(LIBTERMCAP)mp3rtp:	frontend/rtp.o frontend/mp3rtp.o  $(frontend_obj) $(MP3LIB)	$(CC) $(CC_OPTS) -o frontend/mp3rtp frontend/mp3rtp.o frontend/rtp.o $(frontend_obj) $(MP3LIB) \        $(LIBS) $(LIBSNDFILE) $(LIBTERMCAP)libmp3lame/libmp3lame.a:  $(lib_obj)	$(AR) cr libmp3lame/libmp3lame.a  $(lib_obj)	$(RANLIB) libmp3lame/libmp3lame.a#shared library.  GNU specific?libmp3lame/libmp3lame.so:  $(lib_obj)	gcc -shared -Wl,-soname,libmp3lame/libmp3lame.so -o libmp3lame/libmp3lame.so $(lib_obj)install:  frontend/$(PGM) #libmp3lame.a	cp frontend/$(PGM) /usr/bin	#cp libmp3lame.a /usr/lib	#cp lame.h /usr/libclean:  ifeq ($(UNAME),MSDOS)	-del $(subst /,\,$(frontend_obj))	-del $(subst /,\,$(lib_obj))	-del $(subst /,\,$(gtk_obj))	-del $(subst /,\,$(DEP))	-del frontend\$(PGM)	-del frontend\main.o	-del libmp3lame\libmp3lame.a  else	-$(RM) $(gtk_obj) $(frontend_obj) $(lib_obj) $(DEP) frontend/$(PGM) \          frontend/main.o frontend/lame libmp3lame/libmp3lame.a \          frontend/mp3x.o frontend/mp3x  endiftags: TAGSTAGS: ${c_sources}	etags -T ${c_sources}ifneq ($(MAKECMDGOALS),clean)  -include $(DEP)endif##  testcase.mp3 is a 2926 byte file.  The first number output by#  wc is the number of bytes which differ between new output#  and 'official' results.  ##  Because of compilier options and effects of roundoff, the #  number of bytes which are different may not be zero, but#  should be at most 30.#test: frontend/$(PGM)	frontend/$(PGM)  --nores -h testcase.wav testcase.new.mp3	cmp -l testcase.new.mp3 testcase.mp3 | wc -ltestg: frontend/$(PGM)	frontend/$(PGM) -g -h ../test/castanets.wav        

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -