Blame SPECS/pkgconf.spec

61dc36
# pkgconf acts as pkgconfig for Fedora and EL8+
61dc36
%if (0%{?rhel} && 0%{?rhel} <= 7)
61dc36
%bcond_with pkgconfig_compat
61dc36
%else
61dc36
%bcond_without pkgconfig_compat
61dc36
%endif
61dc36
61dc36
%if %{with pkgconfig_compat}
61dc36
%global pkgconfig_ver 0.29.1
61dc36
# For obsoleting pkgconfig
61dc36
%global pkgconfig_verrel %{pkgconfig_ver}-3
61dc36
%global pkgconfig_evr 1:%{pkgconfig_verrel}
61dc36
%endif
61dc36
61dc36
# Search path for pc files for pkgconf
61dc36
%global pkgconf_libdirs %{_libdir}/pkgconfig:%{_datadir}/pkgconfig
61dc36
61dc36
Name:           pkgconf
61dc36
Version:        1.4.2
61dc36
Release:        1%{?dist}
61dc36
Summary:        Package compiler and linker metadata toolkit
61dc36
61dc36
License:        ISC
61dc36
URL:            http://pkgconf.org/
61dc36
Source0:        https://distfiles.dereferenced.org/%{name}/%{name}-%{version}.tar.xz
61dc36
61dc36
# Simple wrapper script to offer platform versions of pkgconfig
61dc36
Source1:        platform-pkg-config.in
61dc36
61dc36
BuildRequires:  gcc
61dc36
BuildRequires:  make
61dc36
61dc36
# For regenerating autotools scripts
61dc36
BuildRequires:  autoconf
61dc36
BuildRequires:  automake
61dc36
BuildRequires:  libtool
61dc36
61dc36
# For unit tests
61dc36
BuildRequires:  %{_bindir}/kyua
61dc36
BuildRequires:  atf-tests
61dc36
61dc36
# pkgconf uses libpkgconf internally
61dc36
Requires:       lib%{name}%{?_isa} = %{version}-%{release}
61dc36
61dc36
# This is defined within pkgconf code as a virtual pc (just like in pkgconfig)
61dc36
Provides:       pkgconfig(pkgconf) = %{version}
61dc36
61dc36
%description
61dc36
pkgconf is a program which helps to configure compiler and linker flags
61dc36
for development frameworks. It is similar to pkg-config from freedesktop.org
61dc36
and handles .pc files in a similar manner as pkg-config.
61dc36
61dc36
%package -n lib%{name}
61dc36
Summary:        Backend library for %{name}
61dc36
61dc36
%description -n lib%{name}
61dc36
This package provides libraries for applications to use the functionality
61dc36
of %{name}.
61dc36
61dc36
%package -n lib%{name}-devel
61dc36
Summary:        Development files for lib%{name}
61dc36
Requires:       lib%{name}%{?_isa} = %{version}-%{release}
61dc36
61dc36
%description -n lib%{name}-devel
61dc36
This package provides files necessary for developing applications
61dc36
to use functionality provided by %{name}.
61dc36
61dc36
%if %{with pkgconfig_compat}
61dc36
%package m4
61dc36
Summary:        m4 macros for pkgconf
61dc36
License:        GPLv2+ with exceptions
61dc36
BuildArch:      noarch
61dc36
# Ensure that it Conflicts and Obsoletes pkgconfig since it contains content formerly from it
61dc36
Conflicts:      pkgconfig < %{pkgconfig_evr}
61dc36
Obsoletes:      pkgconfig < %{pkgconfig_evr}
61dc36
61dc36
%description m4
61dc36
This package includes m4 macros used to support PKG_CHECK_MODULES
61dc36
when using pkgconf with autotools.
61dc36
61dc36
%package pkg-config
61dc36
Summary:        %{name} shim to provide /usr/bin/pkg-config
61dc36
# Ensure that it Conflicts with pkgconfig and is considered "better"
61dc36
Conflicts:      pkgconfig < %{pkgconfig_evr}
61dc36
Obsoletes:      pkgconfig < %{pkgconfig_evr}
61dc36
Provides:       pkgconfig = %{pkgconfig_evr}
61dc36
Provides:       pkgconfig%{?_isa} = %{pkgconfig_evr}
61dc36
# This is in the original pkgconfig package, set to match output from pkgconf
61dc36
Provides:       pkgconfig(pkg-config) = %{version}
61dc36
# Generic pkg-config Provides for those who might use alternate package name
61dc36
Provides:       pkg-config = %{pkgconfig_verrel}
61dc36
Provides:       pkg-config%{?_isa} = %{pkgconfig_verrel}
61dc36
Requires:       %{name}%{?_isa} = %{version}-%{release}
61dc36
Requires:       %{name}-m4 = %{version}-%{release}
61dc36
61dc36
%description pkg-config
61dc36
This package provides the shim links for pkgconf to be automatically
61dc36
used in place of pkgconfig. This ensures that pkgconf is used as
61dc36
the system provider of pkg-config.
61dc36
61dc36
%endif
61dc36
61dc36
61dc36
%prep
61dc36
%autosetup -p1
61dc36
61dc36
%build
61dc36
autoreconf -fiv
61dc36
%configure --disable-static \
61dc36
           --with-pkg-config-dir=%{pkgconf_libdirs} \
