diff --git a/java-latest-openjdk-portable.spec b/java-latest-openjdk-portable.spec index 69753f4..25ad11d 100644 --- a/java-latest-openjdk-portable.spec +++ b/java-latest-openjdk-portable.spec @@ -391,7 +391,7 @@ %global top_level_dir_name %{origin} %global top_level_dir_name_backup %{top_level_dir_name}-backup %global buildver 36 -%global rpmrelease 2 +%global rpmrelease 3 # Priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit %if %is_system_jdk # Using 10 digits may overflow the int used for priority, so we combine the patch and build versions @@ -453,17 +453,21 @@ %if (0%{?rhel} > 0 && 0%{?rhel} < 8) %define jreportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;el7\\(_[0-9]\\)*;portable%{1}.jre.;g" | sed "s;openjdkportable;el;g") %define jdkportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;el7\\(_[0-9]\\)*;portable%{1}.jdk.;g" | sed "s;openjdkportable;el;g") +%define jdkportablesourcesnameimpl() %(echo %{uniquesuffix ""} | sed "s;el7\\(_[0-9]\\)*;portable%{1}.sources.;g" | sed "s;openjdkportable;el;g" | sed "s;.%{_arch};.noarch;g") %define staticlibsportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;el7\\(_[0-9]\\)*;portable%{1}.static-libs.;g" | sed "s;openjdkportable;el;g") %else %define jreportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;fc\\([0-9]\\)*;\\0.portable%{1}.jre;g" | sed "s;openjdkportable;el;g") %define jdkportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;fc\\([0-9]\\)*;\\0.portable%{1}.jdk;g" | sed "s;openjdkportable;el;g") +%define jdkportablesourcesnameimpl() %(echo %{uniquesuffix ""} | sed "s;fc\\([0-9]\\)*;\\0.portable%{1}.sources;g" | sed "s;openjdkportable;el;g" | sed "s;.%{_arch};.noarch;g") %define staticlibsportablenameimpl() %(echo %{uniquesuffix ""} | sed "s;fc\\([0-9]\\)*;\\0.portable%{1}.static-libs;g" | sed "s;openjdkportable;el;g") %endif %define jreportablearchive() %{expand:%{jreportablenameimpl -- %%{1}}.tar.xz} %define jdkportablearchive() %{expand:%{jdkportablenameimpl -- %%{1}}.tar.xz} +%define jdkportablesourcesarchive() %{expand:%{jdkportablesourcesnameimpl -- %%{1}}.tar.xz} %define staticlibsportablearchive() %{expand:%{staticlibsportablenameimpl -- %%{1}}.tar.xz} %define jreportablename() %{expand:%{jreportablenameimpl -- %%{1}}} %define jdkportablename() %{expand:%{jdkportablenameimpl -- %%{1}}} +%define jdkportablesourcesname() %{expand:%{jdkportablesourcesnameimpl -- %%{1}}} # Intentionally use jdkportablenameimpl here since we want to have static-libs files overlayed on # top of the JDK archive %define staticlibsportablename() %{expand:%{jdkportablenameimpl -- %%{1}}} @@ -904,6 +908,13 @@ The %{origin_nice} %{featurever} libraries for static linking - portable edition # staticlibs %endif +%package sources +Summary: %{origin_nice} %{featurever} full patched sources of portable JDK +BuildArch: noarch + +%description sources +The %{origin_nice} %{featurever} full patched sources of portable JDK to build, attach to debuggers or for debuginfo + %prep echo "Preparing %{oj_vendor_version}" @@ -933,6 +944,7 @@ else echo "include_fastdebug_build is %{include_fastdebug_build}, that is invalid. Use 1 for yes or 0 for no" exit 13 fi + if [ %{include_debug_build} -eq 0 -a %{include_normal_build} -eq 0 -a %{include_fastdebug_build} -eq 0 ] ; then echo "You have disabled all builds (normal,fastdebug,slowdebug). That is a no go." exit 14 @@ -1282,9 +1294,10 @@ EOF fi } -# stubs to copy icons to final images -abs_src_path=$(pwd)/openjdk/src -icon_stub_path=java.desktop/unix/classes/sun/awt/X11 +pwd +ls -l +tar -cJf ../%{jdkportablesourcesarchive -- ""} --transform "s|^|%{jdkportablesourcesname -- ""}/|" openjdk nss* +sha256sum ../%{jdkportablesourcesarchive -- ""} > ../%{jdkportablesourcesarchive -- ""}.sha256sum %if %{build_hotspot_first} # Build a fresh libjvm.so first and use it to bootstrap @@ -1352,8 +1365,6 @@ for suffix in %{build_loop} ; do for image in %{jdkimage} %{jreimage} ; do imagePath=${top_dir_abs_main_build_path}/images/${image} installjdk ${imagePath} - mkdir -p ${imagePath}/ext_stubs/${icon_stub_path} - cp -av ${abs_src_path}/${icon_stub_path}/*.png ${imagePath}/ext_stubs/${icon_stub_path} done # Check debug symbols were built into the dynamic libraries; todo, why it passes in JDK only? debugcheckjdk ${top_dir_abs_main_build_path}/images/%{jdkimage} @@ -1427,6 +1438,10 @@ for suffix in %{build_loop} ; do done # end of release / debug cycle loop %install +mkdir -p $RPM_BUILD_ROOT%{_jvmdir} +mv ../%{jdkportablesourcesarchive -- ""} $RPM_BUILD_ROOT%{_jvmdir}/ +mv ../%{jdkportablesourcesarchive -- ""}.sha256sum $RPM_BUILD_ROOT%{_jvmdir}/ + for suffix in %{build_loop} ; do top_dir_abs_main_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{main_suffix}} @@ -1436,7 +1451,6 @@ top_dir_abs_main_build_path=$(pwd)/%{buildoutputdir -- ${suffix}%{main_suffix}} else nameSuffix=`echo "$suffix"| sed s/-/./` fi - mkdir -p $RPM_BUILD_ROOT%{_jvmdir} mv ../%{jdkportablearchive -- "$nameSuffix"} $RPM_BUILD_ROOT%{_jvmdir}/ mv ../%{jdkportablearchive -- "$nameSuffix"}.sha256sum $RPM_BUILD_ROOT%{_jvmdir}/ mv ../%{jreportablearchive -- "$nameSuffix"} $RPM_BUILD_ROOT%{_jvmdir}/ @@ -1608,7 +1622,17 @@ done %endif %endif +%files sources +%{_jvmdir}/%{jdkportablesourcesarchive -- %%{nil}} +%{_jvmdir}/%{jdkportablesourcesarchive -- %%{nil}}.sha256sum +%license %{unpacked_licenses}/%{jdkportablearchive -- %%{nil}} + %changelog +* Fri Apr 14 2023 Jiri Vanek - 1:20.0.0.0.36-3.rolling +- introduced noarch src archive +- replaced nasty handling of icons. +- needed for icons and src reference for rpms (debuginfo, src subpkg) + * Mon Apr 10 2023 Andrew Hughes - 1:20.0.0.0.36-2.rolling - Complete update to OpenJDK 20 - Update NEWS