summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2009-12-12 01:54:33 +0100
committerDavid Kalnischkies <kalnischkies@gmail.com>2009-12-12 01:54:33 +0100
commitc0a73937424fa427972835342f12f5fbaa6d0c88 (patch)
tree79cedc6ac05f5809bbca543e4c8ee809aefdfed7
parente4c2981b6ecb3c506d8470d4ce39fb8af29339c7 (diff)
revert this commit as fast as possible (aka next ABI break)
This commit sets up our faked library extension to trick the build system into building the packages with libc6.9-6 while we are actually already at libc6.10-6. Oh dear...
-rw-r--r--apt-pkg/init.h2
-rw-r--r--buildlib/library.mak14
-rw-r--r--buildlib/libversion.mak7
-rwxr-xr-xdebian/rules14
4 files changed, 22 insertions, 15 deletions
diff --git a/apt-pkg/init.h b/apt-pkg/init.h
index dde4cf679..b1ed5922b 100644
--- a/apt-pkg/init.h
+++ b/apt-pkg/init.h
@@ -23,7 +23,7 @@
// See also buildlib/libversion.mak
// FIXME: this needs to be changed to "4" (without quotes) on the next
// ABI break
-#define APT_PKG_MAJOR libc6.10-6-4
+#define APT_PKG_MAJOR 4
#define APT_PKG_MINOR 8
#define APT_PKG_RELEASE 0
diff --git a/buildlib/library.mak b/buildlib/library.mak
index 029e87463..2a4bb782a 100644
--- a/buildlib/library.mak
+++ b/buildlib/library.mak
@@ -16,11 +16,11 @@
# See defaults.mak for information about LOCAL
# Some local definitions
-LOCAL := lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+LOCAL := lib$(LIBRARY)$(LIBEXT).so.$(MAJOR).$(MINOR)
$(LOCAL)-OBJS := $(addprefix $(OBJ)/,$(addsuffix .opic,$(notdir $(basename $(SOURCE)))))
$(LOCAL)-DEP := $(addprefix $(DEP)/,$(addsuffix .opic.d,$(notdir $(basename $(SOURCE)))))
$(LOCAL)-HEADERS := $(addprefix $(INCLUDE)/,$(HEADERS))
-$(LOCAL)-SONAME := lib$(LIBRARY).so.$(MAJOR)
+$(LOCAL)-SONAME := lib$(LIBRARY)$(LIBEXT).so.$(MAJOR)
$(LOCAL)-SLIBS := $(SLIBS)
$(LOCAL)-LIBRARY := $(LIBRARY)
@@ -29,7 +29,7 @@ include $(PODOMAIN_H)
# Install the command hooks
headers: $($(LOCAL)-HEADERS)
-library: $(LIB)/lib$(LIBRARY).so $(LIB)/lib$(LIBRARY).so.$(MAJOR)
+library: $(LIB)/lib$(LIBRARY).so $(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR)
clean: clean/$(LOCAL)
veryclean: veryclean/$(LOCAL)
@@ -44,14 +44,14 @@ veryclean/$(LOCAL): clean/$(LOCAL)
-rm -f $($(@F)-HEADERS) $(LIB)/lib$($(@F)-LIBRARY)*.so*
# Build rules for the two symlinks
-.PHONY: $(LIB)/lib$(LIBRARY).so.$(MAJOR) $(LIB)/lib$(LIBRARY).so
-$(LIB)/lib$(LIBRARY).so.$(MAJOR): $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+.PHONY: $(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR) $(LIB)/lib$(LIBRARY).so
+$(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR): $(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR).$(MINOR)
ln -sf $(<F) $@
-$(LIB)/lib$(LIBRARY).so: $(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR)
+$(LIB)/lib$(LIBRARY).so: $(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR).$(MINOR)
ln -sf $(<F) $@
# The binary build rule
-$(LIB)/lib$(LIBRARY).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS)
+$(LIB)/lib$(LIBRARY)$(LIBEXT).so.$(MAJOR).$(MINOR): $($(LOCAL)-HEADERS) $($(LOCAL)-OBJS)
-rm -f $(LIB)/lib$($(@F)-LIBRARY)*.so* 2> /dev/null
echo Building shared library $@
$(CXX) $(CXXFLAGS) $(LDFLAGS) $(PICFLAGS) $(LFLAGS) $(LFLAGS_SO)\
diff --git a/buildlib/libversion.mak b/buildlib/libversion.mak
index 796c956e7..26ca86ced 100644
--- a/buildlib/libversion.mak
+++ b/buildlib/libversion.mak
@@ -12,3 +12,10 @@ LIBAPTPKG_RELEASE=$(shell grep -E '^\#define APT_PKG_RELEASE' $(BASE)/apt-pkg/in
# The versionnumber is extracted from apt-inst/makefile - see also there.
LIBAPTINST_MAJOR=$(shell egrep '^MAJOR=' $(BASE)/apt-inst/makefile |cut -d '=' -f 2)
LIBAPTINST_MINOR=$(shell egrep '^MINOR=' $(BASE)/apt-inst/makefile |cut -d '=' -f 2)
+
+# FIXME: In previous releases this lovely variable includes
+# the detected libc and libdc++ version. As this is bogus we
+# want to drop this, but this a ABI break.
+# And we don't want to do this now. So we hardcode a value here,
+# and drop it later on (hopefully as fast as possible).
+LIBEXT=-libc6.9-6
diff --git a/debian/rules b/debian/rules
index f69c0cffb..d01b57cd6 100755
--- a/debian/rules
+++ b/debian/rules
@@ -78,21 +78,21 @@ APT_UTILS=ftparchive sortpkgs extracttemplates
include buildlib/libversion.mak
# Determine which package we should provide in the control files
-LIBAPTPKG_PROVIDE=libapt-pkg-$(LIBAPTPKG_MAJOR)
-LIBAPTINST_PROVIDE=libapt-inst-$(LIBAPTINST_MAJOR)
+LIBAPTPKG_PROVIDE=libapt-pkg$(LIBEXT)-$(LIBAPTPKG_MAJOR)
+LIBAPTINST_PROVIDE=libapt-inst$(LIBEXT)-$(LIBAPTINST_MAJOR)
debian/shlibs.local: apt-pkg/makefile
# We have 3 shlibs.local files.. One for 'apt', one for 'apt-utils' and
# one for the rest of the packages. This ensures that each package gets
# the right overrides..
rm -rf $@ $@.apt $@.apt-utils
- echo "libapt-pkg $(LIBAPTPKG_MAJOR)" > $@.apt
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR)" > $@.apt
- echo "libapt-pkg $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@.apt-utils
- echo "libapt-inst $(LIBAPTINST_MAJOR)" >> $@.apt-utils
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@.apt-utils
+ echo "libapt-inst$(LIBEXT) $(LIBAPTINST_MAJOR)" >> $@.apt-utils
- echo "libapt-pkg $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@
- echo "libapt-inst $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@
+ echo "libapt-pkg$(LIBEXT) $(LIBAPTPKG_MAJOR) $(LIBAPTPKG_PROVIDE)" > $@
+ echo "libapt-inst$(LIBEXT) $(LIBAPTINST_MAJOR) $(LIBAPTINST_PROVIDE)" >> $@
build: build/build-stamp
build-doc: build/build-doc-stamp