On 7/2/21 3:59 PM, hongxu wrote:
1. tweak homepage

2. Use go_do_compile of go bbclass in oe-core to replace
    the do_compile in recipe, variables such as LD,CC,
    CFLAGS, CGO_CFLAGS will be set automatically

3. Use go_do_install of go bbclass in oe-core to replace
    the do_install in recipe, all necessary will be installed

4. export GO111MODULE=off globally

5. Skip file-rdeps insane for umoci dev packages since scripts
    in umoci dev packages contains awk, bash shebang

Signed-off-by: Hongxu Jia <[email protected]>
---
  recipes-containers/umoci/umoci_git.bb | 75 ++++-----------------------
  1 file changed, 10 insertions(+), 65 deletions(-)

diff --git a/recipes-containers/umoci/umoci_git.bb 
b/recipes-containers/umoci/umoci_git.bb
index f83a35a7..c4007eb3 100644
--- a/recipes-containers/umoci/umoci_git.bb
+++ b/recipes-containers/umoci/umoci_git.bb
@@ -1,80 +1,25 @@
-HOMEPAGE = "https://github.com/openSUSE/umoci";
+HOMEPAGE = "https://umo.ci";
  SUMMARY = "umoci modifies Open Container images"
  LICENSE = "Apache-2.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
+LIC_FILES_CHKSUM = 
"file://src/${GO_IMPORT}/COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
RDEPENDS_${PN} = "skopeo"
  RDEPENDS_${PN}_class-native = ""
-SRCREV_umoci = "758044fc26ad65eb900143e90d1e22c2d6e4484d"
-SRC_URI = 
"git://github.com/opencontainers/umoci.git;branch=master;name=umoci;destsuffix=github.com/opencontainers/umoci
 \
-          "
+SRCREV = "758044fc26ad65eb900143e90d1e22c2d6e4484d"
+SRC_URI = " \
+    git://${GO_IMPORT}; \
+"
PV = "v0.4.7-dev+git${SRCPV}"
-S = "${WORKDIR}/github.com/opencontainers/umoci"
+S = "${WORKDIR}/git"
  GO_IMPORT = "github.com/opencontainers/umoci"
inherit goarch
  inherit go
-# This disables seccomp and apparmor, which are on by default in the
-# go package.
-EXTRA_OEMAKE="BUILDTAGS=''"
+export GO111MODULE="off"
-
-do_compile_class-native () {
-    export GOARCH="${BUILD_GOARCH}"
-
-    # Pass the needed cflags/ldflags so that cgo can find the needed headers 
files and libraries
-    export CGO_ENABLED="1"
-    export CFLAGS="${BUILD_CFLAGS}"
-    export LDFLAGS="${BUILD_LDFLAGS}"
-    export CGO_CFLAGS="${BUILD_CFLAGS}"
-
-    # as of go 1.15.5, there are some flags the CGO doesn't like. Rather than
-    # clearing them all, we sed away the ones we don't want.
-    # export CGO_LDFLAGS="$(echo ${BUILD_LDFLAGS} | sed 's/-Wl,-O1//g' | sed 
's/-Wl,--dynamic-linker.*?( \|$\)//g')"
-    export CC="${BUILD_CC}"
-    export LD="${BUILD_LD}"
-
-    export GOPATH="${WORKDIR}/git/"
-    export GO111MODULE=off
-
-    cd ${S}
-
-    # why static ? patchelf will be run on dynamic binaries and it breaks
-    # the executable (coredump)
-    # https://forum.snapcraft.io/t/patchelf-broke-my-binary/4928
-    # https://github.com/NixOS/patchelf/issues/146
-    oe_runmake umoci.static
-

Hi Bruce,

About native umoci, I've no idea about the patchelf testing, I directly run native umoci -h in my build

...

$ image/buildarea/raid5/hjia/wrlinux-20/lat_deb_061621/build-binary/tmp-glibc/work/x86_64-linux/umoci-native/0.4.6-r0/recipe-sysroot-native/usr/bin/umoci -h
NAME:
   umoci - umoci modifies Open Container images

USAGE:
   umoci [global options] command [command options] [arguments...]

VERSION:
   unknown

AUTHOR:
   Aleksa Sarai <[email protected]>

COMMANDS:
   raw      advanced internal image tooling
   help, h  Shows a list of commands or help for one command

   image:
     config      modifies the image configuration of an OCI image
     unpack      unpacks a reference into an OCI runtime bundle
     repack      repacks an OCI runtime bundle into a reference
     new         creates a blank tagged OCI image
     tag         creates a new tag in an OCI image
     remove, rm  removes a tag from an OCI image
     stat        displays status information of an image manifest
     insert      insert content into an OCI image

   layout:
     gc        garbage-collects an OCI image's blobs
     init      create a new OCI layout
     list, ls  lists the set of tags in an OCI layout

GLOBAL OPTIONS:
   --verbose      alias for --log=info
   --log value    set the log level (debug, info, [warn], error, fatal) (default: "warn")
   --help, -h     show help
   --version, -v  print the version

...

//Hongxu

-    # so the common install can find our binary
-    cp umoci.static umoci
-}
-
-do_compile() {
-    export GOARCH="${TARGET_GOARCH}"
-    export GOPATH="${WORKDIR}/git/"
-
-    # Pass the needed cflags/ldflags so that cgo
-    # can find the needed headers files and libraries
-    export CGO_ENABLED="1"
-    export CFLAGS=""
-    export LDFLAGS=""
-    export CGO_CFLAGS="${BUILDSDK_CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
-    export CGO_LDFLAGS="${BUILDSDK_LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
-
-    export GO111MODULE=off
-
-    cd ${S}
-
-    oe_runmake umoci
-}
-
-do_install() {
-    install -d ${D}/${sbindir}
-    install ${S}/umoci ${D}/${sbindir}
-}
-
-INSANE_SKIP_${PN} += "ldflags already-stripped"
+INSANE_SKIP_${PN}-dev += "file-rdeps"
+INSANE_SKIP_${PN} += "already-stripped"
  BBCLASSEXTEND = "native nativesdk"




-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#6602): 
https://lists.yoctoproject.org/g/meta-virtualization/message/6602
Mute This Topic: https://lists.yoctoproject.org/mt/83935671/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to