[svn] / branches / dev-api-3 / xvidcore / build / generic / Makefile.linux Repository:
ViewVC logotype

Diff of /branches/dev-api-3/xvidcore/build/generic/Makefile.linux

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/xvidcore/build/generic/Makefile.linux revision 3, Fri Mar 8 02:46:11 2002 UTC branches/dev-api-3/xvidcore/build/generic/Makefile.linux revision 717, Sat Dec 14 08:14:37 2002 UTC
# Line 1  Line 1 
1  #/**************************************************************************  #############################################################################
2  # *  #
3  # * linux makefile  # GNU/Linux Makefile
4  # *  #
5  # * nasm args:  # Edit this file to enable/disable optimizations
6  # * -f fmt              elf (linux), coff (djgpp)  #
7  # * -DPREFIX    add '_' prefix to symbol names  # $Id: Makefile.linux,v 1.6.2.4 2002-12-14 08:14:37 suxen_drol Exp $
8  # *  #
9  # * libso:  #############################################################################
 # * (-lm not neccessary if using -ffast-math)  
 # *  
 # *************************************************************************/  
   
10    
11  include Makefile.inc  include Makefile.inc
12    
13  CC = gcc  # You can set/add options to CC and CFLAGS without editing this Makefile
14    # You have just to export an environment CC/CFLAGS variable before running
15    # make.
16    #
17    # Examples :
18    # $ export CC='gcc-3.1'
19    # $ export CFLAGS='-maccumulate-outgoing-args'
20    # $ make
21    # ...
22    
23    # You can choose a specific compiler here removing the sharp symbol
24    #   - Default is 'cc' which is a symlink to your default distro gcc
25    
26    
27    # CC = gcc
28    # CC = gcc-3.1
29  #CC=icc  #CC=icc
 #CC = /opt/experimental/bin/gcc         # that's where SuSE installs gcc3  
