From 285ca493bd361174b21f281e3f9f827f638ac187 Mon Sep 17 00:00:00 2001 From: Albert Uchytil Date: Apr 11 2014 14:57:37 +0000 Subject: Minor changes and bugfixes - scl_prefix now accepts a parameter to improve inter-collection dependencies (#1028953) - modified the behavior of debuginfo generation process - changed command description in scl man pages - moved macros.scl to %{_rpmconfigdir}/macros.d directory - added conditional dependencies for main metapackage - scl_vendor macro gets automatically written into the macros.{scl}-config file --- diff --git a/0003-Modified-the-behavior-of-debuginfo-generation-proces.patch b/0003-Modified-the-behavior-of-debuginfo-generation-proces.patch new file mode 100644 index 0000000..c3f1dc4 --- /dev/null +++ b/0003-Modified-the-behavior-of-debuginfo-generation-proces.patch @@ -0,0 +1,100 @@ +From 1a276e247244fdbba739a09ac93765914499dd25 Mon Sep 17 00:00:00 2001 +From: Albert Uchytil +Date: Wed, 2 Apr 2014 17:00:04 +0200 +Subject: [PATCH] Modified the behavior of debuginfo generation process + +* Removed debug package definition from macros.scl +* Added %scl_debug macro, that adds correct dependencies to debug packages. +* Added conditional definition of __debug_package macro + This change was required, to enable correct behavior for the case, when + the %debug_package is set to %{nil}. Moved %scl_debug macro call in front + of __os_install_post definition, to achieve desired macro expansion +* Removed automatic creation of debuginfo metapackage. +--- + macros.scl | 51 ++++++++++++++++++++++++++++++++++----------------- + 1 file changed, 34 insertions(+), 17 deletions(-) + +diff --git a/macros.scl b/macros.scl +index 8663198094404f7ef852aeeb84f47c4ed679a724..598b806ab16ca3bdbff8dbf3a6c6ba1ebd2aafd6 100644 +--- a/macros.scl ++++ b/macros.scl +@@ -3,6 +3,39 @@ + # Copyright (C) 2012 Red Hat, Inc. + # Written by Jindrich Novy . + ++%scl_debug() %{expand: ++%define old_debug %{lua:print(rpm.expand("%{debug_package}"):len())} ++%global debug_package %{expand: ++%if "%{?old_debug}" == "0" ++ %{expand: %{nil}} ++%else ++%if "%{?scl}%{!?scl:0}" == "%{pkg_name}" ++ %{expand: %{nil}} ++%else ++%ifnarch noarch ++%package debuginfo ++Summary: Debug information for package %{name} ++Group: Development/Debug ++AutoReqProv: 0 ++Requires: %scl_runtime ++Provides: scl-package(%scl) ++%{lua: ++ debuginfo=tonumber(rpm.expand("%{old_debug}")) ++ if debuginfo > 0 then ++ rpm.define("__debug_package 1") ++ end ++} ++%description debuginfo ++This package provides debug information for package %{name}. ++Debug information is useful when developing applications that use this ++package or when debugging this package. ++%files debuginfo -f debugfiles.list ++%defattr(-,root,root) ++%endif ++%endif ++%endif ++%{nil}}} ++ + %scl_package() %{expand:%{!?_root_prefix: + %global pkg_name %1 + %global scl_name %{scl} +@@ -43,6 +75,7 @@ + %global _docdir %{_datadir}/doc + %global _defaultdocdir %{_docdir} + %global scl_pkg_name %{scl}-%{pkg_name} ++%scl_debug + %global __os_install_post %{expand: + /usr/lib/rpm/brp-scl-compress %{_scl_root} + %{!?__debug_package:/usr/lib/rpm/redhat/brp-strip %{__strip} +@@ -53,23 +86,6 @@ + /usr/lib/rpm/redhat/brp-python-hardlink + %{!?__jar_repack:/usr/lib/rpm/redhat/brp-java-repack-jars} + %{nil}} +-%global debug_package %{expand: +-%ifnarch noarch +-%global __debug_package 1 +-%package debuginfo +-Summary: Debug information for package %{name} +-Group: Development/Debug +-AutoReqProv: 0 +-Requires: %scl_runtime +-Provides: scl-package(%scl) +-%description debuginfo +-This package provides debug information for package %{name}. +-Debug information is useful when developing applications that use this +-package or when debugging this package. +-%files debuginfo -f debugfiles.list +-%defattr(-,root,root) +-%endif +-%{nil}} + Requires: %scl_runtime + } + BuildRequires: scl-utils-build +@@ -79,3 +95,4 @@ Provides: scl-package(%scl) + + %scl_require() %{_scl_prefix}/%1/enable, %1 + %scl_require_package() %1-%2 ++ +-- +1.9.0 + diff --git a/0004-Changed-scl_prefix-macro-that-now-accepts-a-parameter.patch b/0004-Changed-scl_prefix-macro-that-now-accepts-a-parameter.patch new file mode 100644 index 0000000..381d069 --- /dev/null +++ b/0004-Changed-scl_prefix-macro-that-now-accepts-a-parameter.patch @@ -0,0 +1,30 @@ +From e92630c3e6ef2253b44429680910912671589680 Mon Sep 17 00:00:00 2001 +From: Albert Uchytil +Date: Fri, 11 Apr 2014 13:24:30 +0200 +Subject: [PATCH] Changed scl_prefix macro, that now accepts a parameter. Users + can now easily override default scl_prefix in some cases. (#1057634) + +--- + macros.scl | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/macros.scl b/macros.scl +index 45ae422705517017eaa7a20d57a15f82495350ea..f4685137301ca3a979b71ac1a934134b666837a5 100644 +--- a/macros.scl ++++ b/macros.scl +@@ -35,10 +35,11 @@ package or when debugging this package. + %endif + %{nil}}} + ++%scl_prefix() %{?scl:%(if [ "%1" = "%%1" ]; then echo "%{scl}-"; else echo "%1-"; fi)}%{!?scl:%{nil}} ++ + %scl_package() %{expand:%{!?_root_prefix: + %global pkg_name %1 + %global scl_name %{scl} +-%global scl_prefix %{scl}- + %global scl_runtime %{scl}-runtime + %{!?scl_basedir: %global scl_basedir /opt} + %{!?scl_vendor: %global scl_vendor rh} +-- +1.9.0 + diff --git a/0005-Changed-command-description-in-scl-man-pages.patch b/0005-Changed-command-description-in-scl-man-pages.patch new file mode 100644 index 0000000..0d6fa68 --- /dev/null +++ b/0005-Changed-command-description-in-scl-man-pages.patch @@ -0,0 +1,30 @@ +From ff24defdb7ff7e0460785202933ac024f273c82f Mon Sep 17 00:00:00 2001 +From: Albert Uchytil +Date: Tue, 8 Apr 2014 14:22:29 +0200 +Subject: [PATCH] Changed description in scl man pages + +--- + scl.1 | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/scl.1 b/scl.1 +index cbefc44a7d539370065912021a62a39844a51f80..51f32e4db0f18ca6a97231ad641f78ae88806e13 100644 +--- a/scl.1 ++++ b/scl.1 +@@ -25,9 +25,10 @@ to update search paths, etc. + One can enable more Software Collections if needed and therefore one can use multiple + collections which are enabled by the left-right order as present on \fBscl\fP command-line. + .PP +-\fI\fR is an arbitrary command or set of commands to execute within the Software +-Collection environment enabled. Control is returned back to the caller with the original +-environment as soon as the command finishes. If \fI\fR is '-' (dash) then it is ++\fI\fR marks specified Software Collections as enabled. Executes the script, ++which is expected to set proper environment. Executes the \fI\fR. ++Control is returned back to the caller with the original environment as soon ++as the command finishes. If \fI\fR is '-' (dash) then it is + read from the standard input. + .PP + Note: if you use \fI\fR consisting of multiple arguments, you either need to +-- +1.9.0 + diff --git a/0006-Added-conditional-dependencies-for-main-metapackage.patch b/0006-Added-conditional-dependencies-for-main-metapackage.patch new file mode 100644 index 0000000..f6d2965 --- /dev/null +++ b/0006-Added-conditional-dependencies-for-main-metapackage.patch @@ -0,0 +1,30 @@ +From f6d35d3406cf57024d3fe44d308d7e11527e3551 Mon Sep 17 00:00:00 2001 +From: Albert Uchytil +Date: Wed, 2 Apr 2014 17:01:41 +0200 +Subject: [PATCH] Added conditional dependencies for main metapackage + +--- + macros.scl | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/macros.scl b/macros.scl +index ac83ae302ce971c4564c107bd0a1c769db6465e2..cd19c593002eb1c823a12b24df43196374086120 100644 +--- a/macros.scl ++++ b/macros.scl +@@ -53,10 +53,12 @@ + /usr/lib/rpm/redhat/brp-python-hardlink + %{!?__jar_repack:/usr/lib/rpm/redhat/brp-java-repack-jars} + %{nil}} +-Requires: %scl_runtime + } + BuildRequires: scl-utils-build ++%if "%{?scl}%{!?scl:0}" == "%{pkg_name}" + Provides: scl-package(%scl) ++Requires: %scl_runtime ++%endif + %{?scl_package_override:%scl_package_override} + } + +-- +1.8.5.3 + diff --git a/macros.scl-filesystem b/macros.scl-filesystem index 92f3dfe..7d703c0 100644 --- a/macros.scl-filesystem +++ b/macros.scl-filesystem @@ -103,6 +103,10 @@ echo -n '%' > %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config cat >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config << EOF scl %scl EOF +echo -n '%' >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config +cat >> %{buildroot}%{_root_sysconfdir}/rpm/macros.%{scl}-config << EOF +scl_vendor %{scl_vendor} +EOF cat >> %{buildroot}%{_root_sysconfdir}/scl/prefixes/%{scl} << EOF %_scl_prefix EOF diff --git a/scl-utils.spec b/scl-utils.spec index 3548129..b141ee5 100644 --- a/scl-utils.spec +++ b/scl-utils.spec @@ -1,7 +1,7 @@ Summary: Utilities for alternative packaging Name: scl-utils Version: 20140127 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ Group: Applications/File URL: https://fedorahosted.org/SoftwareCollections/ @@ -9,6 +9,10 @@ Source0: https://fedorahosted.org/released/scl-utils/%{name}-%{version}.tar.gz Source1: macros.scl-filesystem Patch0: 0001-Added-Provides-scl-package-scl-for-metapackage-and-b.patch Patch1: 0002-Added-scl-runtime-requirement-for-all-subpackages.patch +Patch2: 0003-Modified-the-behavior-of-debuginfo-generation-proces.patch +Patch3: 0004-Changed-scl_prefix-macro-that-now-accepts-a-parameter.patch +Patch4: 0005-Changed-command-description-in-scl-man-pages.patch +Patch5: 0006-Added-conditional-dependencies-for-main-metapackage.patch Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %description @@ -27,6 +31,10 @@ Essential RPM build macros for alternative packaging. %setup -q %patch0 -p1 -b .provides-scl-package %patch1 -p1 -b .requires-scl-package +%patch2 -p1 -b .scl-prefix-old +%patch3 -p1 -b .debuginfo-old +%patch4 -p1 -b .man-pages-old +%patch5 -p1 -b .conditional-deps %build make %{?_smp_mflags} CFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_LD_FLAGS" @@ -74,6 +82,15 @@ rm -rf %buildroot %{_rpmconfigdir}/brp-scl-python-bytecompile %changelog +* Fri Apr 11 2014 Albert Uchytil - 20140127-4 +- reverted "-f filelist" modification +- added %scl_vendor macro to macros.%{scl}-config file (#1084095) +- %scl_prefix now accepts a parameter to improve + inter-collection dependencies (#1028953) +- modified the behavior of debuginfo generation process +- changed command description in scl man pages +- added conditional dependencies for main metapackage + * Tue Mar 18 2014 Albert Uchytil - 20140127-3 - added scl-runtime requirement for all subpackages