opkg recipe overhaul - removal of opkg-nogpg and opkg-nogpg-nocurl.
authorGraham Gower <graham.gower@gmail.com>
Tue, 29 Jun 2010 18:54:00 +0000 (18:54 +0000)
committerKhem Raj <raj.khem@gmail.com>
Tue, 3 Aug 2010 20:02:24 +0000 (13:02 -0700)
None of the distros in OE appear to want/need gpg or curl support in opkg;
so have opkg.inc remove them by default. This diff makes things more consistent
across all distros/tasks/images.

The slugos recipe is kept intact and further divided from the more modern
recipes. The opkg-native recipe is the sane-srcrev version even when building
slugos, which should allow for changes to opkg related bbclasses without
breaking the slugos build.

Build tested for qemumipsel/minimal-image and nslu2/slugos-image.
minimal-image builds 10% quicker in my setup and is 1mb smaller.

Signed-off-by: Graham Gower <graham.gower@gmail.com>
Acked-by: Khem Raj <raj.khem@gmail.com>
Acked-by: Martin Jansa <Martin.Jansa@gmail.com>
27 files changed:
conf/compatibility-providers.conf
conf/distro/angstrom-2008.1.conf
conf/distro/include/preferred-slugos-versions.inc
conf/distro/jlime-2010.1.conf
conf/distro/kaeilos-2010.conf
conf/distro/kaeilos.conf
conf/distro/micro.conf
conf/distro/minimal.conf
conf/distro/nylon.conf
recipes/angstrom/angstrom-feed-configs.bb
recipes/images/minimal-gpe-image.bb
recipes/images/nas-server-image.bb
recipes/images/x11-sato-image.bb
recipes/meta/meta-toolchain-arago.bb
recipes/opkg/files/fix_endianness.patch [deleted file]
recipes/opkg/files/isatty.patch [moved from recipes/opkg/opkg/isatty.patch with 100% similarity]
recipes/opkg/files/opkg-intercept-cleanup.patch [moved from recipes/opkg/opkg/opkg-intercept-cleanup.patch with 100% similarity]
recipes/opkg/files/opkg-libdir.patch [deleted file]
recipes/opkg/opkg-native_svn.bb
recipes/opkg/opkg-nogpg-nocurl-slugos_svn.bb
recipes/opkg/opkg-nogpg-nocurl_svn.bb [deleted file]
recipes/opkg/opkg-nogpg_svn.bb [deleted file]
recipes/opkg/opkg-sdk_svn.bb
recipes/opkg/opkg.inc
recipes/opkg/opkg_svn.bb
recipes/tasks/task-arago-toolchain-target.bb
recipes/tasks/task-sdk-sbox.bb

index 3c193d6..9ab1bb9 100644 (file)
@@ -46,7 +46,6 @@ PREFERRED_PROVIDER_libxss ?= "libxss"
 PREFERRED_PROVIDER_ntp ?= "ntp"
 PREFERRED_PROVIDER_openmoko-alsa-scenarios ?= "fsodeviced"
 PREFERRED_PROVIDER_opkg ?= "opkg"
-#PREFERRED_PROVIDER_opkg ?= "opkg-nogpg"
 PREFERRED_PROVIDER_qemu-native ?= "qemu-native"
 PREFERRED_PROVIDER_qt4-embedded ?= "qt4-embedded"
 PREFERRED_PROVIDER_qt4-x11-free ?= "qt4-x11-free"
index e818086..c62ae62 100644 (file)
@@ -140,7 +140,7 @@ require conf/distro/include/arm-thumb.inc
 
 PREFERRED_PROVIDER_dbus-glib             = "dbus-glib"
 PREFERRED_PROVIDER_hotplug               = "udev"
-PREFERRED_PROVIDER_opkg                 ?= "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_opkg                 ?= "opkg"
 
 ANGSTROM_BLACKLIST_pn-bluez-libs       = "bluez-libs 3.x has been replaced by bluez4"
 ANGSTROM_BLACKLIST_pn-bluez-utils      = "bluez-utils 3.x has been replaced by bluez4"
