Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
2ebd7a2939 | ||
|
9a207340f5 | ||
|
ce86f8bab7 | ||
|
40ebe36120 | ||
|
d512067972 |
14
.gitignore
vendored
14
.gitignore
vendored
@ -1,7 +1,7 @@
|
||||
/build2-0.16.0.tar.gz
|
||||
/libbutl-0.16.0.tar.gz
|
||||
/libbpkg-0.16.0.tar.gz
|
||||
/bpkg-0.16.0.tar.gz
|
||||
/bdep-0.16.0.tar.gz
|
||||
/libodb-2.5.0-b.25.tar.gz
|
||||
/libodb-sqlite-2.5.0-b.25.tar.gz
|
||||
/build2-0.12.0.tar.gz
|
||||
/libbutl-0.12.0.tar.gz
|
||||
/libbpkg-0.12.0.tar.gz
|
||||
/bpkg-0.12.0.tar.gz
|
||||
/bdep-0.12.0.tar.gz
|
||||
/libodb-2.5.0-b.17.tar.gz
|
||||
/libodb-sqlite-2.5.0-b.17.tar.gz
|
||||
|
@ -1,227 +0,0 @@
|
||||
From 40bb034f57cf37c1cbdcef337733507c230c6004 Mon Sep 17 00:00:00 2001
|
||||
From: Karen Arutyunov <karen@codesynthesis.com>
|
||||
Date: Tue, 23 Apr 2024 12:25:33 +0300
|
||||
Subject: Suppress the 'reading certificate from stdin' openssl warning on
|
||||
POSIX systems in bpkg-fetch
|
||||
|
||||
---
|
||||
bpkg/auth.cxx | 137 ++++++++++++++++++++++++++++++++++++++--------------------
|
||||
1 file changed, 89 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/bpkg/auth.cxx b/bpkg/auth.cxx
|
||||
index 663054d..191da0a 100644
|
||||
--- a/bpkg/auth.cxx
|
||||
+++ b/bpkg/auth.cxx
|
||||
@@ -23,15 +23,15 @@ using namespace butl;
|
||||
|
||||
namespace bpkg
|
||||
{
|
||||
- static const string openssl_version ("version");
|
||||
- static const string openssl_pkeyutl ("pkeyutl");
|
||||
- static const string openssl_rsautl ("rsautl");
|
||||
- static const string openssl_x509 ("x509");
|
||||
-
|
||||
- const char* openssl_commands[5] = {openssl_version.c_str (),
|
||||
- openssl_pkeyutl.c_str (),
|
||||
- openssl_rsautl.c_str (),
|
||||
- openssl_x509.c_str (),
|
||||
+ static const string openssl_version_cmd ("version");
|
||||
+ static const string openssl_pkeyutl_cmd ("pkeyutl");
|
||||
+ static const string openssl_rsautl_cmd ("rsautl");
|
||||
+ static const string openssl_x509_cmd ("x509");
|
||||
+
|
||||
+ const char* openssl_commands[5] = {openssl_version_cmd.c_str (),
|
||||
+ openssl_pkeyutl_cmd.c_str (),
|
||||
+ openssl_rsautl_cmd.c_str (),
|
||||
+ openssl_x509_cmd.c_str (),
|
||||
nullptr};
|
||||
|
||||
// Print process command line.
|
||||
@@ -43,9 +43,42 @@ namespace bpkg
|
||||
print_process (args, n);
|
||||
}
|
||||
|
||||
+ // Query the openssl information and return the openssl version. Cache the
|
||||
+ // version on the first function call. Fail on the underlying process and IO
|
||||
+ // error. Return the 0.0.0 version if unable to parse the openssl stdout.
|
||||
+ //
|
||||
+ static optional<semantic_version> openssl_ver;
|
||||
+
|
||||
+ static const semantic_version&
|
||||
+ openssl_version (const common_options& co)
|
||||
+ {
|
||||
+ const path& openssl_path (co.openssl ()[openssl_version_cmd]);
|
||||
+
|
||||
+ if (!openssl_ver)
|
||||
+ try
|
||||
+ {
|
||||
+ optional<openssl_info> oi (
|
||||
+ openssl::info (print_command, 2, openssl_path));
|
||||
+
|
||||
+ openssl_ver = (oi && oi->name == "OpenSSL"
|
||||
+ ? move (oi->version)
|
||||
+ : semantic_version ());
|
||||
+ }
|
||||
+ catch (const process_error& e)
|
||||
+ {
|
||||
+ fail << "unable to execute " << openssl_path << ": " << e << endf;
|
||||
+ }
|
||||
+ catch (const io_error& e)
|
||||
+ {
|
||||
+ fail << "unable to read '" << openssl_path << "' output: " << e
|
||||
+ << endf;
|
||||
+ }
|
||||
+
|
||||
+ return *openssl_ver;
|
||||
+ }
|
||||
+
|
||||
// Return true if the openssl version is greater or equal to 3.0.0 and so
|
||||
- // pkeyutl needs to be used instead of rsautl. Cache the result on the first
|
||||
- // function call.
|
||||
+ // pkeyutl needs to be used instead of rsautl.
|
||||
//
|
||||
// Note that openssl 3.0.0 deprecates rsautl in favor of pkeyutl.
|
||||
//
|
||||
@@ -54,37 +87,28 @@ namespace bpkg
|
||||
// (see the 'pkeyutl -verifyrecover error "input data too long to be a
|
||||
// hash"' issue report for details).
|
||||
//
|
||||
- static optional<bool> use_pkeyutl;
|
||||
-
|
||||
- static bool
|
||||
+ static inline bool
|
||||
use_openssl_pkeyutl (const common_options& co)
|
||||
{
|
||||
- if (!use_pkeyutl)
|
||||
- {
|
||||
- const path& openssl_path (co.openssl ()[openssl_version]);
|
||||
-
|
||||
- try
|
||||
- {
|
||||
- optional<openssl_info> oi (
|
||||
- openssl::info (print_command, 2, openssl_path));
|
||||
-
|
||||
- use_pkeyutl = oi &&
|
||||
- oi->name == "OpenSSL" &&
|
||||
- oi->version >= semantic_version {3, 0, 0};
|
||||
- }
|
||||
- catch (const process_error& e)
|
||||
- {
|
||||
- fail << "unable to execute " << openssl_path << ": " << e << endf;
|
||||
- }
|
||||
- catch (const io_error& e)
|
||||
- {
|
||||
- fail << "unable to read '" << openssl_path << "' output: " << e
|
||||
- << endf;
|
||||
- }
|
||||
- }
|
||||
+ return openssl_version (co) >= semantic_version {3, 0, 0};
|
||||
+ }
|
||||
|
||||
- return *use_pkeyutl;
|
||||
+ // Return true if some openssl commands (openssl x509 -fingerprint, etc) may
|
||||
+ // issue the 'Reading certificate from stdin since no -in or -new option is
|
||||
+ // given' warning. This is the case for the openssl version in the [3.2.0
|
||||
+ // 3.3.0) range (see GH issue #353 for details).
|
||||
+ //
|
||||
+ // Note that there is no easy way to suppress this warning on Windows and
|
||||
+ // thus we don't define this function there.
|
||||
+ //
|
||||
+#ifndef _WIN32
|
||||
+ static inline bool
|
||||
+ openssl_warn_stdin (const common_options& co)
|
||||
+ {
|
||||
+ const semantic_version& v (openssl_version (co));
|
||||
+ return v >= semantic_version {3, 2, 0} && v < semantic_version {3, 3, 0};
|
||||
}
|
||||
+#endif
|
||||
|
||||
// Find the repository location prefix that ends with the version component.
|
||||
// We consider all repositories under this location to be related.
|
||||
@@ -190,15 +214,25 @@ namespace bpkg
|
||||
dr << ": " << *e;
|
||||
};
|
||||
|
||||
- const path& openssl_path (co.openssl ()[openssl_x509]);
|
||||
- const strings& openssl_opts (co.openssl_option ()[openssl_x509]);
|
||||
+ const path& openssl_path (co.openssl ()[openssl_x509_cmd]);
|
||||
+ const strings& openssl_opts (co.openssl_option ()[openssl_x509_cmd]);
|
||||
|
||||
try
|
||||
{
|
||||
openssl os (print_command,
|
||||
fdstream_mode::text, fdstream_mode::text, 2,
|
||||
- openssl_path, openssl_x509,
|
||||
- openssl_opts, "-sha256", "-noout", "-fingerprint");
|
||||
+ openssl_path, openssl_x509_cmd,
|
||||
+ openssl_opts,
|
||||
+ "-sha256",
|
||||
+ "-noout",
|
||||
+ "-fingerprint"
|
||||
+#ifndef _WIN32
|
||||
+ ,
|
||||
+ (openssl_warn_stdin (co)
|
||||
+ ? cstrings ({"-in", "/dev/stdin"})
|
||||
+ : cstrings ())
|
||||
+#endif
|
||||
+ );
|
||||
|
||||
os.out << pem;
|
||||
os.out.close ();
|
||||
@@ -288,8 +322,8 @@ namespace bpkg
|
||||
dr << ": " << *e;
|
||||
};
|
||||
|
||||
- const path& openssl_path (co.openssl ()[openssl_x509]);
|
||||
- const strings& openssl_opts (co.openssl_option ()[openssl_x509]);
|
||||
+ const path& openssl_path (co.openssl ()[openssl_x509_cmd]);
|
||||
+ const strings& openssl_opts (co.openssl_option ()[openssl_x509_cmd]);
|
||||
|
||||
try
|
||||
{
|
||||
@@ -315,7 +349,7 @@ namespace bpkg
|
||||
openssl os (
|
||||
print_command,
|
||||
fdstream_mode::text, fdstream_mode::text, 2,
|
||||
- openssl_path, openssl_x509,
|
||||
+ openssl_path, openssl_x509_cmd,
|
||||
openssl_opts, "-noout", "-subject", "-dates", "-email",
|
||||
|
||||
// Previously we have used "RFC2253,sep_multiline" format to display
|
||||
@@ -347,6 +381,13 @@ namespace bpkg
|
||||
// sep_multiline - display field per line.
|
||||
//
|
||||
"-nameopt", "utf8,esc_ctrl,dump_nostr,dump_der,sname,sep_multiline"
|
||||
+
|
||||
+#ifndef _WIN32
|
||||
+ ,
|
||||
+ (openssl_warn_stdin (co)
|
||||
+ ? cstrings ({"-in", "/dev/stdin"})
|
||||
+ : cstrings ())
|
||||
+#endif
|
||||
);
|
||||
|
||||
// We unset failbit to provide the detailed error description (which
|
||||
@@ -877,7 +918,7 @@ namespace bpkg
|
||||
};
|
||||
|
||||
bool ku (use_openssl_pkeyutl (co));
|
||||
- const string& cmd (ku ? openssl_pkeyutl : openssl_rsautl);
|
||||
+ const string& cmd (ku ? openssl_pkeyutl_cmd : openssl_rsautl_cmd);
|
||||
|
||||
const path& openssl_path (co.openssl ()[cmd]);
|
||||
const strings& openssl_opts (co.openssl_option ()[cmd]);
|
||||
@@ -973,8 +1014,8 @@ namespace bpkg
|
||||
};
|
||||
|
||||
const string& cmd (use_openssl_pkeyutl (co)
|
||||
- ? openssl_pkeyutl
|
||||
- : openssl_rsautl);
|
||||
+ ? openssl_pkeyutl_cmd
|
||||
+ : openssl_rsautl_cmd);
|
||||
|
||||
const path& openssl_path (co.openssl ()[cmd]);
|
||||
const strings& openssl_opts (co.openssl_option ()[cmd]);
|
||||
--
|
||||
cgit v1.1
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 0e9bf64dadc029bdf3e97ffb982d297eee0499e4 Mon Sep 17 00:00:00 2001
|
||||
From: Boris Kolpackov <boris@codesynthesis.com>
|
||||
Date: Fri, 22 Nov 2019 08:34:19 +0200
|
||||
Subject: Filter out config.install.chroot from default host configuration
|
||||
|
||||
---
|
||||
libbuild2/buildfile | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libbuild2/buildfile b/libbuild2/buildfile
|
||||
index 539e4e6..97b9f26 100644
|
||||
--- a/libbuild2/buildfile
|
||||
+++ b/libbuild2/buildfile
|
||||
@@ -52,7 +52,13 @@ config/cxx{host-config}: config/in{host-config}
|
||||
# Remove comment lines which could be confused with preprocessor directives
|
||||
# by some lesser compilers.
|
||||
#
|
||||
- host_config = $regex.replace_lines($config.save(), '^ *#.*$', [null], return_lines)
|
||||
+ # Also filter out config.install.chroot -- we definitely don't want it
|
||||
+ # carried through.
|
||||
+ #
|
||||
+ host_config = $regex.replace_lines($config.save(), \
|
||||
+ '^ *(#|config.install.chroot).*$', \
|
||||
+ [null], \
|
||||
+ return_lines)
|
||||
}
|
||||
|
||||
libul{build2}: dist/{hxx ixx txx cxx}{** -**.test...}
|
||||
--
|
||||
cgit v0.12
|
||||
|
237
build2.spec
237
build2.spec
@ -1,14 +1,12 @@
|
||||
%bcond bootstrap 0
|
||||
%bcond bundle_libodb 1
|
||||
%bcond check 1
|
||||
%bcond network_checks 0
|
||||
%bcond static 0
|
||||
|
||||
%undefine _auto_set_build_flags
|
||||
%bcond_without check
|
||||
%bcond_without bundle_libodb
|
||||
%bcond_with bootstrap
|
||||
%bcond_with network_checks
|
||||
%bcond_with static
|
||||
|
||||
Name: build2
|
||||
Version: 0.16.0
|
||||
Release: 6%{?dist}
|
||||
Version: 0.12.0
|
||||
Release: 1%{?dist}
|
||||
Summary: Cross-platform build toolchain for developing and packaging C++ code
|
||||
|
||||
License: MIT
|
||||
@ -22,13 +20,13 @@ Source5: macros.%{name}
|
||||
|
||||
# The latest official release of libodb is not compatible with build2
|
||||
%if %{with bundle_libodb}
|
||||
%global libodb_bundle_version 2.5.0-b.25
|
||||
%global libodb_bundle_version 2.5.0-b.17
|
||||
Source100: https://pkg.cppget.org/1/beta/odb/libodb-%{libodb_bundle_version}.tar.gz
|
||||
Source101: https://pkg.cppget.org/1/beta/odb/libodb-sqlite-%{libodb_bundle_version}.tar.gz
|
||||
%endif
|
||||
|
||||
# Upstream: https://git.build2.org/cgit/bpkg/commit/?id=40bb034f57cf37c1cbdcef337733507c230c6004
|
||||
Patch3000: bpkg-openssl-v3.2.0-stdin-warn.patch
|
||||
# Upstream https://git.build2.org/cgit/build2/commit/?id=0e9bf64dadc029bdf3e97ffb982d297eee0499e4
|
||||
Patch0000: build2-libbuild2-buildfile-host_config-config.install.chroot-remove.patch
|
||||
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: libpkgconf-devel
|
||||
@ -125,17 +123,14 @@ applications that use lib%{name}.
|
||||
|
||||
%package -n libbutl
|
||||
Summary: %{name} utility library
|
||||
# BSD-2-Clause:
|
||||
# libbutl/lz4.{c,h}
|
||||
# libbutl/lz4hc.{c,h}
|
||||
# libbutl/mingw-*.hxx
|
||||
# BSD-2 clause:
|
||||
# libbutl/sha256c.c
|
||||
# libbutl/strptime.c
|
||||
# libbutl/timelocal.{c,h}
|
||||
# libbutl/xxhash.{c,h}
|
||||
# BSD-3-Clause:
|
||||
# libbutl/timelocal.c
|
||||
# libbutl/timelocal.h
|
||||
# BSD-3 clause:
|
||||
# libbutl/sha1.c
|
||||
License: MIT AND BSD-2-Clause AND BSD-3-Clause
|
||||
License: MIT and BSD
|
||||
Requires: curl
|
||||
Requires: openssl
|
||||
|
||||
@ -144,7 +139,7 @@ This package contains the %{name} utility library.
|
||||
|
||||
%package -n libbutl-devel
|
||||
Summary: Development files for %{name} utility library
|
||||
License: MIT AND BSD-2-Clause AND BSD-3-Clause
|
||||
License: MIT and BSD
|
||||
Requires: libbutl%{?_isa} = %{version}-%{release}
|
||||
Requires: pkgconfig
|
||||
|
||||
@ -155,7 +150,7 @@ developing applications that use libbutl.
|
||||
%if %{with static}
|
||||
%package -n libbutl-static
|
||||
Summary: Static libraries for %{name} utility library
|
||||
License: MIT AND BSD-2-Clause AND BSD-3-Clause
|
||||
License: MIT and BSD
|
||||
Requires: libbutl-devel%{?_isa} = %{version}-%{release}
|
||||
|
||||
%description -n libbutl-static
|
||||
@ -260,13 +255,14 @@ This package contains the %{name} RPM macros.
|
||||
%else
|
||||
%setup -q -c -n %{name}-toolchain-%{version} -a 1 -a 2 -a 3 -a 4 -a 100 -a 101
|
||||
%endif
|
||||
pushd bpkg-%{version}
|
||||
%patch -p 1 -P 3000
|
||||
pushd build2-%{version}
|
||||
%patch -p 1 -P 0000
|
||||
popd
|
||||
mv libbutl-%{version} %{name}-%{version}
|
||||
|
||||
%build
|
||||
# Define basic installation configuration. Note that this does not include:
|
||||
# %%{_sysconfdir} /etc
|
||||
# %%{_libexecdir} %%{_exec_prefix}/libexec
|
||||
# %%{_sharedstatedir} /var/lib
|
||||
# %%{_datadir} %%{_prefix}/share
|
||||
@ -285,56 +281,38 @@ mv libbutl-%{version} %{name}-%{version}
|
||||
config.install.sbin=%{_sbindir} \\\
|
||||
config.install.include=%{_includedir} \\\
|
||||
config.install.lib=%{_libdir} \\\
|
||||
config.install.etc=%{_sysconfdir} \\\
|
||||
config.install.man=%{_mandir} \\\
|
||||
config.install.legal=%{_defaultlicensedir}/"<project>" \\\
|
||||
config.install.pkgconfig=%{_libdir}/pkgconfig \\\
|
||||
config.install.bin.mode=755 \\\
|
||||
config.install.sbin.mode=755 \\\
|
||||
config.install.lib.mode=755 \\\
|
||||
config.install.chroot=%{?buildroot}
|
||||
%if %{with bootstrap}
|
||||
CC=gcc
|
||||
CXX=g++
|
||||
CFLAGS="${CFLAGS:-%{build_cflags}}"
|
||||
CXXFLAGS="${CXXFLAGS:-%{build_cxxflags}}"
|
||||
LDFLAGS="${LDFLAGS:-%{build_ldflags}}"
|
||||
%ifarch %{ix86} %{arm32}
|
||||
CFLAGS+=" -Wp,-D_FILE_OFFSET_BITS=64 -Wp,-D_TIME_BITS=64"
|
||||
CXXFLAGS+=" -Wp,-D_FILE_OFFSET_BITS=64 -Wp,-D_TIME_BITS=64"
|
||||
%endif
|
||||
%ifarch %{arm32}
|
||||
CFLAGS+=" -Wno-use-after-free"
|
||||
CXXFLAGS+=" -Wno-use-after-free"
|
||||
%endif
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/bash:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/bin:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/c:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cc:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cli:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cxx:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/in:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/version:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/libbutl-%{version}/libbutl:${LD_LIBRARY_PATH}
|
||||
pushd %{name}-%{version}
|
||||
# bootstrap, phase 1: minimal build system
|
||||
export CC
|
||||
export CXX
|
||||
export CFLAGS
|
||||
export CXXFLAGS
|
||||
export LDFLAGS
|
||||
%make_build -f bootstrap.gmake
|
||||
# bootstrap, phase 2: statically linked build system
|
||||
build2/b-boot \
|
||||
config.bin.lib=static \
|
||||
config.c=${CC} \
|
||||
config.cxx=${CXX} \
|
||||
config.c.coptions="${CFLAGS}" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.poptions+="$(pkgconf --cflags-only-I libpkgconf)" \
|
||||
config.cxx.loptions+="$(pkgconf --libs-only-L libpkgconf) ${LDFLAGS}" \
|
||||
config.build2.libpkgconf=true \
|
||||
build2/exe{b}
|
||||
mv build2/b build2/b-boot
|
||||
# configure and build final, shared library build system
|
||||
@ -344,12 +322,9 @@ build2/b-boot configure
|
||||
%endif
|
||||
config.bin.rpath.auto=false \
|
||||
config.bin.rpath_link.auto=false \
|
||||
config.c=${CC} \
|
||||
config.cxx=${CXX} \
|
||||
config.c.coptions="${CFLAGS}" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.loptions="${LDFLAGS}" \
|
||||
config.build2.libpkgconf=true \
|
||||
%{config_install}
|
||||
build2/b-boot
|
||||
popd
|
||||
@ -359,9 +334,7 @@ popd
|
||||
libodb-%{libodb_bundle_version}/ \
|
||||
libodb-sqlite-%{libodb_bundle_version}/ \
|
||||
config.bin.lib=static \
|
||||
config.c=${CC} \
|
||||
config.cxx=${CXX} \
|
||||
config.c.coptions="${CFLAGS}" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.loptions="${LDFLAGS}" \
|
||||
config.import.libodb="libodb-%{libodb_bundle_version}/" \
|
||||
@ -377,12 +350,9 @@ popd
|
||||
%endif
|
||||
config.bin.rpath.auto=false \
|
||||
config.bin.rpath_link.auto=false \
|
||||
config.c=${CC} \
|
||||
config.cxx=${CXX} \
|
||||
config.c.coptions="${CFLAGS}" \
|
||||
config.cxx.coptions="${CXXFLAGS}" \
|
||||
config.cxx.loptions="${LDFLAGS}" \
|
||||
config.import.%{name}="%{name}-%{version}/" \
|
||||
%if %{with bundle_libodb}
|
||||
config.import.libodb="libodb-%{libodb_bundle_version}/" \
|
||||
config.import.libodb_sqlite="libodb-sqlite-%{libodb_bundle_version}/" \
|
||||
@ -415,22 +385,12 @@ popd
|
||||
%if %{with static}
|
||||
config.bin.lib=both \
|
||||
%endif
|
||||
%ifarch %{ix86} %{arm32}
|
||||
config.c.coptions+="-Wp,-D_FILE_OFFSET_BITS=64 -Wp,-D_TIME_BITS=64" \
|
||||
config.cxx.coptions+="-Wp,-D_FILE_OFFSET_BITS=64 -Wp,-D_TIME_BITS=64" \
|
||||
%endif
|
||||
%ifarch %{arm32}
|
||||
config.c.coptions+="-Wno-use-after-free" \
|
||||
config.cxx.coptions+="-Wno-use-after-free" \
|
||||
%endif
|
||||
config.import.%{name}="%{name}-%{version}/" \
|
||||
%if %{with bundle_libodb}
|
||||
config.import.libodb="libodb-%{libodb_bundle_version}/" \
|
||||
config.import.libodb_sqlite="libodb-sqlite-%{libodb_bundle_version}/" \
|
||||
%endif
|
||||
config.import.libbutl="%{name}-%{version}/libbutl-%{version}/" \
|
||||
config.import.libbpkg="libbpkg-%{version}/" \
|
||||
config.build2.libpkgconf=true
|
||||
config.import.libbpkg="libbpkg-%{version}/"
|
||||
# build build2, bpkg, and bdep and their dependencies
|
||||
b %{name}-%{version}/ \
|
||||
libbpkg-%{version}/ \
|
||||
@ -448,13 +408,14 @@ b install:
|
||||
%{name}-%{version}/ \
|
||||
libbpkg-%{version}/ \
|
||||
bpkg-%{version}/ \
|
||||
bdep-%{version}/ \
|
||||
%if %{with bundle_libodb}
|
||||
'!config.install.scope=project'
|
||||
%endif
|
||||
# copy licenses from build2 package to libbuild2 subpackage
|
||||
bdep-%{version}/
|
||||
# move licenses from %%{_docdir} to %%{_defaultlicensedir}
|
||||
for p in %{name} libbutl libbpkg bpkg bdep; do
|
||||
mkdir -p %{buildroot}%{_defaultlicensedir}/${p}
|
||||
mv %{buildroot}%{_docdir}/${p}/LICENSE %{buildroot}%{_defaultlicensedir}/${p}
|
||||
done
|
||||
mkdir -p %{buildroot}%{_defaultlicensedir}/lib%{name}
|
||||
cp %{buildroot}%{_defaultlicensedir}/%{name}/{AUTHORS,LICENSE} %{buildroot}%{_defaultlicensedir}/lib%{name}
|
||||
cp %{buildroot}%{_defaultlicensedir}/%{name}/LICENSE %{buildroot}%{_defaultlicensedir}/lib%{name}
|
||||
install -Dpm0644 %{SOURCE5} %{buildroot}%{_rpmmacrodir}/macros.%{name}
|
||||
|
||||
%check
|
||||
@ -467,7 +428,6 @@ export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/bash:${LD_LIBRARY_PATH
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/bin:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/c:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cc:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cli:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/cxx:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/in:${LD_LIBRARY_PATH}
|
||||
export LD_LIBRARY_PATH=$PWD/%{name}-%{version}/lib%{name}/version:${LD_LIBRARY_PATH}
|
||||
@ -479,16 +439,15 @@ b test:
|
||||
bpkg-%{version}/ \
|
||||
bdep-%{version}/ \
|
||||
%if ! %{with network_checks}
|
||||
config.bdep.tests.ci.server='' \
|
||||
config.bdep.tests.publish.repository=''
|
||||
config.bdep.test.repository=''
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%files
|
||||
%dir %{_defaultlicensedir}/%{name}
|
||||
%dir %{_docdir}/%{name}
|
||||
%license %{_defaultlicensedir}/%{name}/AUTHORS
|
||||
%license %{_defaultlicensedir}/%{name}/LICENSE
|
||||
%doc %{_docdir}/%{name}/CONTRIBUTING.md
|
||||
%doc %{_docdir}/%{name}/NEWS
|
||||
%doc %{_docdir}/%{name}/README
|
||||
%{_bindir}/b
|
||||
@ -502,38 +461,34 @@ b test:
|
||||
|
||||
%files -n lib%{name}
|
||||
%dir %{_defaultlicensedir}/lib%{name}
|
||||
%license %{_defaultlicensedir}/lib%{name}/AUTHORS
|
||||
%license %{_defaultlicensedir}/lib%{name}/LICENSE
|
||||
%{_libdir}/lib%{name}-0.16.so
|
||||
%{_libdir}/lib%{name}-bash-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-bin-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-c-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-cc-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-cli-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-cxx-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-in-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-version-0.16-0.16.so
|
||||
%{_libdir}/lib%{name}-0.12.so
|
||||
%{_libdir}/lib%{name}-bash-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-bin-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-c-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-cc-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-cxx-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-in-0.12-0.12.so
|
||||
%{_libdir}/lib%{name}-version-0.12-0.12.so
|
||||
|
||||
%files -n lib%{name}-devel
|
||||
%{_includedir}/lib%{name}
|
||||
%{_libdir}/lib%{name}.so
|
||||
%{_libdir}/lib%{name}-bash{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-bin{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-c{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-cc{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-cli{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-cxx{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-in{,-0.16}.so
|
||||
%{_libdir}/lib%{name}-version{,-0.16}.so
|
||||
%{_libdir}/pkgconfig/lib%{name}{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-bash{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-bin{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-c{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cc{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cli{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cxx{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-in{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-version{,.shared}.pc
|
||||
%{_libdir}/lib%{name}-bash{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-bin{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-c{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-cc{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-cxx{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-in{,-0.12}.so
|
||||
%{_libdir}/lib%{name}-version{,-0.12}.so
|
||||
%{_libdir}/pkgconfig/lib%{name}.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-bash.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-bin.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-c.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cc.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cxx.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-in.shared.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-version.shared.pc
|
||||
|
||||
%if %{with static}
|
||||
%files -n lib%{name}-static
|
||||
@ -542,7 +497,6 @@ b test:
|
||||
%{_libdir}/lib%{name}-bin.a
|
||||
%{_libdir}/lib%{name}-c.a
|
||||
%{_libdir}/lib%{name}-cc.a
|
||||
%{_libdir}/lib%{name}-cli.a
|
||||
%{_libdir}/lib%{name}-cxx.a
|
||||
%{_libdir}/lib%{name}-in.a
|
||||
%{_libdir}/lib%{name}-version.a
|
||||
@ -551,7 +505,6 @@ b test:
|
||||
%{_libdir}/pkgconfig/lib%{name}-bin.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-c.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cc.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cli.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-cxx.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-in.static.pc
|
||||
%{_libdir}/pkgconfig/lib%{name}-version.static.pc
|
||||
@ -559,19 +512,18 @@ b test:
|
||||
|
||||
%files -n libbutl
|
||||
%dir %{_defaultlicensedir}/libbutl
|
||||
%license %{_defaultlicensedir}/libbutl/AUTHORS
|
||||
%license %{_defaultlicensedir}/libbutl/COPYRIGHT
|
||||
%license %{_defaultlicensedir}/libbutl/LICENSE
|
||||
%{_libdir}/libbutl-0.16.so
|
||||
%{_libdir}/libbutl-0.12.so
|
||||
|
||||
%files -n libbutl-devel
|
||||
%dir %{_docdir}/libbutl
|
||||
%doc %{_docdir}/libbutl/manifest
|
||||
%doc %{_docdir}/libbutl/CONTRIBUTING.md
|
||||
%doc %{_docdir}/libbutl/NEWS
|
||||
%doc %{_docdir}/libbutl/README
|
||||
%{_includedir}/libbutl
|
||||
%{_libdir}/libbutl.so
|
||||
%{_libdir}/pkgconfig/libbutl{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/libbutl.shared.pc
|
||||
|
||||
%if %{with static}
|
||||
%files -n libbutl-static
|
||||
@ -581,18 +533,18 @@ b test:
|
||||
|
||||
%files -n libbpkg
|
||||
%dir %{_defaultlicensedir}/libbpkg
|
||||
%license %{_defaultlicensedir}/libbpkg/AUTHORS
|
||||
%license %{_defaultlicensedir}/libbpkg/LICENSE
|
||||
%{_libdir}/libbpkg-0.16.so
|
||||
%{_libdir}/libbpkg-0.12.so
|
||||
|
||||
%files -n libbpkg-devel
|
||||
%dir %{_docdir}/libbpkg
|
||||
%doc %{_docdir}/libbpkg/manifest
|
||||
%doc %{_docdir}/libbpkg/CONTRIBUTING.md
|
||||
%doc %{_docdir}/libbpkg/NEWS
|
||||
%doc %{_docdir}/libbpkg/README
|
||||
%{_includedir}/libbpkg
|
||||
%{_libdir}/libbpkg.so
|
||||
%{_libdir}/pkgconfig/libbpkg{,.shared}.pc
|
||||
%{_libdir}/pkgconfig/libbpkg.shared.pc
|
||||
|
||||
%if %{with static}
|
||||
%files -n libbpkg-static
|
||||
@ -603,9 +555,8 @@ b test:
|
||||
%files -n bpkg
|
||||
%dir %{_defaultlicensedir}/bpkg
|
||||
%dir %{_docdir}/bpkg
|
||||
%license %{_defaultlicensedir}/bpkg/AUTHORS
|
||||
%license %{_defaultlicensedir}/bpkg/LEGAL
|
||||
%license %{_defaultlicensedir}/bpkg/LICENSE
|
||||
%doc %{_docdir}/bpkg/CONTRIBUTING.md
|
||||
%doc %{_docdir}/bpkg/NEWS
|
||||
%doc %{_docdir}/bpkg/README
|
||||
%{_bindir}/bpkg
|
||||
@ -621,9 +572,8 @@ b test:
|
||||
%files -n bdep
|
||||
%dir %{_defaultlicensedir}/bdep
|
||||
%dir %{_docdir}/bdep
|
||||
%license %{_defaultlicensedir}/bdep/AUTHORS
|
||||
%license %{_defaultlicensedir}/bdep/LEGAL
|
||||
%license %{_defaultlicensedir}/bdep/LICENSE
|
||||
%doc %{_docdir}/bdep/CONTRIBUTING.md
|
||||
%doc %{_docdir}/bdep/NEWS
|
||||
%doc %{_docdir}/bdep/README
|
||||
%{_bindir}/bdep
|
||||
@ -639,71 +589,8 @@ b test:
|
||||
%{_rpmmacrodir}/macros.%{name}
|
||||
|
||||
%changelog
|
||||
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Mon Jun 17 2024 Jens Petersen <petersen@redhat.com> - 0.16.0-5
|
||||
- rebuild (against pkgconf-2.1.1) for F40+
|
||||
|
||||
* Sat Apr 20 2024 Matthew Krupcale <mkrupcale@gmail.com> - 0.16.0-4
|
||||
- Rebuild for libpkgconf ABI changes
|
||||
- Apply patch to silence OpenSSL v3.2.0 warnings in bpkg
|
||||
|
||||
* Tue Jan 23 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Thu Aug 31 2023 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.16.0-1
|
||||
- Update to v0.16.0
|
||||
|
||||
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Sat Mar 4 2023 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.15.0-2
|
||||
- Add and remove required patches for Fedora 38
|
||||
- Use SPDX license expressions
|
||||
|
||||
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Sat Jul 30 2022 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.15.0-1
|
||||
- Update to v0.15.0
|
||||
|
||||
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.14.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Sun Jan 23 2022 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.14.0-1
|
||||
- Update to v0.14.0
|
||||
|
||||
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-3
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Sat Jul 18 2020 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.13.0-1
|
||||
- Update to v0.13.0
|
||||
|
||||
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Wed Nov 20 2019 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.12.0-1
|
||||
* Fri Nov 22 2019 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.12.0-1
|
||||
- Update to v0.12.0
|
||||
|
||||
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.11.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Tue Jun 11 2019 Matthew Krupcale <mkrupcale@matthewkrupcale.com> - 0.11.0-1
|
||||
- Initial package
|
||||
|
@ -11,6 +11,7 @@
|
||||
config.cxx.coptions="%{build_cxxflags}" \\\
|
||||
config.cc.loptions="%{build_ldflags}"
|
||||
# Define basic installation configuration. Note that this does not include:
|
||||
# %%{_sysconfdir} /etc
|
||||
# %%{_libexecdir} %%{_exec_prefix}/libexec
|
||||
# %%{_sharedstatedir} /var/lib
|
||||
# %%{_datadir} %%{_prefix}/share
|
||||
@ -29,9 +30,7 @@
|
||||
config.install.sbin=%{_sbindir} \\\
|
||||
config.install.include=%{_includedir} \\\
|
||||
config.install.lib=%{_libdir} \\\
|
||||
config.install.etc=%{_sysconfdir} \\\
|
||||
config.install.man=%{_mandir} \\\
|
||||
config.install.legal=%{_defaultlicensedir}/"<project>" \\\
|
||||
config.install.pkgconfig=%{_libdir}/pkgconfig \\\
|
||||
config.install.bin.mode=755 \\\
|
||||
config.install.sbin.mode=755 \\\
|
||||
|
14
sources
14
sources
@ -1,7 +1,7 @@
|
||||
SHA512 (bdep-0.16.0.tar.gz) = 49c6d500a9a875ceac2aeecc0951c4ff415033e5ba6735c835aa53382c0789bc0c6066630f2f802dbaba68d88bc2a84d323f511a9e482994f7970327e6a1f6e3
|
||||
SHA512 (bpkg-0.16.0.tar.gz) = 80a47970f557a55279b94d1a0466562df1ef1e619fb4d45cf8598b5f243e7feac52f28e3e9752268ae04b8d126b8a83886194535fc71fc070884d0bbeacf68c8
|
||||
SHA512 (build2-0.16.0.tar.gz) = 8190ae5812c46bca3df63564d2d96e5aa1781776420ff5f68a1b8001edea66feed32ee55fd3de763e35b2e84bde18341af5dbb3fc700d92942c18e8e7649a627
|
||||
SHA512 (libbpkg-0.16.0.tar.gz) = fcc3ec82ee71a3f9b4124264d882baa0915f8b15804b94e7392d06217d850cc52f6a51d54a6022cec196ab441f3a3a2188a190d32cbb8d1544c2ca019abfb890
|
||||
SHA512 (libbutl-0.16.0.tar.gz) = 43f545710eb1072afe71728a6a360e3618786e0ee14bfba4e8bb4b3be556943c1d55df8b536444b7f6dac61b1c650f591cc1b8410713738b21b5f2e24215814a
|
||||
SHA512 (libodb-2.5.0-b.25.tar.gz) = f99eba87130f7c3ed0b707e1f4efdb839c97c221fee24056d955072767c36106297abe76e5f82054cf5bc3bf0fda631e7c92e4943645d6ff2be57831006505ef
|
||||
SHA512 (libodb-sqlite-2.5.0-b.25.tar.gz) = 886119c8524939fa7c094afc157ada1797dca338d6e1a488aca8552615e2050c9d555e3784226e2d28faee58019a8e51b990ee9df1af1bdfe00d591d7268d673
|
||||
SHA512 (build2-0.12.0.tar.gz) = e5542d7662a09ec54fcab77a5533d777b785db7286d6c6380dc3229d3e2e234ac3292c5584990cde69378470014f629d8c2f5245804735bb11e828fdd6ef8f79
|
||||
SHA512 (libbutl-0.12.0.tar.gz) = edc2764ad0e8eb9c502016a84c58348617b987b66464a4f4190732baeab80eec8d1631d005560733dcac10c1e9edec7079b70e296e5121875af3fe13dbaefa07
|
||||
SHA512 (libbpkg-0.12.0.tar.gz) = 1a863e78f0cdeda0790b0ff4d4c466795e5489f47a873e9b33c14e132344ea67d36b7f809f89c57498d72ff4cf2dc85f9b85d332f1988387838a3ee6d30e019b
|
||||
SHA512 (bpkg-0.12.0.tar.gz) = 107de755a2fa0a6e1cafd5fea94d680a716610c01bb9793ac6bea795d1a3f086be0af950ad2c74333748c34ec87cbb12ff32a5749a4598bff191862dd638b02f
|
||||
SHA512 (bdep-0.12.0.tar.gz) = 767ae0f1fbf398712aaef2be1dd126413ad5805991873f2845a7633ca7c14d05e47cb4e4c504b4aeaa9f1904e0f4dbf30b7572a251f69321356a457e04a82e71
|
||||
SHA512 (libodb-2.5.0-b.17.tar.gz) = f1b414e7271a8a7fe83de8894584b2f347818695d40437500e8f6dca6fc7c8ec098619d4d825bd2680fe0987439fe01a0ab6787c64d233ed0a94bf3222f1fb4f
|
||||
SHA512 (libodb-sqlite-2.5.0-b.17.tar.gz) = eb447b7833a1ee3f6db337ceac3e0b40da60e2f9b93b1f4d4bd3d67a8165830bb0394d96d41a89622799cfdc8072ba68d17a859186a9bb1e167053a8355fd170
|
||||
|
Loading…
Reference in New Issue
Block a user