61dc36
           --with-system-includedir=%{_includedir} \
61dc36
           --with-system-libdir=%{_libdir}
61dc36
61dc36
%make_build V=1
61dc36
61dc36
61dc36
%check
61dc36
make check
61dc36
61dc36
61dc36
%install
61dc36
%make_install
61dc36
61dc36
find %{buildroot} -name '*.la' -print -delete
61dc36
61dc36
%if %{with pkgconfig_compat}
61dc36
install -pm 0755 %{SOURCE1} %{buildroot}%{_bindir}/%{_target_platform}-pkg-config
61dc36
61dc36
sed -e "s|@TARGET_PLATFORM@|%{_target_platform}|" \
61dc36
    -e "s|@PKGCONF_LIBDIRS@|%{pkgconf_libdirs}|" \
61dc36
    -e "s|@PKGCONF_SYSLIBDIR@|%{_libdir}|" \
61dc36
    -e "s|@PKGCONF_SYSINCDIR@|%{_includedir}|" \
61dc36
    -i %{buildroot}%{_bindir}/%{_target_platform}-pkg-config
61dc36
61dc36
ln -sf pkgconf %{buildroot}%{_bindir}/pkg-config
61dc36
61dc36
# I don't have a better way to deal with this...
61dc36
cp -a %{buildroot}%{_mandir}/man1/pkgconf.1 %{buildroot}%{_mandir}/man1/pkg-config.1
61dc36
61dc36
mkdir -p %{buildroot}%{_libdir}/pkgconfig
61dc36
mkdir -p %{buildroot}%{_datadir}/pkgconfig
61dc36
%endif
61dc36
61dc36
# If we're not providing pkgconfig override & compat
61dc36
# we should not provide the pkgconfig m4 macros
61dc36
%if ! %{with pkgconfig_compat}
61dc36
rm -rf %{buildroot}%{_datadir}/aclocal
61dc36
%endif
61dc36
61dc36
%ldconfig_scriptlets -n lib%{name}
61dc36
61dc36
%files
61dc36
%license COPYING
61dc36
%doc README.md AUTHORS NEWS
61dc36
%{_bindir}/%{name}
61dc36
%{_mandir}/man1/%{name}.1*
61dc36
%{_mandir}/man5/pc.5*
61dc36
61dc36
%files -n lib%{name}
61dc36
%license COPYING
61dc36
%{_libdir}/lib%{name}*.so.*
61dc36
61dc36
%files -n lib%{name}-devel
61dc36
%{_libdir}/lib%{name}*.so
61dc36
%{_includedir}/%{name}/
61dc36
%{_libdir}/pkgconfig/lib%{name}.pc
61dc36
61dc36
%if %{with pkgconfig_compat}
61dc36
%files m4
61dc36
%{_datadir}/aclocal/pkg.m4
61dc36
%{_mandir}/man7/pkg.m4.7*
61dc36
61dc36
%files pkg-config
61dc36
%{_bindir}/pkg-config
61dc36
%{_bindir}/%{_target_platform}-pkg-config
61dc36
%{_mandir}/man1/pkg-config.1*
61dc36
%dir %{_libdir}/pkgconfig
61dc36
%dir %{_datadir}/pkgconfig
61dc36
%endif
61dc36
61dc36
%changelog
61dc36
* Sat Mar 31 2018 Neal Gompa <ngompa13@gmail.com> - 1.4.2-1
61dc36
- Update to 1.4.2
61dc36
- Drop conditionals for old Fedora releases
61dc36
61dc36
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.1-3
61dc36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
61dc36
61dc36
* Wed Jan 31 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.4.1-2
61dc36
- Switch to %%ldconfig_scriptlets
61dc36
61dc36
* Tue Jan 23 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.4.1-1
61dc36
- Update to 1.4.1
61dc36
61dc36
* Sun Jan 07 2018 Neal Gompa <ngompa13@gmail.com> - 1.4.0-2
61dc36
- Move pc(5) manpage to main pkgconf package
61dc36
61dc36
* Fri Jan 05 2018 Neal Gompa <ngompa13@gmail.com> - 1.4.0-1
61dc36
- Update to 1.4.0
61dc36
61dc36
* Fri Jan 05 2018 Neal Gompa <ngompa13@gmail.com> - 1.3.90-2
61dc36
- Add simple wrapper to support platform-specific pkg-config paths (#1513810)
61dc36
61dc36
* Tue Dec 19 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.90-1
61dc36
- Update to 1.3.90
61dc36
61dc36
* Sun Dec 10 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.12-1
61dc36
- Update to 1.3.12
61dc36
61dc36
* Wed Nov 01 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.10-1
61dc36
- Update to 1.3.10
61dc36
61dc36
* Wed Sep 20 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.9-1
61dc36
- Update to 1.3.9
61dc36
61dc36
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.8-3
61dc36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
61dc36
61dc36
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.8-2
61dc36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
61dc36
61dc36
* Mon Jul 17 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.8-1
61dc36
- Update to 1.3.8
61dc36
61dc36
* Sun May 28 2017 Neal Gompa <ngompa13@gmail.com> - 1.3.7-1
61dc36
- Update to 1.3.7
61dc36
61dc36
* Wed May 10 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.6-1
61dc36
- Update to 1.3.6
61dc36
61dc36
* Tue Apr 04 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.5-1
61dc36
- Update to 1.3.5
61dc36
61dc36
* Thu Mar 30 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.4-1
61dc36
- Update to 1.3.4
61dc36
61dc36
* Mon Mar 27 2017 Neal Gompa <ngompa13@gmail.com> - 1.3.3-1
61dc36
- Update to 1.3.3
61dc36
61dc36
* Fri Mar 24 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.3.2-1
61dc36
- Update to 1.3.2
61dc36
61dc36
* Sat Feb 25 2017 Neal Gompa <ngompa13@gmail.com> - 1.3.0-1
61dc36
- Update to 1.3.0
61dc36
61dc36
* Tue Feb 07 2017 Neal Gompa <ngompa13@gmail.com> - 1.2.2-2
61dc36
- Backport patch from upstream to remove extraneous whitespace (#1419685)
61dc36
61dc36
* Fri Feb 03 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1.2.2-1
61dc36
- Update to 1.2.2
61dc36
61dc36
* Thu Feb 02 2017 Neal Gompa <ngompa13@gmail.com> - 1.2.1-3
61dc36
- Fix Obsoletes and Conflicts to prevent self-conflicts
61dc36
61dc36
* Thu Feb 02 2017 Neal Gompa <ngompa13@gmail.com> - 1.2.1-2
61dc36
- Adjust Obsoletes and Conflicts to use inclusive range
61dc36
61dc36
* Tue Jan 24 2017 Igor Gnatenko <ignatenko@redhat.com> - 1.2.1-1
61dc36
- Update to 1.2.1
61dc36
61dc36
* Sat Jan 21 2017 Neal Gompa <ngompa13@gmail.com> - 1.2.0-1
61dc36
- Upgrade to 1.2.0
61dc36
- Enable pkgconf-pkg-config and pkgconf-m4 for F26+
61dc36
61dc36
* Sat Jan 14 2017 Neal Gompa <ngompa13@gmail.com> - 1.1.1-3
61dc36
- Add missing pkgconfig() Provides for virtual .pc files defined in pkgconf
61dc36
61dc36
* Fri Jan 13 2017 Neal Gompa <ngompa13@gmail.com> - 1.1.1-2
61dc36
- Add missing Epoch to pkgconfig Provides/Conflicts for pkgconf-pkg-config
61dc36
- Add copy of pkgconf.1 as pkg-config.1 in pkgconf-pkg-config
61dc36
61dc36
* Sat Jan 07 2017 Neal Gompa <ngompa13@gmail.com> - 1.1.1-1
61dc36
- Upgrade to 1.1.1
61dc36
- Add missing directories to pkgconf-pkg-config
61dc36
61dc36
* Sun Jan 01 2017 Neal Gompa <ngompa13@gmail.com> - 1.1.0-3
61dc36
- Fix up spec per package review (#1409332)
61dc36
61dc36
* Sat Dec 31 2016 Neal Gompa <ngompa13@gmail.com> - 1.1.0-2
61dc36
- Rework package to not generate conflict with pkgconfig
61dc36
- Disable pkgconf-m4 and pkgconf-pkg-config by default
61dc36
61dc36
* Sat Dec 31 2016 Neal Gompa <ngompa13@gmail.com> - 1.1.0-1
61dc36
- Upgrade to 1.1.0
61dc36
- Enable libpkgconf libraries now that they are ABI+API stable
61dc36
61dc36
* Tue Oct 25 2016 Neal Gompa <ngompa13@gmail.com> - 1.0.2-1
61dc36
- Upgrade to 1.0.2
61dc36
61dc36
* Fri Aug 26 2016 Neal Gompa <ngompa13@gmail.com> - 1.0.1-2
61dc36
- Add subpackage for providing pkg-config shim
61dc36
- Enable tests
61dc36
61dc36
* Thu Aug 25 2016 Neal Gompa <ngompa13@gmail.com> - 1.0.1-1
61dc36
- Upgrade to 1.0.1
61dc36
61dc36
* Wed Aug 24 2016 Neal Gompa <ngompa13@gmail.com> - 1-1
61dc36
- Initial packaging