Changeset 1023


Ignore:
Timestamp:
Feb 23, 2017, 12:08:34 AM (8 years ago)
Author:
dmik
Message:

spec: rpm: Release version 4.13.0-11.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • spec/trunk/SPECS/rpm.spec

    r1005 r1023  
    1 #define svn_url     F:/rd/rpm/rpm/trunk
    2 %define svn_url     http://svn.netlabs.org/repos/rpm/rpm/trunk
    3 %define svn_rev     987
    4 
    5 %define with_sqlite 1
    6 %undefine int_bdb
    7 
    81# build against xz?
    92%bcond_without xz
    10 # sqlite backend is pretty useless
    11 %bcond_with sqlite
    123# just for giggles, option to build with internal Berkeley DB
    134%bcond_with int_bdb
     
    2920Name: rpm
    3021Version: %{rpmver}
    31 Release: 10%{?dist}
     22Release: 11%{?dist}
    3223Group: System Environment/Base
    3324Url: http://www.rpm.org/
    34 Source: %{name}-%{version}%{?svn_rev:-r%{svn_rev}}.zip
     25
     26%scm_source svn http://svn.netlabs.org/repos/rpm/rpm/trunk 1020
    3527
    3628# Partially GPL/LGPL dual-licensed and some bits with BSD
    37 # SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD 
     29# SourceLicense: (GPLv2+ and LGPLv2+ with exceptions) and BSD
    3830License: GPLv2+
    3931
     
    5143Requires: sed
    5244
     45# We need a fork-friendly PR_LoadLibrary on OS/2
     46Requires: nspr >= 4.12.0-2
     47
    5348Provides: rpm-macros-warpin
    5449Provides: rpm-macros-wps
     
    5954BuildRequires: db4-devel
    6055%endif
    61 
    62 # YD because of libcx
    63 Requires: db4 > 4.8.30-6
    6456
    6557%if %{with check}
     
    7567BuildRequires: popt-devel >= 1.10.2
    7668BuildRequires: file-devel
    77 BuildRequires: gettext-devel
     69BuildRequires: gettext-devel gettext-common-devel
    7870BuildRequires: ncurses-devel
    7971BuildRequires: bzip2-devel >= 0.9.0c-2
     
    8577BuildRequires: xz-devel >= 4.999.8
    8678%endif
    87 %if %{with sqlite}
    88 BuildRequires: sqlite-devel
    89 %endif
    90 
    91 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
    9279
    9380%description
     
    180167
    181168%prep
    182 %if %{?svn_rev:%(sh -c 'if test -f "%{_sourcedir}/%{name}-%{version}-r%{svn_rev}.zip" ; then echo 1 ; else echo 0 ; fi')}%{!?svn_rev):0}
    183 %setup -q
    184 %else
    185 %setup -n "%{name}-%{version}" -Tc
    186 svn export %{?svn_rev:-r %{svn_rev}} %{svn_url} . --force
    187 rm -f "%{_sourcedir}/%{name}-%{version}%{?svn_rev:-r%{svn_rev}}.zip"
    188 (cd .. && zip -SrX9 "%{_sourcedir}/%{name}-%{version}%{?svn_rev:-r%{svn_rev}}.zip" "%{name}-%{version}")
    189 %endif
     169%scm_setup
    190170
    191171%if %{with int_bdb}
     
    195175%build
    196176
     177# Make default paths to tools start with /@unixroot on OS/2
     178sed -i \
     179  -e '/AC_PATH_PROGS\?(/ {
     180    s#, \?/usr/#, /@unixroot/usr/# ;
     181    s#, \?/bin/#, /@unixroot/usr/bin/# ;
     182    s#, \?/sbin/#, /@unixroot/usr/sbin/# ;
     183  }' \
     184  configure.ac
     185
     186autoreconf -i -f
     187
     188# Make tools we don't yet have in OS/2 RPMs pathless
     189export ac_cv_path___SSH=ssh
     190
    197191# Using configure macro has some unwanted side-effects on rpm platform
    198192# setup, use the old-fashioned way for now only defining minimal paths.
    199 export RPM_MKDIR="/@unixroot/usr/bin/mkdir.exe"; \
    200 export CONFIG_SITE="/@unixroot/usr/share/config.legacy";
    201 export LDFLAGS="-Zbin-files -Zhigh-mem -Zomf -Zargs-wild -Zargs-resp"; \
    202 export LIBS="-lintl -lurpo -lcx"; \
    203 CFLAGS="%{optflags} -I/@unixroot/usr/include/nss3 -I/@unixroot/usr/include/nspr4" ; \
     193export LDFLAGS="-Zbin-files -Zhigh-mem -Zomf -Zargs-wild -Zargs-resp"
     194export LIBS="-lintl -lcx"
     195export CPPFLAGS="$CPPFLAGS `pkg-config --cflags nss`"
    204196%configure \
    205197    --enable-shared --disable-static --without-lua \
    206198    %{!?with_int_bdb: --with-external-db} \
    207     %{?with_sqlite: --enable-sqlite3} \
    208199    --without-archive \
    209200    --enable-python
    210201
    211 make %{?_smp_mflags}
     202make %{?_smp_mflags} V=1
    212203
    213204%install
     
    216207make DESTDIR="$RPM_BUILD_ROOT" install
    217208
    218 # YD skip pkcconfig requirement
    219 #rm ${RPM_BUILD_ROOT}%{_libdir}/pkgconfig/rpm.pc
     209# Remove OS/2 import libraries from plugins
     210rm ${RPM_BUILD_ROOT}%{_libdir}/rpm-plugins/*_dll.a
     211
     212# No /bin on OS/2
    220213mv ${RPM_BUILD_ROOT}/@unixroot/bin/rpm.exe ${RPM_BUILD_ROOT}%{_bindir}/rpm.exe
    221214
    222 # YD remove elf attr magic
     215# Remove elf attr magic (makes no sense on OS/2)
    223216rm ${RPM_BUILD_ROOT}%{rpmhome}/fileattrs/elf.attr
    224217
    225 # YD remove paths from macros
    226 sed -i 's#.:/usr/bin/#/@unixroot/usr/bin/#gi' ${RPM_BUILD_ROOT}%{rpmhome}/macros
    227 sed -i 's#.:/bin/#/@unixroot/bin/#gi' ${RPM_BUILD_ROOT}%{rpmhome}/macros
    228 sed -i 's#.:/tcpip/bin/#/@bootroot/tcpip/bin/#gi' ${RPM_BUILD_ROOT}%{rpmhome}/macros
    229 sed -i 's#.:/bin/tool/##gi' ${RPM_BUILD_ROOT}%{rpmhome}/macros
    230 
    231 # YD install dll
    232 install -D -m0755 build/.libs/rpmbuild.dll $RPM_BUILD_ROOT/%{_libdir}/
    233 install -D -m0755 build/.libs/rpmbuild.a $RPM_BUILD_ROOT/%{_libdir}/
    234 install -D -m0755 build/.libs/rpmbuild_s.a $RPM_BUILD_ROOT/%{_libdir}/
    235 install -D -m0755 build/.libs/rpmbuild.lib $RPM_BUILD_ROOT/%{_libdir}/
    236 
    237 install -D -m0755 lib/.libs/rpm.dll $RPM_BUILD_ROOT/%{_libdir}/
    238 install -D -m0755 lib/.libs/rpm.a $RPM_BUILD_ROOT/%{_libdir}/
    239 install -D -m0755 lib/.libs/rpm_s.a $RPM_BUILD_ROOT/%{_libdir}/
    240 install -D -m0755 lib/.libs/rpm.lib $RPM_BUILD_ROOT/%{_libdir}/
    241 
    242 install -D -m0755 rpmio/.libs/rpmio.dll $RPM_BUILD_ROOT/%{_libdir}/
    243 install -D -m0755 rpmio/.libs/rpmio.a $RPM_BUILD_ROOT/%{_libdir}/
    244 install -D -m0755 rpmio/.libs/rpmio_s.a $RPM_BUILD_ROOT/%{_libdir}/
    245 install -D -m0755 rpmio/.libs/rpmio.lib $RPM_BUILD_ROOT/%{_libdir}/
     218# Replace OS/2 paths with /@unixroot and /@system_drive
     219sed -i \
     220  -e 's#[^a-zA-Z][a-zA-Z]:/ecs/#/@system_drive/ecs/#gi' \
     221  -e 's#[^a-zA-Z][a-zA-Z]:/tcpip/bin/#/@system_drive/tcpip/bin/#gi' \
     222  ${RPM_BUILD_ROOT}%{rpmhome}/macros
     223
     224# Check there are no paths starting with drive letter or having usr/local
     225! grep -q \
     226  -e '[^a-zA-Z][a-zA-Z]:/' \
     227  -e '/usr/local' \
     228  ${RPM_BUILD_ROOT}%{rpmhome}/macros
     229
     230# Pack OS/2 Rexx scripts
     231for f in wps-object warpin-conflicts ; do
     232  rexx2vio "${RPM_BUILD_ROOT}%{rpmhome}/$f.cmd" "${RPM_BUILD_ROOT}%{rpmhome}/$f.exe"
     233  rm "${RPM_BUILD_ROOT}%{rpmhome}/$f.cmd"
     234  sed -i "s#$f.cmd#$f.exe#gi" ${RPM_BUILD_ROOT}%{rpmhome}/macros
     235done
    246236
    247237# Save list of packages through cron
     
    302292#if [ -x "$dbstat" ]; then
    303293#    if "$dbstat" -e -h %{_var}/lib/rpm 2>&1 | grep -q "doesn't match environment version \| Invalid argument"; then
    304 #        rm -f %{_var}/lib/rpm/__db.* 
     294#        rm -f %{_var}/lib/rpm/__db.*
    305295#    fi
    306296#fi
     
    356346%defattr(-,root,root)
    357347%{_libdir}/rpm*.dll
    358 %{_libdir}/rpm-plugins
     348%dir %{_libdir}/rpm-plugins
     349%{_libdir}/rpm-plugins/*.dll
    359350
    360351%files build
     
    373364%{rpmhome}/brp-*
    374365%{rpmhome}/check-*
    375 #%{rpmhome}/debugedit
    376 #%{rpmhome}/find-debuginfo.sh
     366#{rpmhome}/debugedit
     367#{rpmhome}/find-debuginfo.sh
    377368%{rpmhome}/find-lang.sh
     369%{rpmhome}/find-legacy-runtime.sh
    378370%{rpmhome}/*provides*
    379371%{rpmhome}/*requires*
     
    382374%{rpmhome}/*.req
    383375%{rpmhome}/config.*
    384 %{rpmhome}/mkinstalldirs
    385376%{rpmhome}/macros.p*
    386377%{rpmhome}/fileattrs
     
    394385%_includedir/*
    395386%{_libdir}/rp*[a-z].a
    396 %{_libdir}/rp*[a-z].lib
    397387%{_mandir}/man8/rpmgraph.8*
    398388%{_bindir}/rpmgraph.exe
     
    409399
    410400%changelog
     401* Thu Feb 23 2017 Dmitriy Kuminov <coding@dmik.org> - 4.13.0-11
     402- Use scm_source and friends.
     403- Use OS/2 autoconf instead of pre-generated configure (this also adds ABI suffix to all DLLs).
     404- Restore using fork (that was replaced by popen) to reduce the number of OS/2-specific hacks.
     405- Fix executing popt aliases with --pipe (like rpm -qa --last).
     406- Use common check-files instead of check-files.os2.
     407- Remove URPO dependency.
     408- Fix a lot of compiler warnings.
     409- Fix paths to Tools defined in macros.
     410
    411411* Fri Feb 10 2017 yd <yd@os2power.com> 4.13.0-10
    412412- r978, need scriptlet to run upon uninstall to remove WPS objects. ticket#227.
     
    452452
    453453* Thu Nov 12 2015 yd <yd@os2power.com> 4.8.1-24
    454 - r582, allow use of platform specific macros file. fixes ticket#135. 
     454- r582, allow use of platform specific macros file. fixes ticket#135.
    455455- r581, standardize debug package creation. fixes ticket#134.
    456456
    457457* Wed Feb 25 2015 yd <yd@os2power.com> 4.8.1-23
    458458- r557, backport r536, Make %find_lang macro work on OS/2.
    459 - r558, add support for macros.d directory, fixes ticket#119. 
     459- r558, add support for macros.d directory, fixes ticket#119.
    460460- r536, Make %find_lang macro work on OS/2.
    461461
Note: See TracChangeset for help on using the changeset viewer.