@@ -154,12 +154,12 @@ require conf/distro/include/angstrom.inc
 # Set DISTRO_FEED_CONFIGS to our config var, assigned in the above .inc
 DISTRO_FEED_CONFIGS = "${ANGSTROM_FEED_CONFIGS}"
 
-# If we're using an .ipk based rootfs, we want to have opkg-nogpg installed so postinst script can run
+# If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run
 # We also take this opportunity to inject angstrom-version and the feed configs into the rootfs
-IPKG_VARIANT = "opkg-nogpg-nocurl angstrom-version ${ANGSTROM_FEED_CONFIGS}"
+IPKG_VARIANT = "opkg angstrom-version ${ANGSTROM_FEED_CONFIGS}"
 
 # we need the same provider for opkg and u-a
-PREFERRED_PROVIDER_virtual/update-alternatives = "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_virtual/update-alternatives = "opkg"
 
 # Select xserver-xorg as default, since kdrive has been EOL'ed
 XSERVER ?= "xserver-xorg xf86-input-evdev xf86-input-keyboard xf86-input-mouse xf86-video-fbdev" 
index 84b1381..a8909d0 100644 (file)
@@ -15,16 +15,6 @@ PREFERRED_VERSION_linux-ixp4xx = "2.6.27.8+svnr${SRCREV_pn-linux-ixp4xx}"
 #
 #===============================================================================#
 #===============================================================================#
-#                              NOTE NOTE NOTE
-#
-# Override the sane-srcrev file with regard to the opkg versions - this should
-# be removed as soon as opkg starts to work correctly again as newer opkg
-# versions fix a number of bugs and add some desireable features.
-#
-OPKG_SRCREV = "160"
-#
-#===============================================================================#
-#===============================================================================#
 
 ### Standard package preferred versions go here, sorted
 ### alphabetically.  Note that the main slugos.inc file
index 3ec3e86..f62ca99 100644 (file)
@@ -40,7 +40,7 @@ SPLASH = "psplash"
 INHERIT += "debian package_tar package_ipk src_distribute_local"
 SRC_DIST_LOCAL ?= "symlink"
 IMAGE_FSTYPES = "tar.gz tar.bz2 jffs2"
-PREFERRED_PROVIDER_virtual/update-alternatives = "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_virtual/update-alternatives = "opkg"
 
 #
 # Kernel
index b3ba7f9..4828dce 100644 (file)
@@ -64,7 +64,7 @@ require conf/distro/include/kaeilos-2010.inc
 # Select packaging system
 IMAGE_FSTYPES ?= "tar.gz jffs2"
 PREFERRED_PKG_FORMAT = "ipk"
-IPKG_VARIANT = "opkg-nogpg-nocurl"
+IPKG_VARIANT = "opkg"
 
 
 
@@ -100,11 +100,11 @@ require conf/distro/include/arm-thumb.inc
 
 PREFERRED_PROVIDER_dbus-glib             = "dbus-glib"
 PREFERRED_PROVIDER_hotplug               = "udev"
-PREFERRED_PROVIDER_opkg                 ?= "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_opkg                 ?= "opkg"
 
 # PREFERRED VERSIONS
-PREFERRED_PROVIDER_opkg ?= "opkg-nogpg-nocurl"
-PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_opkg ?= "opkg"
+PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg"
 
 
 # Select xserver-xorg as default, since kdrive has been EOL'ed
index b141280..78a69f1 100644 (file)
@@ -128,7 +128,7 @@ require conf/distro/include/arm-thumb.inc
 
 PREFERRED_PROVIDER_dbus-glib             = "dbus-glib"
 PREFERRED_PROVIDER_hotplug               = "udev"
-PREFERRED_PROVIDER_opkg                 ?= "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_opkg                 ?= "opkg"
 
 # see recipes/bluez/bluez4*.bb for further dependencies of this setting 
 ANGSTROM_BLACKLIST_pn-bluez-libs       = "bluez-libs 3.x has been replaced by bluez4"
