summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjbj <devnull@localhost>2002-12-09 17:22:55 +0000
committerjbj <devnull@localhost>2002-12-09 17:22:55 +0000
commit971303be3e56cd9123c2a4d0b8897052ad2a6658 (patch)
tree07fa8f8259f415b19418d45bfda414f271a6bdf6
parent1b650d04abfc1fc38ffb08121752b235ad8a4bd8 (diff)
downloadlibrpm-tizen-971303be3e56cd9123c2a4d0b8897052ad2a6658.tar.gz
librpm-tizen-971303be3e56cd9123c2a4d0b8897052ad2a6658.tar.bz2
librpm-tizen-971303be3e56cd9123c2a4d0b8897052ad2a6658.zip
- don't generate dependencies unless execute bit is set.
- enable internal automagic dependency generation as default. CVS patchset: 5926 CVS date: 2002/12/09 17:22:55
-rw-r--r--CHANGES2
-rw-r--r--build/rpmfc.c11
-rw-r--r--macros.in9
-rw-r--r--python/rpmbc-py.c2
-rw-r--r--rpm.spec.in6
5 files changed, 23 insertions, 7 deletions
diff --git a/CHANGES b/CHANGES
index 31da7a37c..a865a0711 100644
--- a/CHANGES
+++ b/CHANGES
@@ -41,6 +41,8 @@
- use usrlib_LTLIBRARIES to install directly in /usr/lib64 instead.
- late rpmts reference causes premature free (#78862).
- internal automagic dependency generation (disabled for now).
+ - don't generate dependencies unless execute bit is set.
+ - enable internal automagic dependency generation as default.
4.0.4 -> 4.1:
- loosely wire beecrypt library into rpm.
diff --git a/build/rpmfc.c b/build/rpmfc.c
index 5995aa827..768496798 100644
--- a/build/rpmfc.c
+++ b/build/rpmfc.c
@@ -962,7 +962,7 @@ int rpmfcApply(rpmfc fc)
const char * N;
const char * EVR;
int_32 Flags;
- rpmfcApplyTbl fcat;
+ struct stat sb, * st = &sb;
unsigned char deptype;
int nddict;
int previx;
@@ -974,6 +974,13 @@ int rpmfcApply(rpmfc fc)
/* Generate package and per-file dependencies. */
for (fc->ix = 0; fc->fn[fc->ix] != NULL; fc->ix++) {
+ rpmfcApplyTbl fcat;
+
+ /* Files with executable bit set only. */
+ if (stat(fc->fn[fc->ix], st) != 0
+ || !(st->st_mode & (S_IXUSR|S_IXGRP|S_IXOTH)))
+ continue;
+
for (fcat = rpmfcApplyTable; fcat->func != NULL; fcat++) {
if (!(fc->fcolor->vals[fc->ix] & fcat->colormask))
/*@innercontinue@*/ continue;
@@ -1324,7 +1331,7 @@ int rpmfcGenerateDepends(const Spec spec, Package pkg)
return 0;
/* If new-fangled dependency generation is disabled ... */
- if (!rpmExpandNumeric("%{?_classify_file_types}")) {
+ if (!rpmExpandNumeric("%{?_use_internal_dependency_generator}")) {
/* ... then generate dependencies using %{__find_requires} et al. */
rc = rpmfcGenerateDependsHelper(spec, pkg, fi);
/*@-noeffect@*/
diff --git a/macros.in b/macros.in
index 431bc6fa7..0be342cf1 100644
--- a/macros.in
+++ b/macros.in
@@ -1,7 +1,7 @@
#/*! \page config_macros Default configuration: @RPMCONFIGDIR@/macros
# \verbatim
#
-# $Id: macros.in,v 1.128 2002/11/20 15:13:03 jbj Exp $
+# $Id: macros.in,v 1.129 2002/12/09 17:22:55 jbj Exp $
#
# This is a global RPM configuration file. All changes made here will
# be lost when the rpm package is upgraded. Any per-system configuration
@@ -107,6 +107,7 @@
# The location of the rpm database file(s) after "rpm --rebuilddb".
%_dbpath_rebuild %{_dbpath}
+#
# Path to script that creates debug symbols in a /usr/lib/debug
# shadow tree.
%__debug_install_post \
@@ -129,17 +130,19 @@ package or when debugging this package. \
%_defaultdocdir %{_usr}/doc
+# Use internal dependency generator rather than external
+# find-provides/find-requires)?
+%_use_internal_dependency_generator 1
+
# Path to scripts to autogenerate package dependencies.
%__find_provides @RPMCONFIGDIR@/rpmdeps --provides
%__find_requires @RPMCONFIGDIR@/rpmdeps --requires
-#%__find_prereq ???
#%__find_conflicts ???
#%__find_obsoletes ???
%__perl_provides @RPMCONFIGDIR@/perl.prov
%__perl_requires @RPMCONFIGDIR@/perl.req
-#
# fixowner, fixgroup, and fixperms are run at the end of hardcoded setup
# These macros are necessary only for legacy compatibility, and have moved
# to per-platform macro configuration (i.e. @RPMCONFIGDIR@/<arch>-<os>/macros)
diff --git a/python/rpmbc-py.c b/python/rpmbc-py.c
index cf2246a6c..2a3a5d704 100644
--- a/python/rpmbc-py.c
+++ b/python/rpmbc-py.c
@@ -60,7 +60,7 @@ if (_rpmbc_debug)
fprintf(stderr, "*** rpmbc_dealloc(%p)\n", s);
mp32nfree(&s->n);
- PyMem_DEL(s);
+ PyObject_DEL(s);
}
static int
diff --git a/rpm.spec.in b/rpm.spec.in
index 172a4e6b5..9d6ceedb6 100644
--- a/rpm.spec.in
+++ b/rpm.spec.in
@@ -16,7 +16,7 @@ Name: rpm
%define version @VERSION@
Version: %{version}
%{expand: %%define rpm_version %{version}}
-Release: 0.19
+Release: 0.20
Group: System Environment/Base
Source: ftp://ftp.rpm.org/pub/rpm/dist/rpm-4.0.x/rpm-%{rpm_version}.tar.gz
Copyright: GPL
@@ -459,6 +459,10 @@ exit 0
%{__prefix}/include/popt.h
%changelog
+* Mon Dec 9 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.20
+- don't generate dependencies unless execute bit is set.
+- enable internal automagic dependency generation as default.
+
* Sat Dec 7 2002 Jeff Johnson <jbj@redhat.com> 4.2-0.19
- resurrect AutoReq: and AutoProv:.