Alexey Tourbin
b842bf5b4a
files.c (addFile): file path must match buildroot
...
Sample %files section:
%files
/../gcc-common-buildroot
Old behaviour:
$ rpm -bb test.spec
...
Wrote: /home/at/RPM/RPMS/athlon/test-1.0-alt1.athlon.rpm
$ rpm -qlvp /home/at/RPM/RPMS/athlon/test-1.0-alt1.athlon.rpm |head
drwxr-xr-x 2 root root 0 Mar 22 22:20 ldroot
-rw-r--r-- 1 root root 73 Mar 22 22:20 ldroot/.files:gcc-c++-common
-rw-r--r-- 1 root root 508 Mar 22 22:20 ldroot/.files:gcc-common
-rw-r--r-- 1 root root 147 Mar 22 22:20 ldroot/.files:gcc-fortran-common
-rw-r--r-- 1 root root 348 Mar 22 22:20 ldroot/.files:gcc-java-common
-rw-r--r-- 1 root root 66 Mar 22 22:20 ldroot/.files:gcc-treelang-common
-rw-r--r-- 1 root root 117 Mar 22 22:20 ldroot/.files:libgcj-common
-rwxr-xr-x 1 root root 80 Mar 22 22:20 ldroot/.post:gcc-common
-rwxr-xr-x 1 root root 124 Mar 22 22:20 ldroot/.preun:gcc-common
drwxr-xr-x 2 root root 0 Mar 22 22:20 ldroot/etc
$
New behaviour:
$ LD_LIBRARY_PATH=... rpm -bl test.spec
Processing files: test-1.0-alt1
error: File doesn't match buildroot (/tmp/.private/at/test-buildroot): /tmp/.private/at/gcc-common-buildroot
RPM build errors:
File doesn't match buildroot (/tmp/.private/at/test-buildroot): /tmp/.private/at/gcc-common-buildroot
$
2008-03-25 04:09:52 +03:00
Alexey Tourbin
d1ff200f04
Revert "build/parseScript.c: opitimize out RPMSENSE_INTERP dependencies on /bin/sh"
...
/bin/sh dependency is still there, because scriptlets are written
with "!#/bin/sh" first line, and bulk dependency optimization was
removed. However, having RPMSENSE_INTERP flag is still good idea --
maybe rpm can check that RPMSENSE_INTERP file is actually X_OK
or something.
This reverts commit 5224b77cbdd2200ab040124101a132e92531f134.
2008-03-17 20:58:55 +03:00
63003fbeb9
Fix typos
2008-02-25 20:07:05 +00:00
Alexey Tourbin
5224b77cbd
build/parseScript.c: opitimize out RPMSENSE_INTERP dependencies on /bin/sh
2008-02-01 16:07:59 +03:00
Alexey Tourbin
d98ede246c
build/files.c: fixed thinko: (pkg->fileList == NULL) means no %files section at all, not empty %files list
2008-01-26 19:26:25 +03:00
Alexey Tourbin
87d7449617
build/files.c: scriptlet dependencies need their flags
...
When I write e.g. 'Requires(pre): /usr/bin/perl' in specfile,
I get the following flags:
$ perl -le 'printf "%16b\n", 576'
1001000000
$
which is RPMSENSE_PREREQ|RPMSENSE_SCRIPT_PRE.
Before this change, I do not specify what flags were generated
for scriptlet dependencies. After this change, autogenerated
flags for %pre-script are:
$ perl -le 'printf "%16b\n", 16960'
100001001000000
$
which is RPMSENSE_PREREQ|RPMSENSE_SCRIPT_PRE|RPMSENSE_FIND_REQUIRES.
I belive it looks sane now.
PS:
alias rpmdump='perl -MData::Dumper -MRPM::Header -e "print Dumper(RPM::Header->new(@ARGV))"'
2008-01-25 23:17:01 +03:00
Alexey Tourbin
4516457883
build/files.c (generateDepends,processBinaryFiles): do %pre/%post/... scriptlet dependencies
2008-01-25 21:27:01 +03:00
Alexey Tourbin
2e8a4a1722
build/files.c: new function hasSomeInstScript(), for diagnostics
2008-01-25 20:49:02 +03:00
Alexey Tourbin
1ceb28dc6e
build/files.c: new function saveInstScript(), to find dependencies in %pre/%post/... scriptlets
...
This is based on the first part of my eariler patch:
https://bugzilla.altlinux.org/show_bug.cgi?id=7409
2008-01-25 20:48:28 +03:00
Alexey Tourbin
8119ee01ac
reqprov.c (addReqProv): eliminate dependencies on the package name
...
perl-base will no longer require 'perl-base >= 1:5.7.3'.
2007-11-23 10:59:39 +03:00
Alexey Tourbin
dee7e797ef
reqprov.c (addReqProv): eliminate dependencies on packaged files
...
Note that this works only for automatic dependencies, because file list
is not ready when specfile dependencies are added. This is okay.
Also note that this will optimize out directory-like dependencies
if the package owns the directory. This is yet okay, but this is
a bit more subtle point.
2007-11-22 16:48:30 +03:00
Alexey Tourbin
92093bf1f0
reqprov.c (addReqProv): prepare for more self-requires elimination
2007-11-22 15:28:16 +03:00
86ad8ff400
build/expression.c (doPrimary): Read closing parenthesis, patch from Michael Schroeder
2007-02-23 00:05:37 +00:00
5ed9fe36e1
build/parsePrep.c: Change %setup to enable -q option by default, introduce -v option to make %setup as verbose as before this change.
2006-11-19 00:24:59 +00:00
1e771d2a5a
build/parsePrep.c: Change %patch to be more verbose by default, introduce -s option to make %patch as silent as before this change ( #10261 ).
2006-11-19 00:21:38 +00:00
bbddd38759
Removed const from getBuildTime().
2006-05-15 04:54:03 +04:00
df61ee0b9e
Include local headers.
2006-05-15 03:26:57 +04:00
8787ee5d55
Fixed "type qualifiers ignored on function return type" issue.
2006-05-15 02:48:59 +04:00
ed45223b24
Ignore RPMTAG_BUILDROOT completely.
2006-04-03 16:41:43 +00:00
f4d4d3fe83
parseSpec: do not delete _target_cpu macro in PART_BUILDARCHITECTURES parser
2006-02-24 02:40:09 +00:00
b397ca0085
Ignore RPMTAG_BUILDROOT completely.
2006-01-11 13:53:32 +00:00
7c858e2594
parseSpec: in preprocess mode, allow undefined macros
2005-10-25 11:01:42 +00:00
c653aa8345
copyNextLine: set rpmSetBuiltinMacroLookupFailedOK for comments
2005-10-12 23:55:57 +00:00
b23ff9b127
implemented rpmSetBuiltinMacroLookupFailedOK
2005-10-12 23:35:17 +00:00
26dfd3df04
revision 2.55
...
date: 2004/04/08 20:27:53; author: niemeyer; state: Exp; lines: +2 -1
Implemented multiline macro support.
2005-10-10 14:59:14 +00:00
d1c90ba20f
revision 2.98
...
date: 2004/04/08 20:27:53; author: niemeyer; state: Exp; lines: +41 -3
Implemented multiline macro support.
2005-10-10 12:57:57 +00:00
78ab7cf4b4
revision 2.95
...
date: 2003/05/15 13:53:41; author: jbj; state: Exp; lines: +3 -1
- fix nested %if handling
2005-10-10 12:50:41 +00:00
7668e35c2e
added docdir to tags_files_list
2005-10-10 12:26:34 +00:00
45504c22d2
disabled check for undefined macros in %prep, %build, %install and %clean
2005-10-06 21:06:44 +00:00
d04814401c
Fixed rpmBuiltinMacroLookup support
2005-10-06 20:31:10 +00:00
019f77ade6
introduced _allow_undefined_macros
2005-10-06 19:15:36 +00:00
35877f4306
fixed spacing
2005-10-06 18:21:40 +00:00
0b1e0e9ee4
Implemented rpmBuiltinMacroLookup support
2005-10-06 18:21:26 +00:00
17dd47e199
fixed rpmExpand() usage in generateDepends()a
2005-10-06 18:20:37 +00:00
c0a2a76a04
fix readLine() usage
2005-10-06 15:24:35 +00:00
9fcb008b58
fixed rpmExpand() usage
2005-10-06 01:21:27 +00:00
a2f087de09
fixed rpmExpand() usage in fillOutMainPackage()
2005-10-05 23:42:30 +00:00
6a14cbc258
fixed rpmExpand usage
2005-09-29 17:10:24 +00:00
4086557633
fixed rpmExpand usage
2005-09-29 16:01:17 +00:00
8fe647ebd6
corrected rpmExpand usage
2005-09-29 15:50:56 +00:00
ce8ad9b9f0
fix rpmExpandNumeric handling
2005-09-29 15:46:13 +00:00
b59b7dcd44
if AutoReq is disabled, do not add automatic interp deps
2005-08-17 13:48:55 +00:00
a90ad7ec38
parseRCPOT: better error reporting
2004-04-25 10:34:53 +00:00
b098983ecf
implemented %_deps_optimization support
...
addReqProv: implemented old "provided requires" optimization
2004-01-29 13:46:42 +00:00
e6100cca84
indent
2004-01-29 12:57:54 +00:00
a56e2cad60
addReqProv: enhanced duplication elimination algorithm
2004-01-27 14:54:15 +00:00
1ab810455b
fixes in duplicates detection algorithm
2004-01-27 12:45:26 +00:00
84c595d9ef
parseRCPOT: tokens must not contain '%<=>' symbols - it's common error
2004-01-27 10:56:42 +00:00
f3023c5d3b
printDepMsg: enhanced output format a bit
2004-01-27 10:53:38 +00:00
aab4974613
duplicates detection algorithm rewritten
2004-01-26 18:01:37 +00:00