b29c6e2b2d
scripts/pam.*.files: Optimize filename check
2007-11-10 20:47:03 +00:00
5209355a19
scripts/*.req.files: Fix "not executable" wording
2007-11-10 20:47:02 +00:00
66ee80b813
scripts/*.files: Use single quotes for constant strings
2007-11-10 20:47:01 +00:00
5b9096b561
scripts/*.in: s|/usr/lib/rpm/|@RPMCONFIGDIR@/|g
2007-11-10 20:46:59 +00:00
5e023d62c1
scripts/functions: Minor code cleanup
...
Fatal, Verbose, Debug: Use Info().
ValidateBuildRoot: Use single quotes for constant string.
SetupMethods: Do not initialize loop variable. Use "tr -s".
RunMethods: Do not initialize loop variable. Use "echo ''" trick. Cleanup "$@" use.
ArgvFileAction: Do not initialize auto variable.
2007-11-10 20:46:29 +00:00
e6d18b0591
Merge branch 'altlinux-4.0'
2007-11-10 13:27:49 +00:00
Kirill A. Shutemov
06eb5ce9e7
Do not check STACK entry in ARM ELF files
2007-11-10 13:26:44 +00:00
Alexey Tourbin
488d03d395
pkgconfiglib.req: downgraded a few Verbose messages to Debug
2007-10-29 14:55:54 +03:00
Alexey Tourbin
e247bb88db
enabled pkgconfiglib.req
2007-10-29 14:21:47 +03:00
Alexey Tourbin
68bf0157e9
shell.req (ShellReq): still check if executable candidates are available, even in the first pass
...
$ cat test.sh
rsync() { command rsync -vP "$@" ; }
$ scripts/shell.req.in test.sh
shell.req.in: /home/at/git.alt/rpm/test.sh: rsync() is possibly used before its definition
shell.req.in: /home/at/git.alt/rpm/test.sh: rsync() has execuatable candidate: rsync -> rsync (skip)
$
2007-10-29 13:36:36 +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
2ae82b0a11
pkgconfiglib.req: also check *.a static libraries
2007-10-16 14:47:34 +04:00
Alexey Tourbin
02e9558ab6
pkgconfiglib.req: checking -rpath is wrong; back to --libs-only-l and --libs-only-L
...
Contrary to my quick ld(1) interpretation, -rpath option does not really
adjust search path directories.
$ gcc ldtest.c -Wl,-rpath,/usr/lib/gcj-4.1 -ljvm
/usr/bin/ld: cannot find -ljvm
$ gcc ldtest.c -L/usr/lib/gcj-4.1 -ljvm
$
Also note that checking for empty pkg-config output is not realiable:
$ echo "^$(pkg-config --libs-only-l /usr/share/pkgconfig/gtk-doc.pc)\$"
^ $
$
2007-10-16 14:39:28 +04:00
Alexey Tourbin
ae2da665dd
pkgconfiglib.req: set up libs= and libdirs= from $pcLibs; consider -Wl,rpath,...
2007-10-16 13:17:39 +04:00
Alexey Tourbin
195dc1f785
pkgconfiglib.req: use 'gcc -print-search-dirs' to set up gcc_libdirs
2007-10-13 22:35:24 +04:00
Alexey Tourbin
a05a5f4f6b
pkgconfiglib.req: restored
2007-10-13 21:08:29 +04:00
Alexey Tourbin
d601c3e625
shell.req (ShellReqEND): still check if executable candidates are available
...
$ cat test1.sh test2.sh
mail
mail() { :; }
$ scripts/shell.req.in test1.sh test2.sh
shell.req.in: /home/at/git.alt/rpm/test1.sh: mail() is possibly defined in /home/at/git.alt/rpm/test2.sh
shell.req.in: /home/at/git.alt/rpm/test1.sh: mail() has execuatable candidate: mail -> /bin/mail (skip)
$
2007-10-09 17:00:25 +04:00
Alexey Tourbin
3064082899
find-package (FindByName): better check for maybe_function
2007-10-09 12:30:05 +04:00
Alexey Tourbin
638b19576a
shell.req: aded comment to ShellReqEND
2007-10-09 00:51:29 +04:00
Alexey Tourbin
f7e409e475
shell.req: AddReq/AddProv: factored common code
2007-10-09 00:22:42 +04:00
Alexey Tourbin
6ead9f4389
shell.req: updated /.provides.sh code
2007-10-08 02:42:27 +04:00
Alexey Tourbin
a39795104e
shell.req: reworked without temporary files
2007-10-08 02:10:53 +04:00
Alexey Tourbin
d77304d084
shell.req: fixed bug: read does need final newline
2007-10-08 01:22:37 +04:00
Alexey Tourbin
45ac74978f
shell.req: renamed "reqs" varible to "out"
2007-10-08 01:08:33 +04:00
Alexey Tourbin
28b996a376
shell.req: consider removing "function" from alias|builtin check
2007-10-08 01:04:26 +04:00
Alexey Tourbin
28850f17b5
shell.req: fold dups after CleanupRpmRequires
2007-10-08 00:54:23 +04:00
Alexey Tourbin
536241cbbe
shell.req (CleanupRpmRequires): allow e.g. executable(\ls) and executable("ls")
2007-10-08 00:40:15 +04:00
Alexey Tourbin
66df05529b
shell.req: moved alias|builtin check into CleanupRpmRequires
2007-10-08 00:39:03 +04:00
Alexey Tourbin
a90f03397c
shell.req: cleanup and validate "$sh --rpm-requires" output
2007-10-07 23:07:11 +04:00
Alexey Tourbin
4a8997aa6f
pkgconfig.req: paranoid pkg-config output validation
2007-10-07 17:04:01 +04:00
Alexey Tourbin
566bc6ace5
shell.req: added early first pass for self-requires elimination
2007-10-03 14:33:21 +04:00
Alexey Tourbin
83fa94a314
shell.req: initial attempt to implement self-requires elimination
2007-10-03 14:04:25 +04:00
Alexey Tourbin
3fa83b4f4f
pkgconfig.req: factored common code
2007-10-03 00:20:43 +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
517efb4b7d
pkgconfiglib.req: allow absolute symbolic links under RPM_BUILD_ROOT
2007-09-29 16:46:28 +04:00
Alexey Tourbin
9b744d4512
pkgconfig.req.files: don't warn on symbolic links
2007-09-29 14:31:09 +04:00
Alexey Tourbin
fddaf81544
functions (SetupMethods): "[!" in shell pattern is better than "[^"
2007-09-24 03:14:24 +04:00
Alexey Tourbin
5844214067
shell.req: find re-exec interpreter only if the script is executable
2007-09-24 02:59:25 +04:00
Alexey Tourbin
8ee696768c
shebang.req.files: added "executable not executable" warning
2007-09-24 02:57:42 +04:00
Alexey Tourbin
7d68978688
find-package (FindByPath): ignore /dev/* /proc/* /sys/* dependencies
2007-09-23 01:23:34 +04:00
Alexey Tourbin
d9b38d645f
find-package (FindByPath): render $RPM_BUILD_DIR* dependencies invalid
2007-09-21 15:58:05 +04:00
Alexey Tourbin
8dd5a961e8
find-package (FindByPath): consider (not-so-) broken symbolic links inside RPM_BUILD_ROOT
2007-09-19 14:16:01 +04:00
Alexey Tourbin
d74f8d9a69
find-package (findByName): replaced /usr/bin/which with custom shell code
...
This is to address a few problems:
1) When checking RPM_BUILD_ROOT, st_mode test performed by /usr/bin/which
is not quite reliable. Files can be packaged with different %attr mode.
2) When checking RPM_BUILD_ROOT, there could be symbolic links there
which are (not-so-) broken.
3) When checking host system, files like /sbin/init (which is 0700)
are effectively bypassed by /usr/bin/which.
4) There's an ongoing practice of placing shell function libraries
under /usr/bin, e.g. /usr/bin/git-sh-setup. These files are sourced
from within shell scripts and need not be executable at all.
This leads me to the point that permission check, which is performed by
/usr/bin/which, is not needed at all. Note that things are getting more like
contents_index_bin search. And for RPM_BUILD_ROOT, we do not even require
strong stat-wise file existence.
I like this new term: "strong stat-wise file existence".
It's awesome.
2007-09-19 12:57:08 +04:00
Alexey Tourbin
3925c4c392
find-package (FindByName): manage "not found" verbosity
2007-09-19 11:08:53 +04:00
Alexey Tourbin
a1e07a6d21
find-package (FindByName): added sbin-ish paths under /etc
2007-09-19 10:33:12 +04:00
Alexey Tourbin
d03deaf0fa
find-package: implemented different PATHs for user and root code (the */sbin scripts)
...
also appended /usr/games to both user and root PATHs
2007-09-19 00:17:53 +04:00
Alexey Tourbin
b0190e3888
lib.prov: fixed DEF_RPM_FINDPROV_LIB_PATH
2007-09-16 17:31:49 +04:00
Alexey Tourbin
7ece64adc3
find-package (FindPackage): unquoted $valid case paterns
2007-09-12 20:07:43 +04:00
Alexey Tourbin
e5f015d831
find-package (FindPackage): fixed shell syntax (D'oh!)
2007-09-12 19:34:01 +04:00
Alexey Tourbin
4eb4ccf490
find-package: fixed Verbose message for contents_index_bin
2007-09-12 19:28:46 +04:00