30    
31  CFLAGS = -DARCH_X86 -DLINUX  # Assembler
32    AS = nasm
33    AFLAGS = -f elf
34    
35    # Constants which should not be modified
36    CFLAGS += -DARCH_X86
37    CFLAGS += -DLINUX
38    
39    # Enable multithreaded ME (experimental), other routines to follow
40    # CFLAGS += -D_SMP
41    
42    # Enable some experimental/debugging code
43    #   (Use only if you know what you're doing !)
44        # PSNR during encoding
45    # CFLAGS += -D_DEBUG_PSNR
46    
47  LIBDIR = /usr/local/lib  LIBDIR = /usr/local/lib
48    
49  ifeq ($(CC),icc)  ifeq ($(CC),icc)
50      CFLAGS+= -O3 -ip -tpp6 -xM                  # -tpp7 might be faster (P4 optmization)...  
51      CFLAGS+= -I/opt/intel/compiler50/ia32/include -I/opt/intel/compiler50/ia32/substitute_headers/      # -tpp7 might be faster (P4 optmization)...
52        CFLAGS += -O3 -ip -tpp6 -xM
53        CFLAGS += -I/opt/intel/compiler50/ia32/include
54        CFLAGS += -I/opt/intel/compiler50/ia32/substitute_headers/
55    
56  else  else
57    
58  # CFLAGS += -funroll-loops -ffast-math -fstrict-aliasing -fomit-frame-pointer    # Warning level options
59  # CFLAGS += -fPIC        # Shows all warnings
60  # CFLAGS += -m486    CFLAGS += -Wall
61          # To detect non ANSI C code (xvid is not ANSI C (yet?))
62      # CFLAGS += -pedantic
63    
64    
65      # General Optimization options
66          # Optimize code for size (implies -O2)
67      CFLAGS += -Os
68          # Unroll loops code, this might speed up loops
69      CFLAGS += -funroll-loops
70          # Generates FPU math code
71      CFLAGS += -ffast-math
72          # ??? (man gcc)
73      CFLAGS += -fstrict-aliasing
74          # Omit the x86 push ebp; mov ebp, esp function
75          # header and its corresponding function tailer
76      CFLAGS += -fomit-frame-pointer
77          # Generates Position Independant Code depending on your nasm version,
78          # this could generate shared libraries that segfault because of a nasm
79          # bug
80      CFLAGS += -fPIC
81    
82      # Debugging and Profiling options
83         # Writes debugging symbols in object files
84      # CFLAGS += -g
85         # Includes profiling code in generated code, don't forget to disable
86         # -fomit-frame-pointer as these 2 options are exclusive.
87      # CFLAGS += -p
88    
89    
90      # Architecture options : Valid for every gcc version
91      # Uncomment the one which you want to compile for
92    
93      # CFLAGS += -march=i386 -mcpu=i386
94      # CFLAGS += -march=i486 -mcpu=i486
95      # CFLAGS += -march=i586 -mcpu=i586
96      # CFLAGS += -march=i686 -mcpu=i686
97  # CFLAGS += -march=pentium -mcpu=pentium  # CFLAGS += -march=pentium -mcpu=pentium
98  # CFLAGS += -march=pentiumpro -mcpu=pentiumpro  # CFLAGS += -march=pentiumpro -mcpu=pentiumpro
99    
100      CFLAGS += -Wall -O3 -funroll-loops -ffast-math -march=pentiumpro -mcpu=pentiumpro    # Architecture options : Valid for every gcc >= 3.1
101      CFLAGS += -fstrict-aliasing -fomit-frame-pointer    # Uncomment the one which you want to compile for
102    
103      # CFLAGS += -march=pentium-mmx -mcpu=pentium-mmx
104      # CFLAGS += -march=pentium3 -mcpu=pentium3
105      # CFLAGS += -march=pentium4 -mcpu=pentium4
106      # CFLAGS += -march=athlon -mcpu=athlon
107      # CFLAGS += -march=k6 -mcpu=k6
108      # CFLAGS += -march=k6-2 -mcpu=k6-2
109      # CFLAGS += -march=k6-3 -mcpu=k6-3
110      # CFLAGS += -march=athlon-tbird -mcpu=athlon-tbird
111      # CFLAGS += -march=athlon-xp -mcpu=athlon-xp
112      # CFLAGS += -march=athlon-mp -mcpu=athlon-mp
113    
114      # x86 specific optimization for every gcc
115          # Aligns the stack to 2^4=16bytes boundaries in each function
116          # Local variables should be aligned and make the code faster
117          # some gcc versions (3.0.4) have problems with this option
118          # we can't really trust gcc output :-( You're warned.
119      CFLAGS += -mpreferred-stack-boundary=4
120    
121      # Architecture specific optimization available in gcc >= 3.1
122          # generates floating point sse code (for >= pentium 3)
123      # CFLAGS += -mfpmath=sse
124          # generates both floating point sse and 387 code, this double the amount
125          # of fp registers and could make the code faster
126          # (Still experimental in gcc 3.1.0)
127      # CFLAGS += -mfpmath=sse,387
128    
129  endif  endif
130    
131  AS = nasm  #############################################################################
132  AFLAGS = -f elf  #
133    # Makefile rules
134    #
135    #############################################################################
136    
137  %.o: %.asm  %.o: %.asm
138          $(AS) $(AFLAGS) $< -o $@          $(AS) $(AFLAGS) -I$(<D) $< -o $@
139    
140  RM = rm -rf  RM = rm -rf
141    
# Line 59  Line 153 
153    
154  clean:  clean:
155          $(RM) `find $(SRCDIR) -name "*.o"`          $(RM) `find $(SRCDIR) -name "*.o"`
   
 remove-all:  
         $(RM) $(DIRS)  
         $(RM) $(DIRS_INTEL)  
156          $(RM) $(LIB)          $(RM) $(LIB)
157          $(RM) $(LIBSO)          $(RM) $(LIBSO)
158    
   
159  install: libxvidcore.so  install: libxvidcore.so
160          cp libxvidcore.so $(LIBDIR)                     # you have to bee root for this          cp libxvidcore.so $(LIBDIR)                     # you have to bee root for this
161            cp $(SRCDIR)/xvid.h /usr/local/include
162          /sbin/ldconfig          /sbin/ldconfig
163    
164  install-test: libxvidcore.so                            # if you don't want to overwrite previous compile  install-test: libxvidcore.so                            # if you don't want to overwrite previous compile

Legend:
Removed from v.3  
changed lines
  Added in v.717

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4