@@ -138,12 +138,12 @@ ANGSTROM_BLACKLIST_pn-fso-apm       = "regular apmd is good enough"
 
 require conf/distro/include/kaeilos.inc
 
-# If we're using an .ipk based rootfs, we want to have opkg-nogpg installed so postinst script can run
+# If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run
 # We also take this opportunity to inject angstrom-version and the feed configs into the rootfs
-IPKG_VARIANT = "opkg-nogpg-nocurl angstrom-version ${ANGSTROM_FEED_CONFIGS}"
+IPKG_VARIANT = "opkg angstrom-version ${ANGSTROM_FEED_CONFIGS}"
 
 # we need the same provider for opkg and u-a
-PREFERRED_PROVIDER_virtual/update-alternatives = "opkg-nogpg-nocurl"
+PREFERRED_PROVIDER_virtual/update-alternatives = "opkg"
 
 # Select xserver-xorg as default, since kdrive has been EOL'ed
 XSERVER ?= "xserver-xorg xf86-input-evdev xf86-input-keyboard xf86-input-mouse xf86-video-fbdev" 
@@ -168,7 +168,7 @@ DEBUG_APPS += '${@base_conditional("DISTRO_TYPE", "release", "", "strace procps"
 DISTRO_EXTRA_RDEPENDS += "\
     update-modules \
     kaeilos-version \
-    opkg-nogpg opkg-collateral ${ANGSTROM_FEED_CONFIGS} \
+    opkg opkg-collateral ${ANGSTROM_FEED_CONFIGS} \
     util-linux-ng-mount util-linux-ng-umount \
     ${DEBUG_APPS} angstrom-libc-fixup-hack \
     "
index fc50391..6d396b3 100644 (file)
@@ -32,7 +32,7 @@ INHERIT += "debian"
 #############################################################################
 # Select packaging system
 PREFERRED_PKG_FORMAT = "ipk"
-IPKG_VARIANT = "opkg-nogpg"
+IPKG_VARIANT = "opkg"
 
 require conf/distro/include/sane-feed.inc
 require conf/distro/include/sane-feed-${PREFERRED_PKG_FORMAT}.inc
index 5fbbc33..5aaaaf1 100644 (file)
@@ -59,8 +59,8 @@ PREFERRED_PKG_FORMAT ?= "ipk"
 INHERIT += "src_distribute_local"
 SRC_DIST_LOCAL ?= "symlink"
 
-# If we're using an .ipk based rootfs, we want to have opkg-nogpg installed so postinst script can run
-IPKG_VARIANT = "opkg-nogpg"
+# If we're using an .ipk based rootfs, we want to have opkg installed so postinst script can run
+IPKG_VARIANT = "opkg"
 
 #############################################################################
 # IMAGES
@@ -98,8 +98,8 @@ require conf/distro/include/preferred-e-versions.inc
 require conf/distro/include/preferred-opie-versions-1.2.4.inc
 require conf/distro/include/preferred-xorg-versions-X11R7.5.inc
 
-PREFERRED_PROVIDER_opkg ?= "opkg-nogpg"
-PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg-nogpg"
+PREFERRED_PROVIDER_opkg ?= "opkg"
+PREFERRED_PROVIDER_virtual/update-alternatives ?= "opkg"
 
 #############################################################################
 # CONTENTS
index 7ab7b35..ae8d064 100644 (file)
@@ -86,4 +86,4 @@ PREFERRED_VERSION_e2fsprogs-libs = "1.41.8"
 PREFERRED_VERSION_dbus = "1.2.1"
 
 PREFERRED_PROVIDER_hotplug = "linux-hotplug"
-PREFERRED_PROVIDER_opkg = "opkg-nogpg"
+PREFERRED_PROVIDER_opkg = "opkg"
index d25cba7..cad2b8b 100644 (file)
@@ -1,6 +1,6 @@
 DESCRIPTION = "Configuration files for online package repositories aka feeds"
 
