~rattab/autoconf-upstream

a40b7a23675106e0ab307bc027a48cfd91f0db70 — RĂ©mi Attab 3 years ago 9109bc8
Work in progress for openbsd patches
1 files changed, 69 insertions(+), 9 deletions(-)

M todo.org
M todo.org => todo.org +69 -9
@@ 44,6 44,8 @@ removed. Nothing noteworthy though.
I had to go double-check the freaking *C standard* to make sure it
didn't change the semantics.  But it's fine as is.]

[RA: Agreed, original is easier to read but oh well.]

** MERGED debian/mmap-leak-fix.patch
09b6e78d1592ce10fdc975025d699ee41444aa3f



@@ 115,6 117,9 @@ included by the top-level Makefile.am, to eliminate recursive make
invocations.  (Have you read "Recursive Make Considered Harmful"?
It's like 25 years old and yet people are still Doing It Wrong.)]

[RA: I believe I read that a long time ago and have been trying to remember the
name of that article for ages.]

* HARD netbsd
** HARD netbsd/patch-aa
`AC_FUNC_ALLOCA should never define a prototype on the BSDs. Bump revision.`


@@ 248,18 253,73 @@ support. Could investigate whether replacing the hard-coded path by something
else could solve their problem.

* TODO openbsd
Run ./openbsd-find.sh to figure out where the original source for a patch file
Gave up trying to extract information out of the commit history because it's a
pain and the commit message don't add any useful context. Gotta evaluate the
patch as is.

** QUESTION openbsd/patch-bin_autom4te_in
This is just a bunch of random changes:
- Removes the default recursion limit
- Unconditionally appends `-g -D__gun__` to the m4 options.
- Replaces some flags by their short hands (--include -> -I)
- Disables --fatal-warning
- Replaces `@M4_DEBUG_FILE@=` by `-o`

Patch can be applied as is but I doubt we'll want to do that as there are no
changes here that look worthy of being upstream. Without more context about
these changes I think we'll just skip.

Would need to ask on their mailing list.

** QUESTION openbsd/patch-bin_autoupdate_in
More of the same:
- Unconditionally appends `-g -D__gun__` to the m4 options.
- Replaces some flags by their short hands (--include -> -I)

** QUESTION openbsd/patch-configure
Patches the configure file which is not something we track in git so patch can't
be applied as is.

Otherwise it:
- Removes the rm -f conftest.m4f from m4/m4.m4's AC_PROG_GNU_M4 function
- Simplifies the whole M4_DEBUGFILE logic to just `-o`. Doesn't seem to exist in
  master anymore.

Not sure if these are things we want to support upstream or not. Would need to
dig much further (probably on their mailing list).

** SKIP openbsd/patch-doc_autoconf_texi
Adds the autoconf version number when refering to the autoconf tools. Could
merge it but this seems like a thing that only OpenBSD so can safely skip it.

** SKIP openbsd/patch-doc_Makefile_in
Changes Makefile.in which I believe is a generated file so can't merge this as
is.

** TODO openbsd/patch-bin_autom4te_in
** TODO openbsd/patch-bin_autoupdate_in
** TODO openbsd/patch-configure
** TODO openbsd/patch-doc_autoconf_texi
** TODO openbsd/patch-doc_Makefile_in
** TODO openbsd/patch-lib_autoconf_general_m4
** TODO openbsd/patch-lib_autoconf_Makefile_in
** TODO openbsd/patch-lib_autotest_Makefile_in
Seems like it's applying a bunch of sed transformations to the release file
names. I very much doubt we want to upstream any of this logic.

** EASY openbsd/patch-lib_autoconf_general_m4
Adds a new argument to autoconf `--runstatedir` described as modifiable
per-process data. I believe it's made usable to users via `AC_SUBST`.

Would probably need to dig up more context but since this is a new feature, it
can be relgated to a later version.

** SKIP openbsd/patch-lib_autoconf_Makefile_in
Modifies a generated file and removes autoconf.m4f from nodist_autoconflib_DATA.
We don't want to upstream this.

** SKIP openbsd/patch-lib_autotest_Makefile_in
Modifies a generated file and removes autoconf.m4f from nodist_autoconflib_DATA.
We don't want to upstream this.

** TODO openbsd/patch-lib_m4sugar_m4sugar_m4
Random changes:
- Provides AM_SANITY_CHECK right after defining m4_provide. Seems like shoving
  AM specific code in the middle of the m4 library.
- Random line deletion

** TODO openbsd/patch-lib_m4sugar_Makefile_in
** TODO openbsd/patch-Makefile_in
** TODO openbsd/patch-tests_c_at