[cpp-linbuild] branch main updated: Implement support for Amazon Linux 2022

John W. O'Brien john at saltant.com
Fri Feb 4 16:51:58 UTC 2022


This is an automated email from the git hooks/post-receive script.

obrienjw pushed a commit to branch main
in repository cpp-linbuild.

View the commit online:
http://git.shibboleth.net/view/?p=cpp-linbuild.git;a=commit;h=06fd5c928b973f44692010febe5659229483d56b

The following commit(s) were added to refs/heads/main by this push:
     new 06fd5c9  Implement support for Amazon Linux 2022
06fd5c9 is described below

commit 06fd5c928b973f44692010febe5659229483d56b
Author: John W. O'Brien <john at saltant.com>
AuthorDate: Fri Feb 4 16:51:35 2022 +0000

    Implement support for Amazon Linux 2022
---
 Makefile                            |  1 +
 common/SPECS/shibboleth.spec        | 12 ++++++------
 common/SPECS/xmltooling.spec        | 10 +++++-----
 os/amazonlinux2022/image/Dockerfile | 26 ++++++++++++++++++++++++++
 os/amazonlinux2022/image/local.repo |  5 +++++
 5 files changed, 43 insertions(+), 11 deletions(-)

diff --git a/Makefile b/Makefile
index db1dd87..cf71802 100644
--- a/Makefile
+++ b/Makefile
@@ -160,6 +160,7 @@ PLATFORMS=\
 	centos7 \
 	centos8 \
 	amazonlinux2 \
+	amazonlinux2022 \
 	rockylinux8
 
 # To add a new platform, create the following
diff --git a/common/SPECS/shibboleth.spec b/common/SPECS/shibboleth.spec
index 462cdab..5752175 100644
--- a/common/SPECS/shibboleth.spec
+++ b/common/SPECS/shibboleth.spec
@@ -10,7 +10,7 @@ Source:		%{name}-sp-%{version}.tar.bz2
 BuildRoot:	%{_tmppath}/%{name}-sp-%{version}-root
 Obsoletes:	shibboleth-sp = 2.5.0
 Requires:	openssl
-%if 0%{?rhel} >= 6 || 0%{?amzn} >= 1
+%if 0%{?rhel} >= 6 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 PreReq:		xmltooling-schemas%{?_isa} >= 3.2.0, opensaml-schemas%{?_isa} >= 3.2.0
 %else
 PreReq:		xmltooling-schemas >= 3.2.0, opensaml-schemas >= 3.2.0
@@ -33,7 +33,7 @@ BuildRequires:	libxmltooling-devel >= 3.2.0
 BuildRequires:	libsaml-devel >= 3.2.0
 %{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: liblog4shib-devel >= 2}
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 Requires:	libcurl-openssl%{?_isa} >= 7.21.7
 BuildRequires:	chrpath
 %endif
@@ -50,7 +50,7 @@ BuildRequires:	libmemcached-devel
 %endif
 %{?_with_memcached:BuildRequires: libmemcached-devel}
 %if "%{_vendor}" == "redhat" || "%{_vendor}" == "amazon"
-%if 0%{?rhel} >= 6 || 0%{?amzn} >= 1
+%if 0%{?rhel} >= 6 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 %{!?_without_builtinapache:BuildRequires: httpd-devel%{?_isa}}
 %else
 %{!?_without_builtinapache:BuildRequires: httpd-devel}
@@ -222,7 +222,7 @@ Before=httpd.service
 Type=notify
 NotifyAccess=main
 User=%{runuser}
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 Environment=LD_LIBRARY_PATH=/opt/shibboleth/%{_lib}
 %endif
 ExecStart=%{_sbindir}/shibd -f -F
@@ -251,7 +251,7 @@ SHIBD_USER=%{runuser}
 # Wait period (secs) for configuration (and metadata) to load
 SHIBD_WAIT=30
 EOF
-	%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+	%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 		cat >> $SYSCONFIG_SHIBD <<EOF
 
 # Override OS-supplied libcurl
@@ -260,7 +260,7 @@ EOF
 	%endif
 fi
 
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 	# Strip existing rpath to libcurl.
 	chrpath -d $RPM_BUILD_ROOT%{_sbindir}/shibd
 	chrpath -d $RPM_BUILD_ROOT%{_bindir}/mdquery
