glibc/scripts
Joseph Myers 477a02f637 Make gen-as-const.py handle '--' consistently with awk script.
It was reported in
<https://sourceware.org/ml/libc-alpha/2018-12/msg00045.html> that
gen-as-const.py fails to generate test code in the case where a .sym
file has no symbols in it, so resulting in a test failing to link for
Hurd.

The relevant difference from the old awk script is that the old script
treated '--' lines as indicating that the text to do at the start of
the test (or file used to compute constants) should be output at that
point if not already output, as well as treating lines with actual
entries for constants like that.  This patch changes gen-as-const.py
accordingly, making it the sole responsibility of the code parsing
.sym files to determine when such text should be output and ensuring
it's always output at some point even if there are no symbols and no
'--' lines, since not outputting it means the test fails to link.
Handling '--' like that also avoids any problems that would arise if
the first entry for a symbol were inside #ifdef (since the text in
question must not be output inside #ifdef).

Tested for x86_64, and with build-many-glibcs.py for i686-gnu.  Note
that there are still compilation test failures for i686-gnu
(linknamespace tests, possibly arising from recent posix_spawn-related
changes).

	* scripts/gen-as-const.py (compute_c_consts): Take an argument
	'START' to indicate that start text should be output.
	(gen_test): Likewise.
	(main): Generate 'START' for first symbol or '--' line, or at end
	of input if not previously generated.
2018-12-03 22:08:50 +00:00
..
abi-versions.awk Remove bitrotten --enable-oldest-abi (bug 6652). 2014-09-16 17:45:03 +00:00
abilist.awk scripts/abilist.awk: Handle special _end symbol for Hurd 2018-11-30 22:22:57 +01:00
backport-support.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
build-many-glibcs.py posix: Do not include testcases.h, ptestcases.h in source tree 2018-11-29 13:51:25 +01:00
check-c++-types.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
check-execstack.awk check-execstack: Permit sysdeps to xfail some libs 2018-07-20 03:28:14 +02:00
check-initfini.awk Mark _init and _fini as hidden [BZ #23145] 2018-06-08 10:28:52 -07:00
check-installed-headers.sh hurd: Fix inclusion of mach headers in all standards 2018-03-04 02:53:09 +01:00
check-local-headers.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
check-localplt.awk Extend local PLT reference check 2015-07-29 11:58:06 -07:00
check-textrel.awk Do check-textrel test using readelf rather than a build-time C program. 2012-05-01 13:27:11 -07:00
config-uname.sh Rejigger header generation for default uname implementation. 2010-08-24 11:56:52 -07:00
config.guess Update config.guess and config.sub to current versions. 2018-11-19 16:51:42 +00:00
config.sub Update config.guess and config.sub to current versions. 2018-11-19 16:51:42 +00:00
cpp Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
cross-test-ssh.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
documented.sh Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
evaluate-test.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
firstversions.awk Fix bug in firstversions.awk version range handling. 2012-01-28 12:02:44 -05:00
gen-as-const.py Make gen-as-const.py handle '--' consistently with awk script. 2018-12-03 22:08:50 +00:00
gen-libc-abis Make shebang interpreter directives consistent 2016-01-07 04:03:21 -05:00
gen-libc-modules.awk Auto-generate libc-modules.h 2014-11-19 12:16:00 +05:30
gen-posix-conf-vars.awk Remove uses of sprintf in gen-posix-conf-vars.awk 2015-01-02 11:16:35 +05:30
gen-py-const.awk Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
gen-rrtypes.py Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
gen-sorted.awk Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
gen-tunables.awk Fix range check in do_tunable_update_val 2017-09-27 02:44:09 +05:30
haveversions.awk Don't build libnsl for new ABIs 2018-09-24 10:23:10 +02:00
install-sh Update miscellaneous files from upstream sources. 2017-12-20 22:28:20 +00:00
lib-names.awk Clean up gnu/lib-names.h generation (bug 14171). 2014-09-26 17:33:04 +00:00
list-fixed-bugs.py Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
list-sources.sh Update scripts/list-sources.sh for ports repository merge. 2014-06-26 21:30:07 +00:00
localplt.awk Support PLT and GOT references in local PIC check 2015-10-14 06:00:02 -07:00
merge-test-results.sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
mkinstalldirs Update miscellaneous files from upstream sources. 2016-12-21 16:05:55 +00:00
move-if-change Update miscellaneous files from upstream sources. 2018-01-01 18:05:06 +00:00
output-format.sed 2004-08-13 Daniel Jacobowitz <dan@debian.org> 2004-08-14 06:54:39 +00:00
pylint Implement benchmarking script in python 2014-03-21 17:32:50 +05:30
pylintrc pylintrc: disable reports 2015-11-11 13:41:57 -05:00
rellns-sh Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
soversions.awk Remove bitrotten --enable-oldest-abi (bug 6652). 2014-09-16 17:45:03 +00:00
sysd-rules.awk sysd-rules: Cut down the number of rtld-% pattern rules 2016-09-20 10:41:05 +02:00
test-installation.pl Fix hardcoded /tmp paths in testing (bug 13888). 2018-06-26 21:48:48 +00:00
test_printers_common.py Disable lock elision for mutex pretty printer tests. 2018-04-19 12:45:11 +02:00
test_printers_exceptions.py Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
update-abilist.sh scripts/update-abilist.sh: Accept empty list of files to patch 2018-06-14 09:37:31 +02:00
update-copyrights Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
versionlist.awk Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
versions.awk Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00