Implement bzip2
This commit is contained in:
parent
c970910138
commit
18e7cb41a1
@ -3,42 +3,80 @@
|
|||||||
# bzip2
|
# bzip2
|
||||||
#
|
#
|
||||||
#############################################################
|
#############################################################
|
||||||
BZIP2_SOURCE=bzip2-1.0.2.tar.gz
|
BZIP2_SOURCE:=bzip2-1.0.2.tar.gz
|
||||||
BZIP2_SITE=ftp://sources.redhat.com/pub/bzip2/v102
|
BZIP2_SITE:=ftp://sources.redhat.com/pub/bzip2/v102
|
||||||
BZIP2_DIR=$(BUILD_DIR)/bzip2-1.0.2
|
BZIP2_DIR:=$(BUILD_DIR)/bzip2-1.0.2
|
||||||
|
BZIP2_CAT:=zcat
|
||||||
|
BZIP2_BINARY:=$(BZIP2_DIR)/bzip2
|
||||||
|
BZIP2_TARGET_BINARY:=$(TARGET_DIR)/usr/bin/bzmore
|
||||||
|
|
||||||
ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
|
ifeq ($(strip $(BUILD_WITH_LARGEFILE)),false)
|
||||||
BZIP2_CFLAGS="-Os -g -mpreferred-stack-boundary=2 -falign-functions=1 -falign-jumps=0 -falign-loops=0 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
|
BZIP2_LARGEFILE="--disable-largefile"
|
||||||
else
|
|
||||||
BZIP2_CFLAGS="-Os -g -mpreferred-stack-boundary=2 -falign-functions=1 -falign-jumps=0 -falign-loops=0"
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(DL_DIR)/$(BZIP2_SOURCE):
|
$(DL_DIR)/$(BZIP2_SOURCE):
|
||||||
$(WGET) -P $(DL_DIR) $(BZIP2_SITE)/$(BZIP2_SOURCE)
|
$(WGET) -P $(DL_DIR) $(BZIP2_SITE)/$(BZIP2_SOURCE)
|
||||||
|
|
||||||
$(BZIP2_DIR)/.source: $(DL_DIR)/$(BZIP2_SOURCE)
|
bzip2-source: $(DL_DIR)/$(BZIP2_SOURCE)
|
||||||
zcat $(DL_DIR)/$(BZIP2_SOURCE) | tar -C $(BUILD_DIR) -xvf -
|
|
||||||
touch $(BZIP2_DIR)/.source
|
|
||||||
|
|
||||||
$(BZIP2_DIR)/libbz2.a: $(BZIP2_DIR)/.source
|
$(BZIP2_DIR)/.unpacked: $(DL_DIR)/$(BZIP2_SOURCE)
|
||||||
$(MAKE) CC=$(TARGET_CC1) AR=$(TARGET_CROSS)ar RANLIB=$(TARGET_CROSS)ranlib \
|
$(BZIP2_CAT) $(DL_DIR)/$(BZIP2_SOURCE) | tar -C $(BUILD_DIR) -xvf -
|
||||||
CFLAGS=$(BZIP2_CFLAGS) -C $(BZIP2_DIR) libbz2.a;
|
perl -pi -e "s,ln \\$$\(,ln -sf \\$$\(,g" $(BZIP2_DIR)/Makefile
|
||||||
touch -c $(BZIP2_DIR)/libbz2.a
|
perl -pi -e "s,ln -s (lib.*),ln -sf \$$1 ; ln -sf libbz2.so.1.0.2 libbz2.so,g" \
|
||||||
|
$(BZIP2_DIR)/Makefile-libbz2_so
|
||||||
|
touch $(BZIP2_DIR)/.unpacked
|
||||||
|
|
||||||
$(STAGING_DIR)/lib/libbz2.a: $(BZIP2_DIR)/libbz2.a
|
$(STAGING_DIR)/lib/libbz2.so.1.0.2: $(BZIP2_DIR)/.unpacked
|
||||||
cp -a $(BZIP2_DIR)/libbz2.a $(STAGING_DIR)/lib;
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
cp -a $(BZIP2_DIR)/bzlib.h $(STAGING_DIR)/include;
|
$(MAKE) CC=$(TARGET_CC) -C $(BZIP2_DIR) -f Makefile-libbz2_so
|
||||||
touch -c $(STAGING_DIR)/lib/libbz2.a
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
|
$(MAKE) CC=$(TARGET_CC) -C $(BZIP2_DIR) libbz2.a
|
||||||
|
cp $(BZIP2_DIR)/bzlib.h $(STAGING_DIR)/include/
|
||||||
|
cp $(BZIP2_DIR)/libbz2.so.1.0.2 $(STAGING_DIR)/lib/
|
||||||
|
cp $(BZIP2_DIR)/libbz2.a $(STAGING_DIR)/lib/
|
||||||
|
(cd $(STAGING_DIR)/lib/; ln -sf libbz2.so.1.0.2 libbz2.so)
|
||||||
|
(cd $(STAGING_DIR)/lib/; ln -sf libbz2.so.1.0.2 libbz2.so.1.0)
|
||||||
|
|
||||||
#$(TARGET_DIR)/lib/libbz2.so.1.1.4: $(STAGING_DIR)/lib/libbz2.so.1.1.4
|
$(BZIP2_BINARY): $(STAGING_DIR)/lib/libbz2.so.1.0.2
|
||||||
# cp -a $(STAGING_DIR)/lib/libbz2.so* $(TARGET_DIR)/lib;
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
# -$(STRIP) --strip-unneeded $(TARGET_DIR)/lib/libbz2.so*
|
$(MAKE) CC=$(TARGET_CC) -C $(BZIP2_DIR) bzip2 bzip2recover
|
||||||
# touch -c $(TARGET_DIR)/lib/libbz2.so.1.1.4
|
|
||||||
|
|
||||||
bzip2: uclibc $(STAGING_DIR)/lib/libbz2.a
|
$(BZIP2_TARGET_BINARY): $(BZIP2_BINARY)
|
||||||
|
$(TARGET_CONFIGURE_OPTS) \
|
||||||
|
$(MAKE) PREFIX=$(TARGET_DIR)/usr -C $(BZIP2_DIR) install
|
||||||
|
rm -f $(TARGET_DIR)/usr/lib/libbz2.a
|
||||||
|
rm -f $(TARGET_DIR)/usr/include/bzlib.h
|
||||||
|
cp $(BZIP2_DIR)/libbz2.so.1.0.2 $(TARGET_DIR)/usr/lib/
|
||||||
|
(cd $(TARGET_DIR)/usr/lib; \
|
||||||
|
ln -sf libbz2.so.1.0.2 libbz2.so.1.0; \
|
||||||
|
ln -sf libbz2.so.1.0.2 libbz2.so)
|
||||||
|
(cd $(TARGET_DIR)/usr/bin; \
|
||||||
|
ln -sf bzip2 bunzip2; \
|
||||||
|
ln -sf bzip2 bzcat; \
|
||||||
|
ln -sf bzdiff bzcmp; \
|
||||||
|
ln -sf bzmore bzless; \
|
||||||
|
ln -sf bzgrep bzegrep; \
|
||||||
|
ln -sf bzgrep bzfgrep;)
|
||||||
|
rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
|
||||||
|
$(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
|
||||||
|
|
||||||
|
$(TARGET_DIR)/usr/lib/libbz2.a: $(STAGING_DIR)/lib/libbz2.a
|
||||||
|
mkdir -p $(TARGET_DIR)/usr/include
|
||||||
|
cp $(STAGING_DIR)/include/bzlib.h $(TARGET_DIR)/usr/include/
|
||||||
|
cp $(STAGING_DIR)/lib/libbz2.a $(TARGET_DIR)/usr/lib/
|
||||||
|
rm -f $(TARGET_DIR)/lib/libbz2.so
|
||||||
|
(cd $(TARGET_DIR)/usr/lib; \
|
||||||
|
ln -fs /usr/lib/libbz2.so.1.0 libbz2.so; \
|
||||||
|
)
|
||||||
|
touch -c $(TARGET_DIR)/usr/lib/libbz2.a
|
||||||
|
|
||||||
|
bzip2-headers: $(TARGET_DIR)/usr/lib/libbz2.a
|
||||||
|
|
||||||
|
bzip2: uclibc $(BZIP2_TARGET_BINARY)
|
||||||
|
|
||||||
bzip2-clean:
|
bzip2-clean:
|
||||||
-make -C $(BZIP2_DIR) clean
|
$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(BZIP2_DIR) uninstall
|
||||||
|
-$(MAKE) -C $(BZIP2_DIR) clean
|
||||||
|
|
||||||
bzip2-dirclean:
|
bzip2-dirclean:
|
||||||
rm -rf $(BZIP2_DIR)
|
rm -rf $(BZIP2_DIR)
|
||||||
|
Loading…
Reference in New Issue
Block a user