diff --git a/common/SPECS/xmltooling.spec b/common/SPECS/xmltooling.spec
index 688403d..8c5f850 100644
--- a/common/SPECS/xmltooling.spec
+++ b/common/SPECS/xmltooling.spec
@@ -13,7 +13,7 @@ BuildRequires:  libxml-security-c-devel >= 2.0.0
 %{?_with_log4cpp:BuildRequires: liblog4cpp-devel >= 1.0}
 %{!?_with_log4cpp:BuildRequires: liblog4shib-devel >= 1.0.4}
 BuildRequires: gcc-c++, pkgconfig, zlib-devel, openssl-devel, boost-devel >= 1.32.0
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 BuildRequires: libcurl-openssl-devel >= 7.21.7
 Requires: libcurl-openssl >= 7.21.7
 %else
@@ -35,7 +35,7 @@ BuildRequires: gdb
 %endif
 
 # Prevent the RHEL/etc 6+ package from requiring a vanilla libcurl.
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 %filter_from_requires /libcurl\.so\..*/d
 %filter_setup
 %endif
@@ -52,7 +52,7 @@ Summary:    OpenSAML XMLTooling library
 Group:      Development/Libraries/C and C++
 Provides:   xmltooling = %{version}-%{release}
 Obsoletes:  xmltooling < %{version}-%{release}
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 Requires: libcurl-openssl >= 7.21.7
 %endif
 
@@ -76,7 +76,7 @@ Requires: libxml-security-c-devel >= 2.0.0
 %{?_with_log4cpp:Requires: liblog4cpp-devel >= 1.0}
 %{!?_with_log4cpp:Requires: liblog4shib-devel >= 1.0.4}
 Requires: openssl-devel, boost-devel >= 1.32.0
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 Requires: libcurl-openssl-devel >= 7.21.7
 %else
 Requires: curl-devel >= 7.10.6
@@ -108,7 +108,7 @@ This package includes XML schemas and related files.
 %setup -q
 
 %build
-%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} >= 1
+%if 0%{?rhel} == 6 || 0%{?rhel} == 7 || 0%{?amzn} == 1 || 0%{?amzn} == 2
 %configure %{?xmltooling_options} %{!?_without_xmlsec: --with-xmlsec} PKG_CONFIG_PATH=/opt/shibboleth/%{_lib}/pkgconfig
 %else
 %configure %{?xmltooling_options} %{!?_without_xmlsec: --with-xmlsec}
diff --git a/os/amazonlinux2022/image/Dockerfile b/os/amazonlinux2022/image/Dockerfile
new file mode 100644
index 0000000..09fcd09
--- /dev/null
+++ b/os/amazonlinux2022/image/Dockerfile
@@ -0,0 +1,26 @@
+FROM public.ecr.aws/amazonlinux/amazonlinux:2022.0.20211222.0
+
+COPY *.repo /etc/yum.repos.d/
+
+RUN dnf -y update \
+    && dnf -y install \
+        autoconf automake boost-devel chrpath curl-devel doxygen \
+        gcc-c++ gdb git groff httpd-devel libidn-devel \
+        libtool make openldap-devel openssl-devel \
+        pkgconfig rpm-build stunnel systemd-devel unixODBC-devel \
+        zlib-devel createrepo_c yum-utils \
+    && dnf clean all \
+    && rm -rf /var/cache/yum
+
+# internal and external are w.r.t. a container, where external locations
+# are expected to be mounted and pre-populated with required inputs
+ENV BUILD_BASE=/opt/build
+ENV INT_BASE=${BUILD_BASE}/internal
+ENV EXT_BASE=${BUILD_BASE}/external
+
+RUN mkdir -p \
+    ${INT_BASE}/{BUILD,BUILDROOT} \
+    ${EXT_BASE}/{in,out} \
+    && ln -s ${EXT_BASE}/in/macros/macros.shibboleth /etc/rpm/
+
+WORKDIR ${EXT_BASE}/in/SPECS
diff --git a/os/amazonlinux2022/image/local.repo b/os/amazonlinux2022/image/local.repo
new file mode 100644
index 0000000..abe1732
--- /dev/null
+++ b/os/amazonlinux2022/image/local.repo
@@ -0,0 +1,5 @@
+[local]
+name=Local Shibboleth-SP Build Repo
+baseurl=file:///opt/build/external/out/RPMS/$basearch/
+gpgcheck=0
+enabled=0

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list