https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111530

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <ga...@gcc.gnu.org>:

https://gcc.gnu.org/g:e5f6a5ad7ceece5238fc3d63f7ea92574df4264d

commit r14-4976-ge5f6a5ad7ceece5238fc3d63f7ea92574df4264d
Author: Gaius Mulley <gaiusm...@gmail.com>
Date:   Fri Oct 27 15:54:48 2023 +0100

    PR modula2/111530: Build failure on BSD due to getopt_long_only GNU
extension dependency

    This patch uses the libiberty getopt long functions (wrapped up inside
    libgm2/libm2pim/cgetopt.cc) and only enables this implementation if
    libgm2/configure.ac detects no getopt_long and friends on the target.

    gcc/m2/ChangeLog:

            PR modula2/111530
            * gm2-libs-ch/cgetopt.c (cgetopt_cgetopt_long): Re-format.
            (cgetopt_cgetopt_long_only): Re-format.
            (cgetopt_SetOption):  Re-format and assign flag to NULL
            if name is also NULL.
            * gm2-libs/GetOpt.def (AddLongOption): Add index parameter
            and change flag to be a VAR parameter rather than a pointer.
            (GetOptLong): Re-format.
            (GetOpt): Correct comment.
            * gm2-libs/GetOpt.mod: Re-write to rely on cgetopt rather
            than implement long option creation in GetOpt.
            * gm2-libs/cgetopt.def (SetOption): has_arg type is INTEGER.

    libgm2/ChangeLog:

            PR modula2/111530
            * Makefile.in: Regenerate.
            * aclocal.m4: Regenerate.
            * config.h.in: Regenerate.
            * configure: Regenerate.
            * configure.ac (AC_CHECK_HEADERS): Include getopt.h.
            (GM2_CHECK_LIB): getopt_long check.
            (GM2_CHECK_LIB): getopt_long_only check.
            * libm2cor/Makefile.in: Regenerate.
            * libm2iso/Makefile.in: Regenerate.
            * libm2log/Makefile.in: Regenerate.
            * libm2min/Makefile.in: Regenerate.
            * libm2pim/Makefile.in: Regenerate.
            * libm2pim/cgetopt.cc: Re-write using conditional on configure
            and long function code from libiberty/getopt.c.

    gcc/testsuite/ChangeLog:

            PR modula2/111530
            * gm2/pimlib/run/pass/testgetopt.mod: New test.

    Signed-off-by: Gaius Mulley <gaiusm...@gmail.com>

Reply via email to