-RRECOMMENDS_${PN} += "opkg-nogpg-nocurl"
+RRECOMMENDS_${PN} += "opkg"
 
 #PV = "${DISTRO_VERSION}"
 PR = "r11"
index c37225d..0c5c863 100644 (file)
@@ -17,7 +17,7 @@ IMAGE_INSTALL = "\
     matchbox-wm \
     gpe-terminal \
     angstrom-feed-configs \
-    opkg-nogpg opkg-collateral \
+    opkg opkg-collateral \
     ${SPLASH} \
     "
 
index 85b2bae..61e8296 100644 (file)
@@ -20,7 +20,7 @@
 # intended to be distro-agnostic.
 
 DISTRO_SSH_DAEMON ?= "dropbear"
-DISTRO_PACKAGE_MANAGER ?= "opkg-nogpg opkg-collateral"
+DISTRO_PACKAGE_MANAGER ?= "opkg opkg-collateral"
 
 DEPENDS = "\
        task-boot \
index 0a127f8..c2ed50e 100644 (file)
@@ -1,5 +1,5 @@
 DISTRO_SSH_DAEMON ?= "dropbear"
-DISTRO_PACKAGE_MANAGER ?= "opkg-nogpg opkg-collateral"
+DISTRO_PACKAGE_MANAGER ?= "opkg opkg-collateral"
 
 XSERVER ?= "xserver-kdrive-fbdev"
 
