pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

libostree: import libostree-2021.3



Module Name:	pkgsrc-wip
Committed By:	Michael Forney <mforney%mforney.org@localhost>
Pushed By:	mcf
Date:		Sat Aug 28 13:44:11 2021 -0700
Changeset:	e0f96f984a1ba5aff5d518eb930cf66e800699c2

Modified Files:
	Makefile
Added Files:
	libostree/DESCR
	libostree/Makefile
	libostree/PLIST
	libostree/buildlink3.mk
	libostree/distinfo
	libostree/patches/patch-Makefile.in
	libostree/patches/patch-configure

Log Message:
libostree: import libostree-2021.3

OSTree is an upgrade system for Linux-based operating systems that
performs atomic upgrades of complete filesystem trees. It is not a
package system; rather, it is intended to complement them. A primary
model is composing packages on a server, and then replicating them
to clients.

The underlying architecture might be summarized as "git for operating
system binaries". It operates in userspace, and will work on top
of any Linux filesystem. At its core is a git-like content-addressed
object store with branches (or "refs") to track meaningful filesystem
trees within the store. Similarly, one can check out or commit to
these branches.

Layered on top of that is bootloader configuration, management of
/etc, and other functions to perform an upgrade beyond just replicating
files.

You can use OSTree standalone in the pure replication model, but
another approach is to add a package manager on top, thus creating
a hybrid tree/package system.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=e0f96f984a1ba5aff5d518eb930cf66e800699c2

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 Makefile                            |  1 +
 libostree/DESCR                     | 20 ++++++++++++++
 libostree/Makefile                  | 32 +++++++++++++++++++++++
 libostree/PLIST                     | 39 ++++++++++++++++++++++++++++
 libostree/buildlink3.mk             | 14 ++++++++++
 libostree/distinfo                  |  8 ++++++
 libostree/patches/patch-Makefile.in | 52 +++++++++++++++++++++++++++++++++++++
 libostree/patches/patch-configure   | 27 +++++++++++++++++++
 8 files changed, 193 insertions(+)

diffs:
diff --git a/Makefile b/Makefile
index 8ef9b4f1e1..62c2ee65fe 100644
--- a/Makefile
+++ b/Makefile
@@ -2115,6 +2115,7 @@ SUBDIR+=	libopensync-plugin-moto
 SUBDIR+=	libopensync-plugin-palm
 SUBDIR+=	libosinfo
 SUBDIR+=	libosmocore
+SUBDIR+=	libostree
 SUBDIR+=	libowl-av
 SUBDIR+=	libpafe
 SUBDIR+=	libpano12
