X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=Makefile.opts.in;h=51fa4b87cf206902d90ba2b0f868b7304e549f0e;hb=bd4d55d72e311ff4c8ac2c50568163dbb98ede2e;hp=7121e6db94e2d67565813c4d8ddfb394ae9efda2;hpb=79a45f72ac0e4bda8f2796bf7ffed7ef7fc7f3f8;p=vlc diff --git a/Makefile.opts.in b/Makefile.opts.in index 7121e6db94..51fa4b87cf 100644 --- a/Makefile.opts.in +++ b/Makefile.opts.in @@ -3,31 +3,53 @@ # (c)1998 VideoLAN ############################################################################### +HAVE_MAKEFILE_OPTS = 1 + ############################################################################### # Configuration ############################################################################### -# -# Compilation options -# -DEBUG = @DEBUG@ -STATS = @STATS@ -OPTIMS = @OPTIMS@ -GETOPT = @GETOPT@ +# +# Plugins to build +# WARNING: if you do not have a dynamic loader on your platform, remove +# the plugins in this line and put them as built-ins, otherwise your +# application won't be able to load them. +# +PLUGINS :=@PLUGINS@ -PLUGINS := @PLUGINS@ -BUILTINS := @BUILTINS@ +# +# Built-in modules to build +# WARNING: do NOT put gtk and gnome together in this rule. +# +BUILTINS :=@BUILTINS@ +# +# Additional build options +# SYS = @SYS@ ALIASES =@ALIASES@ INSTALL = @INSTALL@ ARCH = @ARCH@ +# +# Compilation options +# +DEBUG = @DEBUG@ +TRACE = @TRACE@ +CPROF = @CPROF@ +GPROF = @GPROF@ +OPTIMS = @OPTIMS@ +TUNING = @TUNING@ + # # Build environment # CC = @CC@ +CFLAGS = @CFLAGS@ SHELL = @SHELL@ +RANLIB = @RANLIB@ +WINDRES = @WINDRES@ +MOC = @MOC@ # # Installation environment @@ -37,28 +59,57 @@ prefix = @prefix@ bindir = @bindir@ datadir = @datadir@ libdir = @libdir@ +includedir = @includedir@ # # Libraries for special cases # LIB_ALSA = @LIB_ALSA@ +LIB_ALTIVEC = @LIB_ALTIVEC@ LIB_BEOS = @LIB_BEOS@ LIB_DARWIN = @LIB_DARWIN@ +LIB_DVD = @LIB_DVD@ +LIB_DVD_PLUGIN = @LIB_DVD_PLUGIN@ LIB_ESD = @LIB_ESD@ LIB_GGI = @LIB_GGI@ LIB_GLIDE = @LIB_GLIDE@ LIB_GNOME = @LIB_GNOME@ LIB_GTK = @LIB_GTK@ -LIB_IDCTALTIVEC = @LIB_IDCTALTIVEC@ +LIB_LIBDVDCSS = @LIB_LIBDVDCSS@ +LIB_KDE = @LIB_KDE@ LIB_MACOSX = @LIB_MACOSX@ +LIB_QNX = @LIB_QNX@ LIB_NCURSES = @LIB_NCURSES@ LIB_QT = @LIB_QT@ LIB_TS = @LIB_TS@ LIB_SDL = @LIB_SDL@ +LIB_DIRECTX = @LIB_DIRECTX@ LIB_X11 = @LIB_X11@ LIB_XVIDEO = @LIB_XVIDEO@ LIB_YUV = @LIB_YUV@ +# +# CFLAGS for special cases +# +CFLAGS_ALTIVEC = @CFLAGS_ALTIVEC@ +CFLAGS_DVD = @CFLAGS_DVD@ +CFLAGS_LIBDVDCSS = @CFLAGS_LIBDVDCSS@ +CFLAGS_GTK = @CFLAGS_GTK@ +CFLAGS_SDL = @CFLAGS_SDL@ +CFLAGS_X11 = @CFLAGS_X11@ + +# +# Additional objects +# +OBJ_DVD = @OBJ_DVD@ +OBJ_LIBDVDCSS = @OBJ_LIBDVDCSS@ + +# +# Other special cases +# +NEED_GETOPT = @NEED_GETOPT@ +NEED_LIBDVDCSS = @NEED_LIBDVDCSS@ + ############################################################################### # Configuration pre-processing ############################################################################### @@ -69,9 +120,17 @@ ifeq ($(DEBUG),1) PROGRAM_OPTIONS += DEBUG DEFINE += -DDEBUG endif -ifeq ($(STATS),1) -PROGRAM_OPTIONS += DEBUG -DEFINE += -DSTATS +ifeq ($(TRACE),1) +PROGRAM_OPTIONS += TRACE +DEFINE += -DTRACE +endif +ifeq ($(CPROF),1) +PROGRAM_OPTIONS += CPROF +DEFINE += -DCPROF +endif +ifeq ($(GPROF),1) +PROGRAM_OPTIONS += GPROF +DEFINE += -DGPROF endif # PROGRAM_BUILD is a complete identification of the build @@ -86,15 +145,15 @@ endif # PROGRAM_VERSION is the current vlc version PROGRAM_VERSION=@VLC_VERSION@ +LIBDVDCSS_VERSION=@LIBDVDCSS_VERSION@ # DEFINE will contain some of the constants definitions decided in Makefile, # including SYS_xx. It will be passed to C compiler. -DEFINE += -DSYS_$(shell echo $(SYS) | sed 's/-.*//' | tr '[a-z].' '[A-Z]_') +DEFINE_CONSTANTS := -DSYS_$(shell echo $(SYS) | sed -e 's/-.*//' | tr '[a-z].' '[A-Z]_') +DEFINE += $(DEFINE_CONSTANTS) -# On Linux activate 64-bit off_t (by default under BSD) -ifneq (,$(findstring linux,$(SYS))) +# On Linux and Solaris, activate 64-bit off_t (by default under BSD) DEFINE += -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -endif ############################################################################### # Tuning and other variables - do not change anything except if you know @@ -105,23 +164,35 @@ endif # C headers directories # INCLUDE += @INCLUDE@ -INCLUDE += -Iinclude -Iextras -I/usr/local/include +INCLUDE += -Iinclude -Iextras # -# Libraries +# Libraries needed by built-in modules # -LIB += @LIB@ -L/usr/local/lib +# Let's go for a crude hack ! +LIB_MOTIONALTIVEC := $(LIB_ALTIVEC) +LIB_IDCTALTIVEC := $(LIB_ALTIVEC) +ifneq (,$(BUILTINS)) +LIB_BUILTINS := $(shell for i in ${BUILTINS} ; do echo $$i | tr '[a-z]' '[A-Z]' | sed -e 's/.*/$$LIB_&/' ; done) +LIB += $(LIB_BUILTINS) +endif # -# Libraries needed by built-in modules +# Libraries # -LIB += $(shell for i in ${BUILTINS} ; do echo $$i | tr '[a-z]' '[A-Z]' | sed 's/.*/$$LIB_&/' ; done) +ifneq (,$(findstring mingw32,$(SYS))) +LIB += -lws2_32 -lnetapi32 +endif + +LIB += @LIB@ # # C compiler flags: mainstream compilation # +DEFINE += @DEFINE@ CFLAGS += $(DEFINE) $(INCLUDE) CFLAGS += -Wall -Winline +CFLAGS += -pipe CFLAGS += -D_REENTRANT CFLAGS += -D_GNU_SOURCE @@ -131,41 +202,51 @@ CFLAGS += -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual endif ifneq (,$(findstring darwin,$(SYS))) -CFLAGS += -traditional-cpp +CFLAGS += -no-cpp-precomp +endif + +ifneq (,$(findstring mingw32,$(SYS))) +CFLAGS += -fnative-struct -D_OFF_T_ -D_off_t=long +endif + +ifneq (,$(findstring bsd,$(SYS))) +CFLAGS += -pthread endif # Optimizations : don't compile debug versions with them ifeq ($(OPTIMS),1) CFLAGS += -O3 CFLAGS += -ffast-math -funroll-loops +ifneq ($(DEBUG),1) +ifneq ($(GPROF),1) +ifneq ($(CPROF),1) CFLAGS += -fomit-frame-pointer - -# Optimizations for x86 familiy -ifneq (,$(findstring 86,$(ARCH))) -# Optional Pentium Pro optimizations -ifneq (,$(findstring ppro,$(ARCH))) -CFLAGS += -march=pentiumpro -mcpu=pentiumpro -else -CFLAGS += -march=pentium -mcpu=pentium +endif endif endif -# Optimizations for PowerPC ifneq (,$(findstring powerpc,$(ARCH))) -CFLAGS += -mmultiple -mhard-float -mstring +# Optimizations for PowerPC +CFLAGS += -mmultiple -mhard-float -mstring -mcpu=powerpc +ifneq (,$(TUNING)) +CFLAGS += -mtune=$(TUNING) endif - -# Optimizations for Sparc +else ifneq (,$(findstring sparc,$(ARCH))) +# Optimizations for Sparc CFLAGS += -mhard-float +ifneq (,$(TUNING)) +CFLAGS += -mcpu=$(TUNING) +endif +else +# Generic optimizations +ifneq (,$(TUNING)) +CFLAGS += -mcpu=$(TUNING) +endif endif - -#end of optimisations endif -# Optional MMX optimizations for x86 -ifneq (,$(findstring mmx,$(ARCH))) -CFLAGS += -DHAVE_MMX +#end of optimisations endif # @@ -179,26 +260,49 @@ DCFLAGS += -MM # LCFLAGS += @LCFLAGS@ $(LIB) LCFLAGS += -Wall +ifneq ($(DEBUG),1) +ifneq ($(GPROF),1) +ifneq ($(CPROF),1) #LCFLAGS += -s - -ifeq ($(SYS),beos) -LCFLAGS += -Xlinker -soname=_APP_ -else -ifneq (,$(findstring qnx,$(SYS))) -LCFLAGS += -Xlinker -export-dynamic -else -ifneq (,$(findstring darwin,$(SYS))) -LCFLAGS += -dyn -else -LCFLAGS += --export-dynamic endif endif endif +ifneq (,$(findstring mingw32,$(SYS))) +LCFLAGS += -mwindows -Xlinker --force-exe-suffix +endif + +# +# C compiler and linker flags: setting soname +# +SOFLAGS = @SOFLAGS@ + +# +# C compiler flags: plugin compilation +# +ifneq (,$(findstring mingw32,$(SYS))) +PCFLAGS += -fnative-struct +else +PCFLAGS += -fPIC +endif # -# Debugging and profiling support (unless optimisations are active) +# C compiler flags: plugin linking +# +PLCFLAGS += @PLCFLAGS@ + # -ifneq ($(OPTIMS),1) +# Debugging and profiling support +# +ifeq ($(DEBUG),1) CFLAGS += -g endif +ifeq ($(CPROF),1) +CFLAGS += -finstrument-functions +endif + +ifeq ($(GPROF),1) +CFLAGS += -pg +endif + +