index 0478e97..425af6d 100644 (file)
@@ -15,7 +15,7 @@ TOOLCHAIN_TARGET_EXCLUDE += "\
     libthread-db1 \
     sln \
     curl \
-    opkg-nogpg \
+    opkg \
     alsa-conf-base \
     update-rc.d \
     update-rc.d-dev \
diff --git a/recipes/opkg/files/fix_endianness.patch b/recipes/opkg/files/fix_endianness.patch
deleted file mode 100644 (file)
index 8632ce5..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -urN opkg.orig/configure.ac opkg/configure.ac
---- opkg.orig/configure.ac     2008-03-20 13:29:09.000000000 +0100
-+++ opkg/configure.ac  2008-03-25 09:39:52.000000000 +0100
-@@ -94,7 +94,7 @@
- AC_CHECK_MEMBERS([struct stat.st_rdev])
- # Checks endianness
--AC_C_BIGENDIAN(ENDIAN_CFLAGS="-DWORDS_BIGENDIAN=1",)
-+AC_C_BIGENDIAN(BIGENDIAN_CFLAGS="-DWORDS_BIGENDIAN=1",)
- AC_SUBST(BIGENDIAN_CFLAGS)
- # Don't do annoying tests that don't work when cross-compiling, just trust them.
diff --git a/recipes/opkg/files/opkg-libdir.patch b/recipes/opkg/files/opkg-libdir.patch
deleted file mode 100644 (file)
index 1d48b9a..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- trunk/utils/update-alternatives.orig       2009-06-23 15:33:56.000000000 -0300
-+++ trunk/utils/update-alternatives    2009-06-23 15:34:10.000000000 -0300
-@@ -21,7 +21,7 @@
- set -e
- # admin dir
--ad="$OPKG_OFFLINE_ROOT/usr/lib/opkg/alternatives"
-+ad="$OPKG_OFFLINE_ROOT/${libdir}/opkg/alternatives"
- usage() {
-       echo "update-alternatives: $*
index fe3ed4e..33d84ff 100644 (file)
@@ -1,19 +1,10 @@
 require opkg.inc
 
-DEPENDS = "curl-native openssl-native"
 PR = "${INC_PR}"
 PROVIDES =+ "virtual/update-alternatives-native"
 
-SRC_URI += "file://opkg-libdir.patch;maxrev=342"
-
 target_libdir := "${libdir}"
 
 inherit native
 
-# The nogpg version isn't getting much love and has an unused variable which trips up -Werror
-do_configure_prepend() {
-        sed -i -e s:-Werror::g ${S}/libopkg/Makefile.am
-}
-
-
-EXTRA_OECONF += "--with-opkglibdir=${target_libdir} --disable-gpg"
+EXTRA_OECONF += "--with-opkglibdir=${target_libdir}"
index cac02fd..d39e6ce 100644 (file)
@@ -2,7 +2,7 @@
 # recipe, intended for temporary use by the SlugOS distro.
 
 # DO NOT USE this recipe for anything other than SlugOS and svn version 160
-# of the opkg sources.  Also note that This recipe will be removed without
+# of the opkg sources.  Also note that this recipe will be removed without
 # notice when the unfortunate commits to the original opkg-nogpg-nocurl_svn.bb
 # recipe are repaired, the small-memory patches updated to a newer opkg svn
 # version, and appropriate testing confirms that the resulting binary actually
 
 # DO NOT CHANGE THIS RECIPE!
 
-require opkg.inc
+DESCRIPTION = "Opkg Package Manager"
+DESCRIPTION_libopkg = "Opkg Package Manager Library"
+SECTION = "base"
+LICENSE = "GPLv2"
+SRCREV = "160"
+PV = "0.1.6+svnr${SRCPV}"
+PR = "r22"
 
-DEPENDS = ""
 PROVIDES += "opkg"
+S = "${WORKDIR}/trunk"
+
+inherit autotools pkgconfig
 
 SRC_URI += " \
+           svn://opkg.googlecode.com/svn;module=trunk;proto=http \
+           file://opkg_unarchive.patch;maxrev=201 \
+           file://opkg-intercept-cleanup.patch;maxrev=241 \
            file://isatty.patch \
            file://opkg_wget.patch;maxrev=180 \
            file://reduce-nogpg-noise.patch;maxrev=180 \
@@ -23,11 +34,16 @@ SRC_URI += " \
            file://opkg_wget_nogpg_02_use_vfork_system.patch \
            file://opkg_wget_nogpg_03_fix_tmpdirs.patch \
            file://opkg_wget_nogpg_04_default_tmpdir.patch \
+           file://configure \
           "
-PR = "${INC_PR}"
 
 EXTRA_OECONF += "--disable-gpg --enable-static --disable-shared"
 
+do_install_prepend() {
+  install -d ${D}${sysconfdir}/rcS.d
+  install -m 0755 ${WORKDIR}/configure ${D}${sysconfdir}/rcS.d/S98configure
+}
+
 # Not sure this is needed; needs to be investigated and removed if not
 
 # The nogpg version isn't getting much love and has an unused variable which trips up -Werror
@@ -41,11 +57,6 @@ FILES_libopkg-dev = "${libdir}/*.a ${libdir}/*.la ${libdir}/*.so"
 # not happens automatically for opkg-nogpg:
 FILES_${PN} += "${datadir}/opkg/intercept"
 
-# Define a variable to allow distros to run configure earlier.
-# (for example, to enable loading of ethernet kernel modules before networking starts)
-OPKG_INIT_POSITION = "98"
-OPKG_INIT_POSITION_slugos = "41"
-
 pkg_postinst_${PN} () {
   update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100
 }
diff --git a/recipes/opkg/opkg-nogpg-nocurl_svn.bb b/recipes/opkg/opkg-nogpg-nocurl_svn.bb
deleted file mode 100644 (file)
index 66e8dbc..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-require opkg-nogpg_svn.bb
-
-DEPENDS = ""
-PROVIDES += "opkg"
-
-PR = "${INC_PR}"
-
-EXTRA_OECONF += " --disable-curl --enable-static --disable-shared"
-
-# The nogpg version isn't getting much love and has an unused variable which trips up -Werror
-do_configure_prepend() {
-       sed -i -e s:-Werror::g ${S}/libopkg/Makefile.am
-}
-
-DEFAULT_PREFERENCE = "-1"
diff --git a/recipes/opkg/opkg-nogpg_svn.bb b/recipes/opkg/opkg-nogpg_svn.bb
deleted file mode 100644 (file)
index bee639f..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-require opkg_svn.bb
-
-DEPENDS = "curl"
-PROVIDES += "opkg"
-
-PR = "${INC_PR}.1"
-
-EXTRA_OECONF += " --disable-gpg \ 
-                  --disable-openssl \ 
-                  --disable-ssl-curl \
-                  --enable-gpg=no \
-                  --enable-ssl-curl=no \
-                  --enable-openssl=no"
-
-LDFLAGS_append = " -Wl,--as-needed"
-
-# The nogpg version isn't getting much love and has an unused variable which trips up -Werror
-do_configure_prepend() {
-       sed -i -e s:-Werror::g ${S}/libopkg/Makefile.am
-}
-do_configure_prepend_nylon() {
-       LDFLAGS="`echo "$LDFLAGS" | sed "s/ -Wl,--as-needed//"`"
-}
-
-DEFAULT_PREFERENCE = "-1"
index f7f9c9e..5970f8e 100644 (file)
@@ -5,4 +5,4 @@ PR = "${INC_PR}"
 target_libdir := "${libdir}"
 inherit sdk
 
-EXTRA_OECONF += "--with-opkglibdir=${target_libdir} --disable-gpg"
+EXTRA_OECONF += "--with-opkglibdir=${target_libdir}"
index 1149b72..b88ae4b 100644 (file)
@@ -2,20 +2,14 @@ DESCRIPTION = "Opkg Package Manager"
 DESCRIPTION_libopkg = "Opkg Package Manager Library"
 SECTION = "base"
 LICENSE = "GPLv2"
-DEPENDS = "curl gpgme openssl"
 SRCREV = ${OPKG_SRCREV}
-PV = "0.1.6+svnr${SRCPV}"
-INC_PR = "r21"
-
-FILESPATHPKG =. "opkg:"
+PV = "0.1.8+svnr${SRCPV}"
+INC_PR = "r0"
 
 SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \
-       file://opkg_unarchive.patch;maxrev=201 \
-       file://opkg-intercept-cleanup.patch;maxrev=241 \
+          file://configure \
 "
 
-SRC_URI += "file://configure"
-
 S = "${WORKDIR}/trunk"
 
 inherit autotools pkgconfig
@@ -25,3 +19,7 @@ do_install_prepend() {
   install -m 0755 ${WORKDIR}/configure ${D}${sysconfdir}/rcS.d/S98configure
 }
 
+EXTRA_OECONF += " --disable-gpg \ 
+                  --disable-openssl \ 
+                  --disable-ssl-curl \
+                  --disable-curl"
index 5138458..b193d7c 100644 (file)
@@ -8,14 +8,8 @@ PACKAGES =+ "libopkg-dev libopkg"
 
 FILES_libopkg-dev = "${libdir}/*.a ${libdir}/*.la ${libdir}/*.so"
 FILES_libopkg = "${libdir}/*.so.*"
-# not happens automatically for opkg-nogpg:
 FILES_${PN} += "${datadir}/opkg/intercept"
 
-# Define a variable to allow distros to run configure earlier.
-# (for example, to enable loading of ethernet kernel modules before networking starts)
-OPKG_INIT_POSITION = "98"
-OPKG_INIT_POSITION_slugos = "41"
-
 pkg_postinst_${PN} () {
   update-alternatives --install ${bindir}/opkg opkg ${bindir}/opkg-cl 100
 }
index e22ac2b..8f85a89 100644 (file)
@@ -30,6 +30,6 @@ RDEPENDS_${PN} = "\
     zlib-dev \
     mtd-utils-dev \
     ncurses-dev \
-    opkg-nogpg-dev \
+    opkg-dev \
     sysvinit-dev \
     "
index bf75402..25829cc 100644 (file)
@@ -8,6 +8,6 @@ RDEPENDS_${PN} = "\
     gdb \
     sbrsh \
     fakeroot \
-    opkg-nogpg \
+    opkg \
     opkg-utils \
     "