Subversion Repositories Kolibri OS

Rev

Rev 1905 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1.  
  2. CC=gcc
  3. CPP=gcc -E
  4.  
  5. CFLAGS= -c -combine -O2 -fomit-frame-pointer -ffast-math -mmmx -finline-functions
  6.  
  7. LDIMPORT:= -nostdlib --out-implib libmpg123imp.a --exclude-libs libamz.a
  8.  
  9. LDFLAGS:=  -shared -s -T../newlib/dll.lds --image-base 0
  10.  
  11. INCLUDES= -I../newlib/include
  12.  
  13. LIBPATH:= -L../newlib
  14.  
  15. LIBS:=  -lamz -lgcc -lcimp
  16.  
  17.  
  18. NAME:=    libmpg123
  19.  
  20. DEFINES:= -DHAVE_CONFIG_H -DOPT_MMX -DOPT_MULTI -DREAL_IS_FLOAT -DNOXFERMEM
  21.  
  22.  
  23. SRCS=                                           \
  24.                         libmpg123.c             \
  25.                         compat.c                \
  26.                         dct64.c                 \
  27.                         dct64_i386.c            \
  28.                         equalizer.c             \
  29.                         optimize.c              \
  30.                         icy.c                   \
  31.                         id3.c                   \
  32.                         index.c                 \
  33.                         layer1.c                \
  34.                         layer2.c                \
  35.                         layer3.c                \
  36.                         synth.c                 \
  37.                         tabinit.c               \
  38.                         parse.c                 \
  39.                         readers.c               \
  40.                         frame.c                 \
  41.                         format.c
  42.  
  43. ASM=                                            \
  44.                         getcpuflags.S           \
  45.                         tabinit_mmx.S           \
  46.                         dct64_mmx.S             \
  47.                         synth_mmx.S
  48.  
  49. ASM_OBJS =  $(patsubst %.S, %.o, $(ASM))
  50. SRCS_OBJ = $(patsubst %.c, %.o, $(SRCS))
  51.  
  52.  
  53. all: $(NAME).dll
  54.  
  55. $(NAME).dll: $(SRCS_OBJ) $(ASM_OBJS) Makefile
  56.         ld $(LDIMPORT) $(LIBPATH) $(LDFLAGS) -o $@ $(SRCS_OBJ) $(ASM_OBJS) $(LIBS)
  57.  
  58.  
  59. %.o : %.S $(ASM) Makefile
  60.         $(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
  61.  
  62. %.o: %.c Makefile
  63.         $(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $<
  64.  
  65. clean:
  66.         -rm -f *.o
  67.  
  68.