From ceb3093820731db6dbf8fc26dc03d5be783ceb4f Mon Sep 17 00:00:00 2001 From: Scott Fryer <60462088+steelhead31@users.noreply.github.com> Date: Fri, 4 Oct 2024 15:12:30 +0100 Subject: [PATCH] UnixPB: Add Fedora 40 Support (#3761) * UnixPB: Remove libnss3 on Fedora * VPC: Add Fedora 40 Vagrantfile * UnixPB: Fix fedora install * UnixPB: Add Fedora 40 Support * VPC: Fix whitespace * UnixPB: Unify version comparison in NASM role. --- ansible/pbTestScripts/vmDestroy.sh | 4 ++- .../roles/Common/tasks/Fedora.yml | 8 +++--- .../roles/Common/vars/Fedora.yml | 4 +-- .../roles/nasm/tasks/main.yml | 18 +++++++++---- ansible/vagrant/Vagrantfile.Fedora40 | 26 +++++++++++++++++++ 5 files changed, 47 insertions(+), 13 deletions(-) create mode 100644 ansible/vagrant/Vagrantfile.Fedora40 diff --git a/ansible/pbTestScripts/vmDestroy.sh b/ansible/pbTestScripts/vmDestroy.sh index 616b4bd3f7..d98f477ef7 100755 --- a/ansible/pbTestScripts/vmDestroy.sh +++ b/ansible/pbTestScripts/vmDestroy.sh @@ -61,6 +61,8 @@ checkOS() { osToDestroy="D8" ;; "Debian10" | "debian10" | "D10" | "d10" ) osToDestroy="D10" ;; + "Fedora40" | "fedora40" | "F40" | "f40" ) + osToDestroy="F40" ;; "FreeBSD12" | "freebsd12" | "F12" | "f12" ) osToDestroy="FBSD12" ;; "Solaris10" | "solaris10" | "Sol10" | "sol10" ) @@ -70,7 +72,7 @@ checkOS() { "Windows2022" | "Win2022" | "W22" | "w22" ) osToDestroy="W2022";; "all" ) - osToDestroy="U16 U18 U20 U21 U22 C6 C7 C8 D8 D10 FBSD12 Sol10 W2012 W2022" ;; + osToDestroy="U16 U18 U20 U21 U22 C6 C7 C8 D8 D10 F40 FBSD12 Sol10 W2012 W2022" ;; "") echo "No OS detected. Did you miss the '-o' option?" ; usage; exit 1;; *) echo "$OS is not a currently supported OS" ; listOS; exit 1; diff --git a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/tasks/Fedora.yml b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/tasks/Fedora.yml index 15bc519c2d..d628975789 100644 --- a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/tasks/Fedora.yml +++ b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/tasks/Fedora.yml @@ -94,11 +94,11 @@ - (ansible_distribution_major_version == "8") tags: build_tools -- name: Install additional build tools for FEDORA 35 +- name: Install additional build tools for FEDORA 35+ package: "name={{ item }} state=latest" - with_items: "{{ Additional_Build_Tools_FEDORA35 }}" + with_items: "{{ Additional_Build_Tools_FEDORA35PLUS }}" when: - - (ansible_distribution_major_version == "35" and ansible_distribution == "Fedora") + - (ansible_distribution_major_version >= "35" and ansible_distribution == "Fedora") tags: build_tools ################# @@ -123,7 +123,7 @@ when: - not (ansible_distribution_major_version == "6" and ansible_architecture == "ppc64") - not (ansible_distribution_major_version == "8") - - not (ansible_distribution_major_version == "35" and ansible_distribution == "Fedora") + - not (ansible_distribution_major_version >= "35" and ansible_distribution == "Fedora") - name: Install Java when RedHat 6 on ppc64 package: "name={{ item }} state=latest" diff --git a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/vars/Fedora.yml b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/vars/Fedora.yml index 795891fa5f..07cc36880a 100644 --- a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/vars/Fedora.yml +++ b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/Common/vars/Fedora.yml @@ -31,7 +31,6 @@ Build_Tool_Packages: - gnutls-utils - libcurl-devel - libffi-devel - - libnss3.so - libpng-devel - libXext-devel - libXi-devel # JDK12+ compilation @@ -59,7 +58,7 @@ Additional_Build_Tools_NOT_RHEL8: - libmpc-devel # now in CodeReady Linux Builder (CRB) repo - ntp -Additional_Build_Tools_FEDORA35: +Additional_Build_Tools_FEDORA35PLUS: - glibc.i686 # a dependency required for executing a 32-bit C binary - glibc-devel.i686 # a dependency required for executing a 32-bit C binary - libstdc++.i686 # a dependency required for executing a 32-bit C binary @@ -137,7 +136,6 @@ Test_Tool_Packages: - mercurial - gnutls - gnutls-utils - - libnss3.so - shared-mime-info - nss-devel - nss-tools diff --git a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/nasm/tasks/main.yml b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/nasm/tasks/main.yml index 1a725ba2e8..e091847940 100644 --- a/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/nasm/tasks/main.yml +++ b/ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/nasm/tasks/main.yml @@ -14,6 +14,7 @@ - name: Set NASM version set_fact: nasm_version: "2.16.03" + tags: nasm # checking the common location for ubuntu package installs - name: Checking for /usr/bin/gcc-7 @@ -89,12 +90,15 @@ - (nasm_installed.rc is defined) and ((nasm_installed.rc != 0 ) or (nasm_installed.rc == 0 and nasm.stdout is version_compare('2.13.03', operator='ne')) ) tags: nasm -- name: Running ./configure & make for nasm ( Not Ubuntu 22+ ) +- name: Running ./configure & make for nasm ( Not Ubuntu 22+ and not Fedora 35+ ) shell: cd /tmp/nasm-{{ nasm_version }} && CC={{ CC }} && ./configure -prefix=/usr/local && make install environment: CC: "{{ CC }}" when: - - (ansible_distribution != "Ubuntu" or ansible_distribution == "Ubuntu" and ansible_distribution_major_version < "22") and (nasm_installed.rc is defined) and ((nasm_installed.rc != 0 ) or (nasm_installed.rc == 0 and nasm.stdout is version_compare('2.13.03', operator='ne')) ) + - (ansible_distribution != "Ubuntu" or (ansible_distribution == "Ubuntu" and ansible_distribution_major_version | int < 22 )) + - (ansible_distribution != "Fedora" or (ansible_distribution == "Fedora" and ansible_distribution_major_version | int < 35 )) + - (nasm_installed.rc is defined) + - (nasm_installed.rc != 0 or (nasm_installed.rc == 0 and nasm.stdout is version_compare('2.13.03', operator='ne'))) tags: nasm - name: Running ./configure & make for nasm ( Ubuntu 22 x64 ) @@ -103,15 +107,19 @@ CC: "{{ CC }}" LIBRARY_PATH: /usr/lib/x86_64-linux-gnu when: - - (ansible_distribution == "Ubuntu" and ansible_distribution_major_version == "22" and ansible_architecture == "x86_64") and (nasm_installed.rc is defined) and ((nasm_installed.rc != 0 ) or (nasm_installed.rc == 0 and nasm.stdout is version_compare(nasm_version, operator='ne')) ) + - (ansible_distribution == "Ubuntu" and ansible_distribution_major_version | int == 22 and ansible_architecture == "x86_64") and (nasm_installed.rc is defined) and ((nasm_installed.rc != 0 ) or (nasm_installed.rc == 0 and nasm.stdout is version_compare(nasm_version, operator='ne')) ) tags: nasm -- name: Running ./configure & make for nasm ( Ubuntu 24+ x64 ) +- name: Running ./configure & make for nasm ( Ubuntu 24+ x64 / Fedora 35+) shell: cd /tmp/nasm-{{ nasm_version }} && ./configure -prefix=/usr/local && make install environment: LIBRARY_PATH: /usr/lib/x86_64-linux-gnu when: - - (ansible_distribution == "Ubuntu" and ansible_distribution_major_version >= "24" and ansible_architecture == "x86_64") and (nasm_installed.rc is defined) and ((nasm_installed.rc != 0 ) or (nasm_installed.rc == 0 and nasm.stdout is version_compare(nasm_version, operator='ne')) ) + - ansible_architecture == "x86_64" + - nasm_installed.rc is defined + - (nasm_installed.rc != 0) or (nasm_installed.rc == 0 and nasm.stdout is version_compare(nasm_version, operator='ne')) + - (ansible_distribution == "Ubuntu" and ansible_distribution_major_version | int >= 24) + or (ansible_distribution == "Fedora" and ansible_distribution_major_version | int >= 35) tags: nasm - name: Remove downloaded packages for nasm diff --git a/ansible/vagrant/Vagrantfile.Fedora40 b/ansible/vagrant/Vagrantfile.Fedora40 new file mode 100644 index 0000000000..70ee8f4f04 --- /dev/null +++ b/ansible/vagrant/Vagrantfile.Fedora40 @@ -0,0 +1,26 @@ +# -*- mode: ruby -*- +# vi: set ft=ruby : + +$script = <