1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
# Makefile for libid3
# Targeted quite strictly for Linux, might work on something else, though
# Written by Pawel Wiecek <coven@vmh.net>
# (the original libid3 was lacking this)
CXX=g++
AR=ar
CXXFLAGS=-O3 -Wall
LIBS=-Lz
OBJS=id3_dll_wrapper.o id3_error.o id3_field.o id3_field_binary.o \
id3_field_integer.o id3_field_string_ascii.o id3_field_string_unicode.o \
id3_frame.o id3_frame_parse.o id3_frame_render.o id3_header.o \
id3_header_frame.o id3_header_tag.o id3_int28.o id3_misc_support.o \
id3_tag.o id3_tag_file.o id3_tag_find.o id3_tag_parse.o \
id3_tag_parse_lyrics3.o id3_tag_parse_v1.o id3_tag_render.o id3_tag_sync.o
HEADS=id3_dll.h id3_error.h id3_externals.h id3_field.h id3_frame.h \
id3_header.h id3_header_frame.h id3_header_tag.h id3_int28.h \
id3_misc_support.h id3_tag.h id3_types.h id3_version.h
all: shared libid3.a libid3.so
libid3.a: $(OBJS)
-rm -f libid3.a
ar -rc libid3.a $(OBJS)
shared:
-mkdir shared
libid3.so: $(OBJS)
$(CC) -shared -Wl,-soname,libid3.so.3 -o libid3.so.3.05 shared/*.o \
-lc -lz
strip libid3.so.3.05
ln -fs libid3.so.3.05 libid3.so.3
ln -fs libid3.so.3 libid3.so
.cpp.o:
$(CXX) -c $(CXXFLAGS) -fPIC -o shared/$@ $*.cpp -pipe
$(CXX) -c $(CXXFLAGS) $*.cpp -pipe
$(OBJS): $(HEADS)
clean:
-rm -f *.o *.a *.so*
-rm -rf shared
.PHONY: clean
|