diff --git a/libostree/DESCR b/libostree/DESCR
new file mode 100644
index 0000000000..0b1e308ade
--- /dev/null
+++ b/libostree/DESCR
@@ -0,0 +1,20 @@
+OSTree is an upgrade system for Linux-based operating systems that
+performs atomic upgrades of complete filesystem trees. It is not a
+package system; rather, it is intended to complement them. A primary
+model is composing packages on a server, and then replicating them
+to clients.
+
+The underlying architecture might be summarized as "git for operating
+system binaries". It operates in userspace, and will work on top
+of any Linux filesystem. At its core is a git-like content-addressed
+object store with branches (or "refs") to track meaningful filesystem
+trees within the store. Similarly, one can check out or commit to
+these branches.
+
+Layered on top of that is bootloader configuration, management of
+/etc, and other functions to perform an upgrade beyond just replicating
+files.
+
+You can use OSTree standalone in the pure replication model, but
+another approach is to add a package manager on top, thus creating
+a hybrid tree/package system.
diff --git a/libostree/Makefile b/libostree/Makefile
new file mode 100644
index 0000000000..64dd5dc59b
--- /dev/null
+++ b/libostree/Makefile
@@ -0,0 +1,32 @@
+# $NetBSD$
+
+DISTNAME=		libostree-2021.3
+CATEGORIES=		devel
+MASTER_SITES=		${MASTER_SITE_GITHUB:=ostreedev/}
+GITHUB_PROJECT=		ostree
+GITHUB_RELEASE=		v${PKGVERSION_NOREV}
+EXTRACT_SUFX=		.tar.xz
+
+MAINTAINER=		pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=		https://ostreedev.github.io/ostree/
+COMMENT=		Operating system and container binary deployment and upgrades
+LICENSE=		gnu-lgpl-v2.1
+
+GNU_CONFIGURE=		yes
+USE_LIBTOOL=		yes
+USE_TOOLS+=		pkg-config yacc
+
+CONFIGURE_ARGS+=	--with-builtin-grub2-mkconfig
+
+ONLY_FOR_PLATFORM=	Linux-*-*
+
+.include "../../archivers/xz/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
+.include "../../filesystems/fuse/buildlink3.mk"
+.include "../../net/libsoup/buildlink3.mk"
+.include "../../security/gpgme/buildlink3.mk"
+.include "../../security/libgpg-error/buildlink3.mk"
+BUILDLINK_DEPMETHOD.e2fsprogs?=	build
+.include "../../sysutils/e2fsprogs/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/libostree/PLIST b/libostree/PLIST
new file mode 100644
index 0000000000..78c76c5c41
--- /dev/null
+++ b/libostree/PLIST
@@ -0,0 +1,39 @@
+@comment $NetBSD$
+bin/ostree
+bin/rofiles-fuse
+include/ostree-1/ostree-async-progress.h
+include/ostree-1/ostree-autocleanups.h
+include/ostree-1/ostree-bootconfig-parser.h
+include/ostree-1/ostree-core.h
+include/ostree-1/ostree-deployment.h
+include/ostree-1/ostree-diff.h
+include/ostree-1/ostree-dummy-enumtypes.h
+include/ostree-1/ostree-gpg-verify-result.h
+include/ostree-1/ostree-kernel-args.h
+include/ostree-1/ostree-mutable-tree.h
+include/ostree-1/ostree-ref.h
+include/ostree-1/ostree-remote.h
+include/ostree-1/ostree-repo-deprecated.h
+include/ostree-1/ostree-repo-file.h
+include/ostree-1/ostree-repo-finder-avahi.h
+include/ostree-1/ostree-repo-finder-config.h
+include/ostree-1/ostree-repo-finder-mount.h
+include/ostree-1/ostree-repo-finder-override.h
+include/ostree-1/ostree-repo-finder.h
+include/ostree-1/ostree-repo-os.h
+include/ostree-1/ostree-repo.h
+include/ostree-1/ostree-sepolicy.h
+include/ostree-1/ostree-sign-ed25519.h
+include/ostree-1/ostree-sign.h
+include/ostree-1/ostree-sysroot-upgrader.h
+include/ostree-1/ostree-sysroot.h
+include/ostree-1/ostree-types.h
+include/ostree-1/ostree-version.h
+include/ostree-1/ostree.h
+lib/libostree-1.la
+lib/ostree/ostree-grub-generator
+lib/ostree/ostree-prepare-root
+lib/pkgconfig/ostree-1.pc
+libexec/libostree/ostree-trivial-httpd
+share/bash-completion/completions/ostree
+share/ostree/trusted.gpg.d/README-gpg
diff --git a/libostree/buildlink3.mk b/libostree/buildlink3.mk
new file mode 100644
index 0000000000..3eb4cadab7
--- /dev/null
+++ b/libostree/buildlink3.mk
@@ -0,0 +1,14 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=	libostree
+
+.if !defined(LIBOSTREE_BUILDLINK3_MK)
+LIBOSTREE_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.libostree+=	libostree>=2021.3
+BUILDLINK_PKGSRCDIR.libostree?=		../../wip/libostree
+
+.include "../../devel/glib2/buildlink3.mk"
+.endif	# LIBOSTREE_BUILDLINK3_MK
+
+BUILDLINK_TREE+=	-libostree
diff --git a/libostree/distinfo b/libostree/distinfo
new file mode 100644
index 0000000000..a9bb903f95
--- /dev/null
+++ b/libostree/distinfo
@@ -0,0 +1,8 @@
+$NetBSD$
+
+SHA1 (libostree-2021.3.tar.xz) = b8a32cd735b2abccb72464ea33806e4944b0440e
+RMD160 (libostree-2021.3.tar.xz) = 137a299640e4c9977d50f250472674c0a887f7a7
+SHA512 (libostree-2021.3.tar.xz) = 0df0d8f9bd82b16562dd5146997eddfb7cb6cffc1886601307d97a1cb1dc926bda7d0c899db26c974ed0dff1012dee11937e47c11c4d03307fa3d2d430adc60e
+Size (libostree-2021.3.tar.xz) = 2089804 bytes
+SHA1 (patch-Makefile.in) = 0627f1335da7b3ec6993c327c4b94ff847918201
+SHA1 (patch-configure) = 6bbb98765f2fb5117afd9bb19f3db5f76d072287
diff --git a/libostree/patches/patch-Makefile.in b/libostree/patches/patch-Makefile.in
new file mode 100644
index 0000000000..c739f22106
--- /dev/null
+++ b/libostree/patches/patch-Makefile.in
@@ -0,0 +1,52 @@
+$NetBSD$
+
+Don't use $< in target rules.
+
+Pass operands after options.
+
+Remove non-portable (and unnecessary) -n flag to ln(1).
+
+--- Makefile.in.orig	Mon Jul 12 08:39:03 2021
++++ Makefile.in
+@@ -9793,20 +9793,20 @@ all-local: $(ALL_LOCAL_RULES)
+ # autogen.sh (as we do in Debian, to update the Autotools build system)
+ # it will try to build it.
+ $(srcdir)/libglnx/Makefile-libglnx.am.inc: $(srcdir)/libglnx/Makefile-libglnx.am
+-	sed -e 's,$$(libglnx_srcpath),libglnx,g' < $< > $@
++	sed -e 's,$$(libglnx_srcpath),libglnx,g' < $(srcdir)/libglnx/Makefile-libglnx.am > $@
+ # See the comment for the similar libglnx bit above
+ $(srcdir)/bsdiff/Makefile-bsdiff.am.inc: $(srcdir)/bsdiff/Makefile-bsdiff.am
+-	sed -e 's,$$(libbsdiff_srcpath),bsdiff,g' < $< > $@
++	sed -e 's,$$(libbsdiff_srcpath),bsdiff,g' < $(srcdir)/bsdiff/Makefile-bsdiff.am > $@
+ 
+ # TODO: GLIB_CHECK_VERSION > 2.5x: use --output instead of mv (see https://github.com/ostreedev/ostree/pull/1329)
+ src/libostree/ostree-enumtypes.h: src/libostree/ostree-enumtypes.h.template $(ENUM_TYPES)
+ 	$(AM_V_GEN) $(GLIB_MKENUMS) \
+-	--template $< \
++	--template src/libostree/ostree-enumtypes.h.template \
+ 	$(ENUM_TYPES) > $@.tmp && mv $@.tmp $@
+ 
+ src/libostree/ostree-enumtypes.c: src/libostree/ostree-enumtypes.c.template src/libostree/ostree-enumtypes.h $(ENUM_TYPES)
+ 	$(AM_V_GEN) $(GLIB_MKENUMS) \
+-	--template $< \
++	--template src/libostree/ostree-enumtypes.c.template \
+ 	$(ENUM_TYPES) > $@.tmp && mv $@.tmp $@
+ 
+ @BUILDOPT_INTROSPECTION_TRUE%OSTree-1.0.gir@localhost: libostree-1.la Makefile
+@@ -9816,14 +9816,14 @@ install-mkdir-remotes-d-hook:
+ 
+ src/ostree/parse-datetime.c: src/ostree/parse-datetime.y Makefile
+ 	mkdir -p src/ostree/
+-	$(AM_V_GEN) $(YACC) $< -o $@
++	$(AM_V_GEN) $(YACC) -o $@ src/ostree/parse-datetime.y
+ 
+ @BUILDOPT_USE_STATIC_COMPILER_TRUE@ostree-prepare-root : $(ostree_prepare_root_SOURCES)
+ @BUILDOPT_USE_STATIC_COMPILER_TRUE@	$(STATIC_COMPILER) -o $@ -static $(top_srcdir)/src/switchroot/ostree-prepare-root.c $(ostree_prepare_root_CPPFLAGS) $(AM_CFLAGS) $(DEFAULT_INCLUDES) -DOSTREE_PREPARE_ROOT_STATIC=1
+ 
+ tests/libreaddir-rand.so: Makefile
+ 	mkdir -p tests/
+-	$(AM_V_GEN) ln -fns ../.libs/libreaddir-rand.so tests/
++	$(AM_V_GEN) ln -fs ../.libs/libreaddir-rand.so tests/
+ 
+ tests/%-symlink-stamp: % Makefile
+ 	$(AM_V_GEN) set -e; \
diff --git a/libostree/patches/patch-configure b/libostree/patches/patch-configure
new file mode 100644
index 0000000000..e9e6908e49
--- /dev/null
+++ b/libostree/patches/patch-configure
@@ -0,0 +1,27 @@
+$NetBSD$
+
+Fix test(1) portability.
+
+Remove check for exact YACC value.
+
+--- configure.orig	Mon Jul 12 08:39:02 2021
++++ configure
+@@ -13821,7 +13821,7 @@ else
+   ENABLE_ALWAYS_BUILD_TESTS_FALSE=
+ fi
+ 
+-  if test "$ENABLE_INSTALLED_TESTS" == "1"; then
++  if test "$ENABLE_INSTALLED_TESTS" = "1"; then
+     installed_test_metadir=${datadir}/installed-tests/libostree
+ 
+     installed_testdir=${libexecdir}/installed-tests/libostree
+@@ -14051,9 +14051,6 @@ fi
+ 
+ 
+ 
+-if test "$YACC" != "bison -y"; then :
+-  as_fn_error $? "bison not found but required" "$LINENO" 5
+-fi
+ 
+ 
+ 


Home | Main Index | Thread Index | Old Index