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
|
TARGET = liborigin
TARGET0 = $(TARGET).so
TARGET1 = $(TARGET0).0
TARGET2 = $(TARGET0).0.0
TARGET3 = $(TARGET0).0.0.4
OPJ = OPJFile
OPJ2DAT = opj2dat
CC = g++
CFLAGS = -pipe -Wall -W -O2 -fPIC
LDFLAGS = -shared -Wl,-soname,$(TARGET1)
LIBEXT = `./lib-arch.sh`
all : $(TARGET0) $(OPJ2DAT)
$(TARGET0) : $(OPJ).cpp $(OPJ).h
$(CC) -c $(CFLAGS) $(OPJ).cpp -o $(OPJ).o
$(CC) $(LDFLAGS) -o $(TARGET3) $(OPJ).o
mkdir -p lib
chmod 644 $(TARGET3)
mv -f $(TARGET3) lib/
(cd lib/;\
ln -sf $(TARGET3) $(TARGET0);\
ln -sf $(TARGET3) $(TARGET1);\
ln -sf $(TARGET3) $(TARGET2))
$(OPJ2DAT): $(OPJ2DAT).cpp
$(CC) $(CFLAGS) -L lib/ -o $(OPJ2DAT) -lorigin $(OPJ2DAT).cpp
clean :
rm -f *~ *.o $(OPJ2DAT) $(TARGET0)*
rm -rf lib/
install:
mkdir -pv $(DESTDIR)/usr/$(LIBEXT)
cp -a lib/* $(DESTDIR)/usr/$(LIBEXT)/
mkdir -p $(DESTDIR)/usr/bin
chmod 755 $(OPJ2DAT)
cp $(OPJ2DAT) $(DESTDIR)/usr/bin
mkdir -p $(DESTDIR)/usr/include/$(TARGET)
chmod 644 $(OPJ).h tree.hh
cp $(OPJ).h tree.hh $(DESTDIR)/usr/include/$(TARGET)
ldconfig
uninstall:
rm -f $(DESTDIR)/usr/$(LIBEXT)/$(TARGET0)* $(DESTDIR)/usr/bin/$(OPJ2DAT) $(DESTDIR)/usr/include/$(TARGET)/$(OPJ).h
ldconfig
|