Commit Graph

350 Commits

Author SHA1 Message Date
Alexey Tourbin
b7041d73ef 4.0.4-alt77.M40.12
- Updated %config algorithm to avoid unnecessary *.rpmnew, *.rpmsave,
  and *.rpmorig files (credits: Panu Matilainen, Tomas Mraz).
  + If new package keeps the same config file, updating the file on disk
    is skipped (rhbz#194246).  This provides limited support for replacing
    config files with custom symbolic links.
  + If pre-existing file is the same as the one being installed for
    the first time, backup action is suppress (rhbz#128622).
  + Backup action is also disabled but for regular files and symlinks.
2009-03-09 20:55:33 +03:00
Alexey Tourbin
eb23ad4080 4.0.4-alt95.M41.12
- Fixed /usr/lib/rpm/ ownership for new sisyphus_check.
2009-03-09 19:11:11 +03:00
Alexey Tourbin
4a4f1c6522 4.0.4-alt77.M40.11
- Fixed /usr/lib/rpm/ ownership for new sisyphus_check.
2009-03-09 19:04:45 +03:00
Alexey Tourbin
c9a4295dbb fixed /usr/lib/rpm/ ownership for new sisyphus_check 2009-03-09 18:50:02 +03:00
Alexey Tourbin
267a7e8f33 4.0.4-alt77.M40.10
- Renamed rpm-python subpackage to python-module-rpm (ldv).
2009-03-09 18:42:00 +03:00
de7bee4901 Rename rpm-python subpackage to python-module-rpm
(cherry picked from commit 067f680afd)
2009-03-09 18:30:39 +03:00
Alexey Tourbin
4790122f71 4.0.4-alt77.M40.9
- backported changes from branch 4.1:
- psm.c: in syslog messages, discriminate between no epoch and zero epoch
- transaction.c: updated conflict algorithm for overlapping paths:
  exact st_mode and uid/gid match is required; md5 check is skipped
  for %ghost files
- psm.c: fixed chown attempts for src.rpm introduced [with previous change]
- rpmpopt (--changelog): remove extra newline after %{CHANGELOGNAME} (jbj)
2009-03-08 20:28:48 +03:00
e2e69f01ba 4.0.4-alt96.16
- platform.in: Imported %makeinstall_std macro from rpm-build-perl.
- 0common-files.req.list: Removed /etc/tex-fonts.d directory.
2009-02-25 00:52:01 +00:00
Alexey Tourbin
f6f5889885 4.0.4-alt96.15
- Added buildreq ignore rule for /usr/lib/rpm/macros.d/*
2008-12-16 03:37:08 +03:00
cd51b35b4d 4.0.4-alt96.14
- psm.c (psmTriggerPosttrans):
  Handle null "transaction file info" pointer properly (closes: #18079).
2008-12-12 23:49:46 +00:00
d3f50cc1a7 4.0.4-alt95.M41.11
- psm.c (psmTriggerPosttrans):
  Handle null "transaction file info" pointer properly (closes: #18079).
- GROUPS: Added "Graphical desktop/Sugar" (closes: #18094).
2008-12-09 15:16:44 +00:00
12a1de9df3 4.0.4-alt77.M40.8
- psm.c (psmTriggerPosttrans):
  Handle null "transaction file info" pointer properly (closes: #18079).
2008-12-09 15:04:21 +00:00
6da521cf76 4.0.4-alt95.M41.10
- Disabled automatic rpmlib(PosttransFiletriggers) requirements for M41.
2008-11-25 15:37:37 +00:00
f8fb514ad6 Revert "rpmlib.req: generate rpmlib(PosttransFiletriggers) dependency for /usr/lib/rpm/*.filetrigger"
Disable automatic rpmlib(PosttransFiletriggers) requirements for M41.

This reverts commit 3a9f159460.
2008-11-25 15:37:14 +00:00
6346113d89 4.0.4-alt96.13
- Introduced /usr/lib/rpm/macros.d/ (closes: #17948).
- GROUPS: Added "Graphical desktop/Sugar" (closes: #17950).
- platform.in:
  + Marked update menu, window managers registration, scrollkeeper
    database synchronization and ldconfig macros as obsolete.
  + Removed obsolete %%php_version and %%php_release macros (Alexey Gladkov).
  + Added %_rpmmacrosdir macro.
2008-11-22 22:24:02 +00:00
d975fc66c1 Introduce /usr/lib/rpm/macros.d/ (ALT#17948) 2008-11-21 00:25:45 +00:00
Alexey Tourbin
82d6fbdfe6 4.0.4-alt95.M41.8
- fixed crash in previous release (Dmitry V. Levin)
2008-11-13 07:12:42 +03:00
Alexey Tourbin
0c166f10f0 4.0.4-alt77.M40.7
- fixed crash in previous release (Dmitry V. Levin)
2008-11-13 06:47:19 +03:00
0a48c3206e 4.0.4-alt96.12
- verify-elf: Removed no longer needed workaround for PIE executables on ARM.
- 0common-files.req.list: Added /etc/sysconfig/limits.d (service).
- librpm, librpmbuild: Removed %%post/%%postun scripts.
- librpm: Fixed crash bug in saveTriggerFiles().
2008-11-13 00:19:52 +00:00
a66f0346f8 Remove ldconfig invocations from %post/%postun scripts 2008-11-12 23:07:24 +00:00
Alexey Tourbin
3c75eaca60 4.0.4-alt96.11
- implemented post-transaction filetriggers, loosely based on filetriggers.patch
  from Mandriva Linux (see %_rpmlibdir/posttrans-filetriggers for details)
- implemented %_rpmlibdir/0ldconfig.filetrigger, so that packages with
  shared libraries need not to invoke ldconfig(1) in they %%post-scriptlets
- rpmlib.req: automatically generate rpmlib(PosttransFiletriggers) dependency
  for packages which provide %_rpmlibdir/*.filetrigger programs
2008-11-13 01:01:07 +03:00
Alexey Tourbin
a033d58bd1 4.0.4-alt95.M41.7
- implemented post-transaction filetriggers, loosely based on filetriggers.patch
  from Mandriva Linux (see %_rpmlibdir/posttrans-filetriggers for details)
- implemented %_rpmlibdir/0ldconfig.filetrigger, so that packages with
  shared libraries need not to invoke ldconfig(1) in they %%post-scriptlets
- rpmlib.req: automatically generate rpmlib(PosttransFiletriggers) dependency
  for packages which provide %_rpmlibdir/*.filetrigger programs
2008-11-13 00:58:22 +03:00
Alexey Tourbin
3a9f159460 rpmlib.req: generate rpmlib(PosttransFiletriggers) dependency for /usr/lib/rpm/*.filetrigger 2008-11-13 00:57:57 +03:00
Alexey Tourbin
4acd4051a0 4.0.4-alt95.M41.6+
- implemented post-transaction filetriggers, loosely based on filetriggers.patch
  from Mandriva Linux (see %_rpmlibdir/posttrans-filetriggers for details)
- implemented %_rpmlibdir/0ldconfig.filetrigger, so that packages with
  shared libraries need not to invoke ldconfig(1) in they %%post-scriptlets
2008-11-13 00:55:42 +03:00
Alexey Tourbin
5b8a602896 4.0.4-alt77.M40.6
- implemented post-transaction filetriggers, loosely based on filetriggers.patch
  from Mandriva Linux (see %_rpmlibdir/posttrans-filetriggers for details)
- implemented %_rpmlibdir/0ldconfig.filetrigger, so that packages with
  shared libraries need not to invoke ldconfig(1) in they %%post-scriptlets
2008-11-13 00:54:40 +03:00
Alexey Tourbin
639f3382c9 0ldconfig.filetrigger: new script 2008-11-12 05:10:51 +03:00
Alexey Tourbin
4ada155008 implemented posttrans filetriggers, vaguely based on Mandriva patch 2008-11-12 05:10:11 +03:00
Alexey Tourbin
ffb79de5d1 4.0.4-alt96.10
- improved install/upgrade package reordering (in tsort algorithm,
  changed "presentation order" to "chainsaw order")
2008-11-10 05:46:39 +03:00
Alexey Tourbin
b51c799f6b 4.0.4-alt95.M41.6
- improved install/upgrade package reordering (in tsort algorithm,
  changed "presentation order" to "chainsaw order")
2008-11-10 05:44:13 +03:00
Alexey Tourbin
0d6020f2bf 4.0.4-alt77.M40.5
- improved install/upgrade package reordering (in tsort algorithm,
  changed "presentation order" to "chainsaw order")
2008-11-10 05:30:09 +03:00
b7fb34d018 4.0.4-alt96.9
- rpmevrcmp, rpmvercmp: Imported from rpm-utils (closes: #13627).
- GROUPS: Added "Development/Tools" (ALT#17550).
2008-10-28 00:42:07 +00:00
ba75c265e9 Import rpm*cmp utilities from rpm-utils (ALT#13627) 2008-10-28 00:28:56 +00:00
5e322cbea6 4.0.4-alt96.8
- Fixed build with new toolchain.
- brp-cleanup: Remove .gitignore files as well.
- fixup-libraries: Enhance recognition of ELF executables.
2008-10-20 16:21:29 +00:00
Alexey Tourbin
e4ee0c28f8 4.0.4-alt96.7
- build/reqprov.c: when folding duplicate dependencies, Requires(pre)
  or Requires(post) should not opimitze out bare Requires
- build/files.c: execute find-requires before find-scriptlet-requires
- 0common-files.req.list: added /etc/rc.d/init.d (service)
2008-10-06 10:00:15 +04:00
Alexey Tourbin
4f75dd558d 4.0.4-alt95.M41.5
- build/reqprov.c: when folding duplicate dependencies, Requires(pre)
  or Requires(post) should not opimitze out bare Requires
- build/files.c: execute find-requires before find-scriptlet-requires
- 0common-files.req.list: added /etc/rc.d/init.d (service)
2008-10-06 09:57:01 +04:00
eb2eb2a974 4.0.4-alt96.6
- build/parsePrep.c (doUntar): Remove "-L" option from "unzip" invocation
  (Igor Vlasenko; closes: ALT#17407).
2008-10-02 16:08:46 +00:00
Alexey Tourbin
0d54c4a6f0 4.0.4-alt95.M41.4+
- build/reqprov.c: when folding duplicate dependencies, Requires(pre)
  or Requires(post) should not opimitze out bare Requires
2008-09-22 18:56:46 +00:00
Alexey Tourbin
216ac45267 4.0.4-alt77.M40.4
- build/reqprov.c: when folding duplicate dependencies, Requires(pre)
  or Requires(post) should not opimitze out bare Requires
2008-09-22 18:52:58 +00:00
Alexey Tourbin
794a50719d 4.0.4-alt96.5
- build/spec.c: don't allow multiple definition of PatchX or SourceX
  (Jindrich Novy, rhbz#458261, rhbz#458260)
2008-09-16 11:11:47 +04:00
Alexey Tourbin
f444e26e8e 4.0.4-alt95.M41.4
- build/spec.c: don't allow multiple definition of PatchX or SourceX
  (Jindrich Novy, rhbz#458261, rhbz#458260)
2008-09-16 11:09:57 +04:00
Alexey Tourbin
b81db19611 4.0.4-alt77.M40.3
- build/spec.c: don't allow multiple definition of PatchX or SourceX
  (Jindrich Novy, rhbz#458261, rhbz#458260)
2008-09-16 11:02:21 +04:00
Alexey Tourbin
fc4b584b3d 4.0.4-alt96.4
- shebang.req: check for trailing <CR> in interpreter path or name;
  also, validate argc, since neither execve(2) nor env(1) split arguments
2008-09-14 13:20:11 +04:00
Alexey Tourbin
c9b90976f3 4.0.4-alt95.M41.3
- shebang.req: check for trailing <CR> in interpreter path or name;
  also, validate argc, since neither execve(2) nor env(1) split arguments
2008-09-14 13:18:14 +04:00
1e5972d448 4.0.4-alt96.3
- find-lang: Updated usage (Slava Semushin; closes: ALT#15492).
- GROUPS: Added "Development/Erlang" (ALT#16691).
2008-08-29 13:54:55 +00:00
Kirill A. Shutemov
1b07454c4c 4.0.4-alt96.2
- add support of armv5tel and fix armv5tejl
2008-08-29 01:09:41 +03:00
Alexey Tourbin
18e824516b 4.0.4-alt96.1
- find-package: updated check for file path components being alternatives
2008-08-20 00:06:43 +04:00
Alexey Tourbin
fc4a3e85ed 4.0.4-alt95.M41.2
- find-package: updated check for file path components being alternatives
2008-08-20 00:00:10 +04:00
c8694a9dd7 4.0.4-alt95.M41.1
- %_rpmlibdir/macros: enabled gzip payload compression (w9.gzdio) by default.
2008-07-29 16:29:01 +00:00
Alexey Tourbin
eb4af40306 4.0.4-alt96
- lib.req: use CanonPath() to deal with RPATH like $ORIGIN/../lib
- fixup-{libtool,pkgconfig}: quote substitution text (Dmitry V. Levin, #11437)
- pdeath_execute.c: remove X_OK check, use execvp(3)
- rpm: in %post-script, remove /var/cache/apt/*.bin
2008-07-20 16:31:19 +04:00
b1b00af474 4.0.4-alt77.M40.2
- spec: In %post-script, removed /var/cache/apt/*.bin (Alexey Tourbin).
- pdeath_execute.c: Removed X_OK check, use execvp(3) (Alexey Tourbin).
- fixup-libtool, fixup-pkgconfig: Quote substitution text (Closes: #11437).
- build/files.c: Re-fixed RPMTAG_SIZE calculation (Alexey Tourbin. Closes: #2634).
- parseSpec.c: Fixed duplicating 'rpmbuild -bE' output
  (Kirill Shutemov, Alexey Tourbin. Closes: #5662).
- parsePreamble.c, parseSpec.c: Allow noarch subpackages (Alexey Tourbin).
- rpmrc.c: Added more modern CPU models (Alexey Tourbin, me).
- rpmio.c: Implemented cpio hints for rsyncable_gzwrite() (Alexey Tourbin).
- rpmio.c: Deal with partial rsyncable_gzwrite() return (Alexey Tourbin).
- rpmio.c: Implemented rscynable_gzwrite() (Alexey Tourbin).
- rpmio.c: Introduced rpmGZFILE wrapper for gzdio (Alexey Tourbin).
- scripts/rpm2cpio.sh: Deal with decompressors (Alexey Tourbin).
- spec: Added _binary_payload w9.gzdio (Alexey Tourbin).
- Plugged a memleak in lzclose() (Panu Matilainen).
- Backported LZMA payload compression from SuSE (Alexey Tourbin).
- rpmReadPackageManifest: Fix comments handling.
- files.c (addFile): Check that each intermediate path component
  is a directory (not symlink) (Alexey Tourbin).
- files.c (addFile): File path must be canonical (Alexey Tourbin).
- files.c (addFile): Reassure that file path starts with '/' (Alexey Tourbin).
- files.c (addFile): File path must match buildroot (Alexey Tourbin).
- spec: Removed 'BuildConflicts: rpm-devel' (Alexey Tourbin).
- relative: Fixed potential NULL dereference (Closes: #14067).
- platform.in (%__autoreconf): Added deprecation warning.
- platform.in: Added %warning() macro.
- platform.in: Added %autoreconf macro (Closes: #13925).
- relative.c: Changed to use heap for memory allocation, fix normalize(), cleanup.
- relative.c: Fixed an off-by-one (kind of) error. (Alex Myltsev).
- Added armv5tejl support (Kirill Shutemov).
- rpmrc.in: Removed -fsigned-char from optflags for arm* (Kirill Shutemov).
- Refresh ARM support (Kirill Shutemov).
- Do not check STACK entry in ARM ELF files (Kirill Shutemov).
- More %_target_platform tweaks: cleanup build_os filter; initialize
  %_gnueabi; replace %_gnu with %_gnueabi in %_target_platform.
- %_gnu appended to %_target_platform (Kirill Shutemov).
2008-07-08 14:45:31 +00:00
Alexey Tourbin
5165ed5fd0 spec: in %post-script, remove /var/cache/apt/*.bin
Note that I exepect pdeath_execute to use execvp(3).
2008-07-08 14:39:34 +00:00
Alexey Tourbin
b44bb8cb15 spec: in %post-script, remove /var/cache/apt/*.bin
Note that I exepect pdeath_execute to use execvp(3).
2008-07-07 06:15:21 +04:00
Alexey Tourbin
ba650c669c 4.0.4-alt95
- build/files.c: re-fixed RPMTAG_SIZE calculation (cf. #2634)
- files.req: implemented modular /usr/lib/rpm/*-files.req.list,
  for dependencies on directories
2008-06-24 14:07:31 +04:00
Alexey Tourbin
c4f579077e files.req: modular /usr/lib/rpm/*-files.req.list with longest match 2008-06-16 13:05:37 +04:00
Alexey Tourbin
85bb55e8dd spec: forgot to mention `rpmbuild -bE' fix in alt94 changelog entry 2008-06-15 06:36:00 +04:00
Alexey Tourbin
5435ccd10b 4.0.4-alt94
- %_rpmlibdir/macros: enabled LZMA payload compression (w2.lzdio) by default
- parsePreamble.c, parseSpec.c: allow "BuildArch: noarch" subpackages
- psm.c: fixed chown attempts for src.rpm introduced in alt93
- psm.c: also, when installing src.rpm, drop suid/sgid bits
- rpmrc.c: recognize new Intel CPUs (Dmitry V. Levin)
- rpmrc.c: classify SSE2-capable Intel CPUs as "pentium4"
- find-package: corrected host-system lookup for commands
2008-06-15 01:02:21 +04:00
Alexey Tourbin
d0eac5c97f 4.0.4-alt93
- rpmio.c: implemented rsyncable gzdio compression
- rpmio.c: applied SUSE patches for LZMA payload compression
  and decompression (LZMA compression disabled by default)
- transaction.c: updated conflict algorithm for overlapping paths:
  exact st_mode and uid/gid match is required; md5 check is skipped
  for %%ghost files
- build/files.c, build/parseReqs.c: allow versioned path dependencies
- build/files.c: added /usr/share/gtk-doc/html to hardcoded docDirs list
- build/files.c (isDoc): fixed docDirs match algorithm (Panu Matilainen)
- scripts, macros: use `chmod -c' where appropriate (verbosity change)
- rpmpopt (--setugids): use `chown -c -h' (no dereference)
- rpmpopt (--changelog): remove extra newline after %%{CHANGELOGNAME} (jbj)
- brp-cleanup: remove .cvsignore files (dottedmag)
- doc/manual: spelling corrections (jbj)
2008-06-04 18:04:15 +04:00
Alexey Tourbin
4a557675fc Merge branch 'altlinux-4.0' 2008-05-30 22:25:55 +04:00
Alexey Tourbin
6f575ecded spec: _binary_payload w9.gzdio 2008-05-24 13:58:47 +04:00
Alexey Tourbin
9814453966 backported LZMA payload compression from SuSE 2008-05-24 13:47:41 +04:00
Alexey Tourbin
fdca55d311 spec: workaround config.rpath problem
(cherry picked from commit d78d0be4fd)
2008-05-24 12:28:57 +04:00
7870fe7dc5 4.0.4-alt92
- shebang.req: Do not read the whole script (Alexey Tourbin).
- rpmReadPackageManifest: Fixed comments handling.
2008-04-08 15:36:51 +00:00
Alexey Tourbin
b81a3b6b75 4.0.4-alt91
- build/files.c: check if the same files are packaged into a few subpackages
2008-03-31 06:30:33 +04:00
Alexey Tourbin
88cad0c2a0 4.0.4-alt90
- reverted the rest of dependency optimization
- stripped redundant librpm-devel dependencies
- build/files.c: fixed a few possibilities of invalid cpio entries, including
  `dir/.*' construct in %%files section (which globs `dir/.' and `dir/..',
  and thus should not be used in specfiles)
- lib/psm.c: in syslog messages, discriminate between no epoch and zero epoch
2008-03-30 05:57:16 +04:00
Alexey Tourbin
f44d07e126 spec: mention %_tmppath in 4.0.4-alt87 changelog entry 2008-03-30 05:53:28 +04:00
Alexey Tourbin
5ec676a259 spec: librpm-devel should require only libpopt-devel 2008-03-30 04:41:55 +04:00
Alexey Tourbin
a0e8d41006 Merge branch 'altlinux-4.0' 2008-03-30 03:00:44 +04:00
Alexey Tourbin
845a750521 spec: removed 'BuildConflicts: rpm-devel' (checked with buildreq) 2008-03-25 03:27:37 +03:00
Alexey Tourbin
c0e8d34d90 spec: buildreq 2008-03-25 03:27:14 +03:00
f4371cc2a2 4.0.4-alt89
- platform.in: Changed several macro definitions to avoid extra
  autodependencies when used in shell scripts.
2008-03-03 17:40:38 +00:00
04fdf89aa4 4.0.4-alt88
- verify-elf: According to information from Kirill Shutemov,
  PIE executables on ARM always contain TEXTREL, so do not check them.
- find-package: Removed bulk dependencies optimization
  introduced in previous release.
- scripts: Replaced redundant paths to basic programs
  with program names.
2008-02-29 12:30:30 +00:00
0ecfddcdcd Reduce macro abuse in %pre and %post scripts 2008-02-29 12:30:18 +00:00
Alexey Tourbin
cd04e08abc 4.0.4-alt87
- implemented automatic dependencies for %%pre, %%preun, %%post,
  and %%postun scriptlets (#7409)
- find-package: when possible, keep file-level dependencies as is,
  without mapping them to package names
- find-package: relax file-level dependencies on unpackaged directories
- find-package: optimize out bulk dependencies on sh, cat, rm, mv etc.
- build/parseScript.c: optimize out RPMSENSE_INTERP dependencies on /bin/sh
- lib.req: enabled ELF_INTERP dependencies except for standard /lib/ld-linux.so.2
- functions (ValidateBuildRoot): require RPM_BUILD_ROOT path be canonical
2008-02-24 18:55:54 +03:00
Alexey Tourbin
93b2b8bf15 spec: restored 4.0.4-alt84.1 changelog entry 2008-02-23 09:09:31 +03:00
Alexey Tourbin
3b998b2e3c Merge branch 'master' of git.alt:/people/ldv/packages/rpm 2008-02-23 08:23:37 +03:00
b740527bf1 4.0.4-alt86
- pam.req: Added substack support.
- Renamed rpm-python subpackage to python-module-rpm.
2008-02-22 22:38:13 +00:00
067f680afd Rename rpm-python subpackage to python-module-rpm 2008-02-22 22:38:12 +00:00
Alex V. Myltsev
4db6d078da 4.0.4-alt85
- rpm-python: fix segfaults with Python 2.5.
2008-02-22 23:02:53 +03:00
Alexey Tourbin
b4569b6236 spec (rpm-build): replaced "sh" dependency with "bash >= 0:3.1.17-alt4" 2008-02-02 01:33:35 +03:00
Alexey Tourbin
20323e4f17 spec: added explicit dependency on /bin/sh 2008-02-01 16:11:13 +03:00
Alexey Tourbin
b3c6a8452e implemented /usr/lib/rpm/find-scriptlet-requires 2008-01-25 22:01:51 +03:00
4159b61462 4.0.4-alt84
- lib.req:
  + Fixed awk script for ldd output (at@).
  + Fixed file-level dependencies output (at@).
- relative: Fixed potential NULL dereference introduced by -alt81 (#14067).
2008-01-18 20:10:11 +00:00
5a68a4046a 4.0.4-alt83
- platform.in:
  + Added %%warning macro.
  + Added %%autoreconf macro to replace %%__autoreconf;
  + Added deprecation warning to %%__autoreconf macro.
2008-01-15 19:20:22 +00:00
Alexey Tourbin
376b5c359c 4.0.4-alt82
- reqprov.c (addReqProv): implemented optimization of "self-requires"
  dependencies on packaged files
- find-package, shell.req, pkgconfiglib.req, symlinks.req: do not
  completely ignore dependencies on files which are under RPM_BUILD_ROOT;
  that is, emit "file-level" dependencies which will be optimized out by
  addReqProv() within a single subpackage, but will protect from unpackaged
  files between subpackages; works best with apt-utils >= 0.5.15lorg2-alt17
- lib.req: try to emit file-level dependencies instead of "soname-level"
  dependencies on private libraries (see git log for details); this can
  largely reduce the need for %%add_findprov_lib_path
2008-01-14 23:58:51 +03:00
Alexey Tourbin
d78d0be4fd spec: workaround config.rpath problem 2008-01-14 23:56:12 +03:00
Alexey Tourbin
abc6cb4242 4.0.4-alt82
- reqprov.c (addReqProv): implemented optimization of "self-requires"
  dependencies on packaged files
- find-package, shell.req, pkgconfiglib.req, symlinks.req: do not
  completely ignore dependencies on files which are under RPM_BUILD_ROOT;
  that is, emit "file-level" dependencies which will be optimized out by
  addReqProv() within a single subpackage, but will protect from unpackaged
  files between subpackages; works best with apt-utils >= 0.5.15lorg2-alt17
- lib.req: try to emit file-level dependencies instead of "soname-level"
  dependencies on private libraries (see git log for details); this can
  largely reduce the need for %%add_findprov_lib_path which is "public
  provides for private libraries"
2007-12-03 15:04:24 +03:00
Alexey Tourbin
c80e1ac8cb spec: explicitly require recent alternatives with alternatives.prov 2007-12-03 14:44:13 +03:00
Alexey Tourbin
9feeb5445e 4.0.4-alt81
- symlinks.req: do only one single step of symlink resolution;
  find-package (FindByPath): check each path component for alternatives;
  this fixes the case of e.g. dependency on /usr/share/libtool/config.sub,
  where '/usr/share/libtool -> libtool-1.5/' is an alternative;
  we now stop at alternative directory and simply yield the dependency
  on /usr/share/libtool, instead of libtool_1.5 (see also #13374)
- moved /usr/lib/rpm/functions and /usr/lib/rpm/find-package from rpm-build
  to rpm, to relax e.g. rpm-build-mono dependencies
- relative.c: various fixes by Alex V. Myltsev and Dmitry V. Levin
2007-11-21 17:49:23 +03:00
Alexey Tourbin
2cf4bcc171 spec: ignore functions and find-package dependencies 2007-11-21 14:53:30 +03:00
Alexey Tourbin
c9d79d6f16 moved functions and find-package from rpm-build to rpm, added .provides.sh
This will allow to relax rpm-build-* dependencies, hopefully without adding
new essential dependencies to rpm (note that rpm already depends on sh and
coreutils; now this also includes grep, and possibly should include sed,
awk, and gzip).

Consider mono-mcs package, which is mono C# compiler.  Recently I added
dependency on rpm-build-mono to this package, to enable automatic support
for mono dependencies whenever mono compiler is used.  Now the problem
is that rpm-build-mono depends on rpm-build (via /usr/lib/rpm/functions),
and rpm-build in turn requires a lot of packages, e.g. gcc and autotools,
for the purpose of populating base build environment.

To put it another way, the problem is that it is impossible to install
mono compiler (with automatic support for mono dependencies) without also
installing gcc and stuff, which is roughly 100M of unrelated packages.

This seems like a minor problem to me, since every "devel" package (including
compilers) can conventionally require base build environment.  However,
Alexander Bokovoy argues that school kids desperately need mono-mcs compiler
on their desktops without gcc and another stuff from the base build environment!

The upshot is that possibly we want to relax rpm-build-* dependencies,
so that those "support for dependencies" packages do not require
full-fledged rpm-build.  The easiest way to accomplish this is to
move /usr/lib/rpm/functions from rpm-build to rpm package.  I also
choose to move /usr/lib/rpm/find-package as well, along with making
/usr/lib/rpm/.provides.sh, so that rpm-build-* packages depend on
something like /usr/lib/rpm(Fatal), not just rpm.
2007-11-21 14:14:55 +03:00
745b1ae3e0 4.0.4-alt80
- Merged ARM support changes made by Kirill Shutemov.
- Minor scripts/* cleanup.
2007-11-10 20:47:04 +00:00
Alexey Tourbin
35ddf662d8 4.0.4-alt79
- shell.req: implemented strong self-requires elimination within
  a package; if ANY shell script defines function "foo", dependencies
  on "foo" are discarded in all shell scripts throughout the package;
  a warning is issued if e.g. /usr/bin/foo executable is available
- pkgconfiglib.req: new dependency generator for "Libs" field in *.pc
  files; maps e.g. "-lfoo" -> /usr/lib/libfoo.so -> libfoo-devel
2007-10-29 17:16:14 +03:00
Alexey Tourbin
e247bb88db enabled pkgconfiglib.req 2007-10-29 14:21:47 +03:00
Alexey Tourbin
3f1e70716d pkgconfiglib.req: use "pkg-config --disable-recursion" to get libs and libdirs 2007-10-29 12:29:04 +03:00
Alexey Tourbin
318e056f29 4.0.4-alt78
- implemented modular subsystem for find-requires and find-provides;
  there's no separate doc yet, except for my protva2007-ru-short.pdf;
  see also git changelog, especially commit 9717c128
- improved /usr/lib/rpm/find-package algorithms
- shell.req: non-executable scripts are now processed as well as executable
  ones; also, more shebang variants are recognized, e.g. "#!/usr/bin/env bash"
- symlinks.req: new dependency generator for external symbolic links
- pkgconfig.req: pkg-config(1) errors no longer silently ignored
- rpm-build: decoupled rpm-build-tcl from the base build environment
2007-09-30 15:05:06 +04:00
Alexey Tourbin
7ee459ab6b pkgconfiglib.req: removed
'pkg-config --libs' seems to deploy dependencies recursively,
which is what I did not expect.

$ grep Requires pango.pc
Requires: glib-2.0,gobject-2.0,gmodule-no-export-2.0
$ grep Lib pango.pc
Libs: -lpango-1.0 -lm
$ pkg-config --libs-only-l pango.pc
-lpango-1.0 -lm -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
$

I need some time to devise a better implementation.
2007-09-30 14:59:22 +04:00
Alexey Tourbin
3309458461 4.0.4-alt78
- implemented modular subsystem for find-requires and find-provides;
  there's no separate doc yet, except for my protva2007-ru-short.pdf;
  see also git changelog, especially commit 9717c128
- improved /usr/lib/rpm/find-package algorithms
- shell.req: non-executable scripts are now processed as well as executable
  ones; also, more shebang variants are recognized, e.g. "#!/usr/bin/env bash"
- symlinks.req: new dependency generator for external symbolic links
- pkgconfig.req: pkg-config(1) errors no longer silently ignored
- pkgconfiglib.req: new dependency analyzer for "Libs" field in *.pc files;
  maps e.g. "-lfoo" -> /usr/lib/libfoo.so -> libfoo-devel
2007-09-24 21:44:26 +04:00
Alexey Tourbin
bdbafde580 Merge branch 'altlinux-4.0' of git.alt:/people/ldv/packages/rpm into mod
Also immediately fixup last changelog entry date, to preserve the order.

Conflicts:

	rpm-4_0.spec
	scripts/find-package.in
2007-09-24 21:15:02 +04:00
Alexey Tourbin
385ae84711 spec: rpm-build: decoupled rpm-build-tcl
There's been some discussion on the list as to which rpm-build-*
packages rpm-build should depend on.

The upshot is this:

1) The language should be widely used, and its scripts should
be found in a number of packages not specific to the language
(e.g. packages which do not require %name-devel for build).

2) rpm-build-%name scripts, along with finding dependencies,
should have the effect of syntax check.  This is what makes
them beneficial for all packages, and this is the reason why
rpm-build should pick up such rpm-build-%name package.

Now I think that Tcl fails both points.  Current tcl.req analyzer
simply cannot process Tcl scripts reliably, only Tcl modules.
But Tcl modules are certainly specific to the Tcl language,
and building Tcl modules apparently should involve tcl-devel.
I have just added rpm-build-tcl dependency to tcl-devel.

If too many Tcl packages break because of this change,
which is not likely, I can re-add rpm-build-tcl dependency here.
However, this will also enroll tcl into the base build system.
2007-09-24 16:49:54 +04:00
Alexey Tourbin
b653a847dc spec: do not package Specfile.pm
This Specfile.pm file is not usable anyway -- its path should match
at least */RPM/Specfile.pm.  And now we have perl-RPM-Specfile package.
2007-09-24 16:06:12 +04:00