Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package mk-configure for openSUSE:Factory checked in at 2026-10-17 21:25:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mk-configure (Old) and /work/SRC/openSUSE:Factory/.mk-configure.new.3698736 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mk-configure" Sat Oct 17 21:25:41 2026 rev:21 rq:1385266 version:0.40.1 Changes: -------- --- /work/SRC/openSUSE:Factory/mk-configure/mk-configure.changes 2026-05-06 19:24:17.332902235 +0200 +++ /work/SRC/openSUSE:Factory/.mk-configure.new.3698736/mk-configure.changes 2026-10-17 21:25:47.783866422 +0200 @@ -1,0 +2,15 @@ +Fri Oct 16 17:01:12 UTC 2026 - Martin Pluskal <[email protected]> + +- Update to 0.40.1: + * Remove the .res file when the compiler check fails, so mkcmake can + be rerun after fixing PATH, CC or CXX + * USE_FORT: undefine _FORTIFY_SOURCE before setting it to 2 + * posix_getopt: fix memory leak + * New example/test: efun2 +- Drop gcc16-compatibility.patch: upstream replaced the strstr(3) + prototype tests with execve(2) in this release +- Add bmake-error-location-format.patch: the tests and their helper knew + only bmake's old diagnostic location format, so the check failed from + bmake 20260824 on + +------------------------------------------------------------------- Old: ---- gcc16-compatibility.patch mk-configure-mk-configure-0.40.0.tar.gz New: ---- bmake-error-location-format.patch mk-configure-mk-configure-0.40.1.tar.gz ----------(Old B)---------- Old: * New example/test: efun2 - Drop gcc16-compatibility.patch: upstream replaced the strstr(3) prototype tests with execve(2) in this release ----------(Old E)---------- ----------(New B)---------- New: prototype tests with execve(2) in this release - Add bmake-error-location-format.patch: the tests and their helper knew only bmake's old diagnostic location format, so the check failed from ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mk-configure.spec ++++++ --- /var/tmp/diff_new_pack.WQKfwG/_old 2026-10-17 21:25:48.438893747 +0200 +++ /var/tmp/diff_new_pack.WQKfwG/_new 2026-10-17 21:25:48.440893831 +0200 @@ -17,17 +17,16 @@ Name: mk-configure -Version: 0.40.0 +Version: 0.40.1 Release: 0 Summary: A build system on top of bmake License: BSD-2-Clause AND MIT AND ISC -Group: Development/Tools/Building URL: https://github.com/cheusov/mk-configure/ Source: https://github.com/cheusov/mk-configure/archive/refs/tags/mk-configure-%{version}/%{name}-%{name}-%{version}.tar.gz Source1: mkcmake.macros Source9: mk-configure-rpmlintrc -# PATCH-FIX-UPSTREAM gcc16-compatibility.patch -- based on commit e7bbef7aabb9e7d2b715fb829771c7016aee9359 -Patch0: gcc16-compatibility.patch +# PATCH-FIX-OPENSUSE bmake-error-location-format.patch -- tests and test helper know only bmake's old diagnostic location format +Patch0: bmake-error-location-format.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: bison @@ -58,7 +57,6 @@ %package doc Summary: Mk-configure documentation -Group: Documentation/Other Requires: %{name} %description doc ++++++ bmake-error-location-format.patch ++++++ bmake prints the location of a diagnostic as `<file>:<line>:` since bmake-20260824; it used to print `"<file>" line <n>:`. tests/reqd, reqd2, reqd3 and reqd4 strip that location off the nested make's error line before diffing it against expect.out, and examples/helpers/mkc_test_helper strips it off every test's output (the test_subprj_dash, reqd_clean_cache and reqd_clean_cache2 recipes, and every example, pipe through it). Both know only the old spelling, so with the new one the location survived and the message was then cut off by the trailing `s/".*//`, or was compared away from its expected bare form; %check failed on every arch. Strip up to the last `: "` instead, which matches both spellings. The old expression is kept so the helper still copes with older bmake. --- a/examples/helpers/mkc_test_helper 2026-10-14 22:42:43.000000000 +0200 +++ b/examples/helpers/mkc_test_helper 2026-10-16 19:06:41.314760620 +0200 @@ -46,5 +46,6 @@ -e 's,lua/[0-9]*[.][0-9]*,lua/X.Y,' \ -e 's,//,/,g' \ -e 's,^bmake:.*line [0-9][0-9]*: "\(.*\)".*$,\1,g' \ + -e 's,^bmake:[^"]*:[0-9][0-9]*: "\(.*\)".*$,\1,g' \ -e 's/[.]sl/.so/' -e /so_locations/d | $SORT_CMD --- a/tests/reqd/test.mk 2026-10-14 22:42:43.000000000 +0200 +++ b/tests/reqd/test.mk 2026-10-16 18:57:17.823552977 +0200 @@ -5,7 +5,7 @@ rm -f $$tmp_out; \ ${MAKE} all MKC_REQD=999.0.0 2>&1 | head -1 | \ sed -e 's/ [0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*/ N.N.N/' \ - -e 's/^.* line[^"]*"//' -e 's/".*//' > $$tmp_out; \ + -e 's/^.*: "//' -e 's/".*//' > $$tmp_out; \ diff ${.CURDIR}/expect.out $$tmp_out && \ echo ' succeeded' 1>&2 || \ { echo ' FAILED' 1>&2; false; } --- a/tests/reqd2/test.mk 2026-10-14 22:42:43.000000000 +0200 +++ b/tests/reqd2/test.mk 2026-10-16 18:57:17.831553875 +0200 @@ -5,7 +5,7 @@ rm -f $$tmp_out; \ ${MAKE} all MKC_REQD=999.0.0 2>&1 | head -1 | \ sed -e 's/ [0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*/ N.N.N/' \ - -e 's/^.* line[^"]*"//' -e 's/".*//' > $$tmp_out; \ + -e 's/^.*: "//' -e 's/".*//' > $$tmp_out; \ diff ${.CURDIR}/expect.out $$tmp_out && \ echo ' succeeded' 1>&2 || \ { echo ' FAILED' 1>&2; false; } --- a/tests/reqd3/test.mk 2026-10-14 22:42:43.000000000 +0200 +++ b/tests/reqd3/test.mk 2026-10-16 18:57:17.839554773 +0200 @@ -5,7 +5,7 @@ rm -f $$tmp_out; \ ${MAKE} all MKC_REQD=999.0.0 2>&1 | head -1 | \ sed -e 's/ [0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*/ N.N.N/' \ - -e 's/^.* line[^"]*"//' -e 's/".*//' > $$tmp_out; \ + -e 's/^.*: "//' -e 's/".*//' > $$tmp_out; \ diff ${.CURDIR}/expect.out $$tmp_out && \ echo ' succeeded' 1>&2 || \ { echo ' FAILED' 1>&2; false; } --- a/tests/reqd4/test.mk 2026-10-14 22:42:43.000000000 +0200 +++ b/tests/reqd4/test.mk 2026-10-16 18:57:17.847555670 +0200 @@ -9,10 +9,10 @@ ${MAKE} -j3 all MKC_REQD=999.0.0 2>&1 | \ grep ERROR: | \ sed -e 's/ [0-9][0-9]*[.][0-9][0-9]*[.][0-9][0-9]*/ N.N.N/' \ - -e 's/^.* line[^"]*"//' -e 's/".*//'; \ + -e 's/^.*: "//' -e 's/".*//'; \ ${MAKE} -j3 all MAKE_VERSION=00000000 2>&1 | \ grep ERROR: | \ - sed -e 's/^.*"bmake/"bmake/' -e 's/^.* line[^"]*"//' -e 's/".*//'; \ + sed -e 's/^.*"bmake/"bmake/' -e 's/^.*: "//' -e 's/".*//'; \ echo =========== all ============; \ find ${.OBJDIR} -type f -o -type l | \ mkc_test_helper ${PREFIX:Q} ${.OBJDIR:Q} ${.CURDIR:Q}; \ ++++++ mk-configure-mk-configure-0.40.0.tar.gz -> mk-configure-mk-configure-0.40.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/Makefile.inc new/mk-configure-mk-configure-0.40.1/Makefile.inc --- old/mk-configure-mk-configure-0.40.0/Makefile.inc 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/Makefile.inc 2026-10-14 22:42:43.000000000 +0200 @@ -1,4 +1,4 @@ -VERSION = 0.40.0 +VERSION = 0.40.1 BIRTHDATE = 2009-02-21 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/doc/NEWS new/mk-configure-mk-configure-0.40.1/doc/NEWS --- old/mk-configure-mk-configure-0.40.0/doc/NEWS 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/doc/NEWS 2026-10-14 22:42:43.000000000 +0200 @@ -1,4 +1,26 @@ ====================================================================== +Version 0.40.1, by Aleksey Cheusov, Thu, 15 Oct 2026 00:41:49 +0400 + + Remove .res file if checking for compiler failed. This allows to + rerun mkcmake after fixing in PATH, CC or CXX, for examples. + + Replace tests for strstr(3) prototype with prototype for execve(2) + (github issue #33) + + USE_FORT: undefine _FORTIFY_SOURCE before set it to 2 + + Fizxes in tests: + * examples/lexer (failed on some systems due to -Wunused-function) + * posix_getopt (memory leak) + + New tests/examples: + * examples/efun2 + + mkc_check_decl: minor improvement + + Sxome fixes and improvements for recent Darwin + +====================================================================== Version 0.40.0, by Aleksey Cheusov, Sun, 6 Oct 2024 12:31:47 +0400 Fix build failure with bmake-20240909 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/doc/TODO new/mk-configure-mk-configure-0.40.1/doc/TODO --- old/mk-configure-mk-configure-0.40.0/doc/TODO 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/doc/TODO 2026-10-14 22:42:43.000000000 +0200 @@ -1,3 +1,4 @@ +============================================================ Rename SCRIPTSNAME to SCRIPTNAME feature posix_getopt: use bsd_getopt from libbsd @@ -12,32 +13,6 @@ USE_LEX and USE_LEXLIB -- default LEX and LEXLIB ============================================================ -If checking for compiler fails, remove .res files - - cheusov@illumos - 1 dictd>git status --ignored - On branch master - Your branch is up to date with 'origin/master'. - - Ignored files: - (use "git add -f <file>..." to include in what will be committed) - _mkc_cc_type.err - _mkc_cc_type.res - - nothing to commit, working tree clean - - cheusov@illumos - 0 dictd>cat _mkc_cc_type.res - unknown i86pc-unknown-SunOS - - cheusov@illumos - 0 dictd>cat _mkc_cc_type.err - /opt/local/bin/mkc_check_compiler: line 78: cc: not found - - cheusov@illumos - 0 dictd> - -============================================================ SUBPRJ_DFLT vs. LIB, see libmaa, try to set environment SUBPRJ_DFLT diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/efun2/Makefile new/mk-configure-mk-configure-0.40.1/examples/efun2/Makefile --- old/mk-configure-mk-configure-0.40.0/examples/efun2/Makefile 1970-01-01 01:00:00.000000000 +0100 +++ new/mk-configure-mk-configure-0.40.1/examples/efun2/Makefile 2026-10-14 22:42:43.000000000 +0200 @@ -0,0 +1,11 @@ +PROGS = cprog cxxprog +SRCS.cxxprog = cxxprog.cc + +WARNS = 4 + +MKC_FEATURES += efun + +MKC_REQD = 0.34.99 + +.include "test.mk" +.include <mkc.prog.mk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/efun2/cprog.c new/mk-configure-mk-configure-0.40.1/examples/efun2/cprog.c --- old/mk-configure-mk-configure-0.40.0/examples/efun2/cprog.c 1970-01-01 01:00:00.000000000 +0100 +++ new/mk-configure-mk-configure-0.40.1/examples/efun2/cprog.c 2026-10-14 22:42:43.000000000 +0200 @@ -0,0 +1,15 @@ +#include <stdio.h> +#include <stdlib.h> + +#include <mkc_efun.h> + +#define BUF_SIZE 100 + +int main (int argc, char **argv) +{ + char *buffer = ecalloc(BUF_SIZE, 1); + printf("cprog: ecalloc succeded\n"); + free(buffer); + + return 0; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/efun2/cxxprog.cc new/mk-configure-mk-configure-0.40.1/examples/efun2/cxxprog.cc --- old/mk-configure-mk-configure-0.40.0/examples/efun2/cxxprog.cc 1970-01-01 01:00:00.000000000 +0100 +++ new/mk-configure-mk-configure-0.40.1/examples/efun2/cxxprog.cc 2026-10-14 22:42:43.000000000 +0200 @@ -0,0 +1,15 @@ +#include <iostream> +#include <cstdlib> + +#include <mkc_efun.h> + +#define BUF_SIZE 100 + +int main (int argc, char **argv) +{ + void *buffer = ecalloc(BUF_SIZE, 1); + std::cout << "cxxprog: ecalloc succeded\n"; + free(buffer); + + return 0; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/efun2/expect.out new/mk-configure-mk-configure-0.40.1/examples/efun2/expect.out --- old/mk-configure-mk-configure-0.40.0/examples/efun2/expect.out 1970-01-01 01:00:00.000000000 +0100 +++ new/mk-configure-mk-configure-0.40.1/examples/efun2/expect.out 2026-10-14 22:42:43.000000000 +0200 @@ -0,0 +1,2 @@ +cprog: ecalloc succeded +cxxprog: ecalloc succeded diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/efun2/test.mk new/mk-configure-mk-configure-0.40.1/examples/efun2/test.mk --- old/mk-configure-mk-configure-0.40.0/examples/efun2/test.mk 1970-01-01 01:00:00.000000000 +0100 +++ new/mk-configure-mk-configure-0.40.1/examples/efun2/test.mk 2026-10-14 22:42:43.000000000 +0200 @@ -0,0 +1,7 @@ +.PHONY : test_output +test_output: + @${.OBJDIR}/cprog; \ + ${.OBJDIR}/cxxprog; \ + ${MAKE} cleandir > /dev/null + +.include <mkc.minitest.mk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/helpers/mkc_test_helper new/mk-configure-mk-configure-0.40.1/examples/helpers/mkc_test_helper --- old/mk-configure-mk-configure-0.40.0/examples/helpers/mkc_test_helper 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/helpers/mkc_test_helper 2026-10-14 22:42:43.000000000 +0200 @@ -39,6 +39,8 @@ -e '/export[.]sym[.]tmp/ d' \ -e '/pod2htmd.tmp/ d' \ -e '/pod2htmi.tmp/ d' \ + -e '/[.]dSYM/ d' \ + -e '/was built for newer/ d' \ -e 's,lib64,lib,' \ -e 's,lib/[^/]*/lua,lib/lua,' \ -e 's,lua/[0-9]*[.][0-9]*,lua/X.Y,' \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/helpers/mkc_test_helper2 new/mk-configure-mk-configure-0.40.1/examples/helpers/mkc_test_helper2 --- old/mk-configure-mk-configure-0.40.0/examples/helpers/mkc_test_helper2 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/helpers/mkc_test_helper2 2026-10-14 22:42:43.000000000 +0200 @@ -11,6 +11,9 @@ LC_ALL=C export LC_ALL -sed -e '/checking C\([+]\)* compiler type/ s|[.][.][.] .*|... mmm nnn|' "$@" | +sed \ + -e '/checking C\([+]\)* compiler type/ s|[.][.][.] .*|... mmm nnn|' \ + -e '/was built for newer/ d' \ + "$@" | grep -Ev 'ld: warning:.*was built for newer macOS version' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/lexer/Makefile new/mk-configure-mk-configure-0.40.1/examples/lexer/Makefile --- old/mk-configure-mk-configure-0.40.0/examples/lexer/Makefile 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/lexer/Makefile 2026-10-14 22:42:43.000000000 +0200 @@ -3,7 +3,9 @@ DPSRCS = lexer.c -MKC_FEATURES = libl +MKC_FEATURES = libl + +CFLAGS.check += -Wno-unused-function .include "test.mk" .include <mkc.prog.mk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/lexer/expect.out new/mk-configure-mk-configure-0.40.1/examples/lexer/expect.out --- old/mk-configure-mk-configure-0.40.0/examples/lexer/expect.out 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/lexer/expect.out 2026-10-14 22:42:43.000000000 +0200 @@ -1,6 +1,8 @@ # of lines = 2, # of chars = 26 =========== all ============ /objdir/Makefile +/objdir/_mkc_cc_option_-Wno-unused-function.err +/objdir/_mkc_cc_option_-Wno-unused-function.res /objdir/_mkc_cc_type.err /objdir/_mkc_cc_type.res /objdir/_mkc_funclib_yywrap.c @@ -28,6 +30,8 @@ ======== uninstall ========= ========== clean =========== /objdir/Makefile +/objdir/_mkc_cc_option_-Wno-unused-function.err +/objdir/_mkc_cc_option_-Wno-unused-function.res /objdir/_mkc_cc_type.err /objdir/_mkc_cc_type.res /objdir/_mkc_funclib_yywrap.c @@ -48,6 +52,8 @@ ========== depend =========== /objdir/.depend_lexer /objdir/Makefile +/objdir/_mkc_cc_option_-Wno-unused-function.err +/objdir/_mkc_cc_option_-Wno-unused-function.res /objdir/_mkc_cc_type.err /objdir/_mkc_cc_type.res /objdir/_mkc_funclib_yywrap.c @@ -77,6 +83,8 @@ LD: lexer /objdir/.depend_lexer /objdir/Makefile +/objdir/_mkc_cc_option_-Wno-unused-function.err +/objdir/_mkc_cc_option_-Wno-unused-function.res /objdir/_mkc_cc_type.err /objdir/_mkc_cc_type.res /objdir/_mkc_funclib_yywrap.c diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/expect.out new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/expect.out --- old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/expect.out 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/expect.out 2026-10-14 22:42:43.000000000 +0200 @@ -1,6 +1,10 @@ flags=1; tfnd=1; nsecs=123; optind=4 -name argument = freeargument +free argument = freeargument flags=1; tfnd=0; nsecs=0; optind=2 -name argument = freeargument +free argument = freeargument flags=0; tfnd=1; nsecs=123; optind=4 -name argument = -n +free argument = -n +flags=0; tfnd=1; nsecs=123; optind=3 +free argument = freeargument +flags=0; tfnd=0; nsecs=0; optind=1 +free argument = freeargument diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/prog.c new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/prog.c --- old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/prog.c 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/prog.c 2026-10-14 22:42:43.000000000 +0200 @@ -34,7 +34,7 @@ flags, tfnd, nsecs, optind); if (argc > 0) - printf("name argument = %s\n", argv[0]); + printf("free argument = %s\n", argv[0]); exit(EXIT_SUCCESS); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/test.mk new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/test.mk --- old/mk-configure-mk-configure-0.40.0/examples/posix_getopt/test.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples/posix_getopt/test.mk 2026-10-14 22:42:43.000000000 +0200 @@ -3,6 +3,8 @@ @${.OBJDIR}/prog -t 123 -n freeargument; \ ${.OBJDIR}/prog -n freeargument -t 123; \ ${.OBJDIR}/prog -t 123 -- -n freeargument; \ + ${.OBJDIR}/prog -t 123 freeargument -n; \ + ${.OBJDIR}/prog freeargument -t 123 -n; \ ${MAKE} cleandir > /dev/null .include <mkc.minitest.mk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/examples.mk new/mk-configure-mk-configure-0.40.1/examples.mk --- old/mk-configure-mk-configure-0.40.0/examples.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/examples.mk 2026-10-14 22:42:43.000000000 +0200 @@ -7,7 +7,7 @@ tools2 pkgconfig3 SLIST RBTREE errwarn fgetln \ autotools autoconf libdeps compatlib \ require_tools check_compiler_opts help_target \ - arc4random bswap dprintf efun strsep errc posix_getopt \ + arc4random bswap dprintf efun efun2 strsep errc posix_getopt \ raise_default_signal reallocarray fparseln vis \ fts humanize_number shquote tiny_id c99 reallocarr \ strtoi multilibs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/features/posix_getopt/mkc_posix_getopt.c new/mk-configure-mk-configure-0.40.1/features/posix_getopt/mkc_posix_getopt.c --- old/mk-configure-mk-configure-0.40.0/features/posix_getopt/mkc_posix_getopt.c 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/features/posix_getopt/mkc_posix_getopt.c 2026-10-14 22:42:43.000000000 +0200 @@ -26,6 +26,7 @@ #include <mkc_efun.h> #include <string.h> +#include <stdlib.h> #ifdef getopt #undef getopt @@ -44,5 +45,7 @@ if (ret != '?') optopt = ret; + free(new_optstr); + return ret; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/mk/mkc.init.mk new/mk-configure-mk-configure-0.40.1/mk/mkc.init.mk --- old/mk-configure-mk-configure-0.40.0/mk/mkc.init.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/mk/mkc.init.mk 2026-10-14 22:42:43.000000000 +0200 @@ -26,18 +26,18 @@ .MAIN: all ########### - -.for p in ${PROGS} -SRCS.${p} ?= ${p}.c -SRCS.${p} += ${SRCS} # SRCS may be changed by mkc.conf.mk -_srcsall += ${SRCS.${p}} -.endfor - .if defined(PROG) PROGS ?= ${PROG} SRCS ?= ${PROG}.c -SRCS.${PROG} ?= ${SRCS} -_srcsall += ${SRCS} +SRCS.${PROG} = ${SRCS} +_srcsall += ${SRCS.${PROG}} +.elif PROGS +. for p in ${PROGS} +SRCS.${p} ?= ${p}.c +SRCS.${p} += ${SRCS} # SRCS may be changed by mkc.conf.mk +_srcsall += ${SRCS.${p}} +. endfor +#_srcsall += ${SRCS} .elif ${.CURDIR:T} == ${COMPATLIB:U} SRCS ?= ${FEATURESDIR}/_mkcfake.c _srcsall += ${SRCS} @@ -302,7 +302,7 @@ .endif .if ${USE_FORT:U:tl} == "yes" -CPPFLAGS += -D_FORTIFY_SOURCE=2 +CPPFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 CFLAGS += -O .endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/mk/mkc_imp.compiler_config.mk new/mk-configure-mk-configure-0.40.1/mk/mkc_imp.compiler_config.mk --- old/mk-configure-mk-configure-0.40.0/mk/mkc_imp.compiler_config.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/mk/mkc_imp.compiler_config.mk 2026-10-14 22:42:43.000000000 +0200 @@ -4,6 +4,7 @@ .for c in ${src_type} _full_type != env ${mkc.cc_type.environ} mkc_check_compiler ${"${c}" == "cxx":?-x:} . if empty(_full_type) + _ != env ${mkc.cc_type.environ} mkc_check_compiler -D ${"${c}" == "cxx":?-x:} . error "Compiler is not found" . endif ${c:tu}_TYPE := ${_full_type:[1]} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/scripts/mkc_check_decl.in new/mk-configure-mk-configure-0.40.1/scripts/mkc_check_decl.in --- old/mk-configure-mk-configure-0.40.0/scripts/mkc_check_decl.in 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/scripts/mkc_check_decl.in 2026-10-14 22:42:43.000000000 +0200 @@ -77,7 +77,7 @@ argscnt=`echo "$1" | sed 's/[^0-9]//g'` shift -declwhat=`echo "$1" | @AWK@ '{gsub(/-/, " "); gsub(/ +[(]/, "("); $1=$1; print}'` +declwhat=`echo "$1" | @AWK@ '{$1=$1; gsub(/-/, " "); gsub(/ +[(]/, "("); print}'` shift typemsg="$decltype $declwhat" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/tests/configure_test/expect.out new/mk-configure-mk-configure-0.40.1/tests/configure_test/expect.out --- old/mk-configure-mk-configure-0.40.0/tests/configure_test/expect.out 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/tests/configure_test/expect.out 2026-10-14 22:42:43.000000000 +0200 @@ -86,9 +86,9 @@ 1 HAVE_MEMBER.struct_mkc_test_t_b_c.include_mkc_test_h: 1 -HAVE_PROTOTYPE.strstr_ok: +HAVE_PROTOTYPE.execve_ok: 1 -HAVE_PROTOTYPE.strstr_bad: +HAVE_PROTOTYPE.execve_bad: 0 HAVE_PROTOTYPE.function_absent: 0 @@ -159,7 +159,7 @@ -DHAVE_FUNC5_MKC_TEST_FUNC_INCLUDE_MKC_TEST_H=1 -DCUSTOM_CUSTOM_CHECK1=1 -DCUSTOM_CUSTOM_CHECK5=1 --DHAVE_PROTOTYPE_STRSTR_OK=1 +-DHAVE_PROTOTYPE_EXECVE_OK=1 MKC_AUTO_SRCS: /somewhere/superfunc1.c /somewhere/superfunc2.c @@ -274,9 +274,9 @@ 1 HAVE_MEMBER.struct_mkc_test_t_b_c.include_mkc_test_h: 1 -HAVE_PROTOTYPE.strstr_ok: +HAVE_PROTOTYPE.execve_ok: 0 -HAVE_PROTOTYPE.strstr_bad: +HAVE_PROTOTYPE.execve_bad: 1 HAVE_PROTOTYPE.function_absent: 0 @@ -351,7 +351,7 @@ -DCUSTOM_CUSTOM_CHECK2=2 -DCUSTOM_CUSTOM_CHECK2_LINK=3 -DCUSTOM_CUSTOM_CHECK5=1 --DHAVE_PROTOTYPE_STRSTR_BAD=1 +-DHAVE_PROTOTYPE_EXECVE_BAD=1 MKC_AUTO_SRCS: /somewhere/superfunc1.c /somewhere/superfunc2.c diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/tests/configure_test/mkc_test.mk new/mk-configure-mk-configure-0.40.1/tests/configure_test/mkc_test.mk --- old/mk-configure-mk-configure-0.40.0/tests/configure_test/mkc_test.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/tests/configure_test/mkc_test.mk 2026-10-14 22:42:43.000000000 +0200 @@ -102,12 +102,12 @@ MKC_REQUIRE_CUSTOM+= custom_check3 -MKC_CHECK_PROTOTYPES = strstr_ok strstr_bad function_absent -MKC_PROTOTYPE_FUNC.strstr_ok = char* strstr (const char*, const char* ) -MKC_PROTOTYPE_FUNC.strstr_bad = char* strstr(const char*, const char*, int lalala) +MKC_CHECK_PROTOTYPES = execve_ok execve_bad function_absent +MKC_PROTOTYPE_FUNC.execve_ok = int execve ( const char *, char * const *, char * const * ) +MKC_PROTOTYPE_FUNC.execve_bad = int execve(const char*, const char*, int lalala) MKC_PROTOTYPE_FUNC.function_absent = int absent_function(int lalala) -MKC_PROTOTYPE_HEADERS.strstr_ok = string.h -MKC_PROTOTYPE_HEADERS.strstr_bad = string.h +MKC_PROTOTYPE_HEADERS.execve_ok = unistd.h +MKC_PROTOTYPE_HEADERS.execve_bad = unistd.h MKC_PROTOTYPE_HEADERS.function_absent = string.h MKC_CHECK_CC_OPTS = -DMACRO=zzz --zzz @@ -144,7 +144,7 @@ HAVE_VAR.mkc_test_var.include_mkc_test_h \ HAVE_MEMBER.struct_mkc_test_t_a.include_mkc_test_h \ HAVE_MEMBER.struct_mkc_test_t_b_c.include_mkc_test_h \ - HAVE_PROTOTYPE.strstr_ok HAVE_PROTOTYPE.strstr_bad HAVE_PROTOTYPE.function_absent \ + HAVE_PROTOTYPE.execve_ok HAVE_PROTOTYPE.execve_bad HAVE_PROTOTYPE.function_absent \ HAVE_CC_OPT.-DMACRO_zzz HAVE_CXX_OPT.-DMACRO_zzz \ HAVE_CCLD_OPT.-DMACRO_zzz HAVE_CXXLD_OPT.-DMACRO_zzz \ HAVE_CC_OPT.--zzz HAVE_CXX_OPT.--zzz \ @@ -185,6 +185,6 @@ sed "s/^.*-DSYSTEM_.*$$/KNOWN_SYSTEM/" @printf "%s\n" "${CPPFLAGS}" | \ sed 's/^.*\(MKC_COMMON_DEFINES_WORKS_FINE\).*$$/\1/' - @ls -1 _mkc_* | grep -E 'cache2|cc_opt|cxx_opt|ccld_opt|cxxld_opt' | sort + @ls -1 _mkc_* | grep -v '[.]dSYM' | grep -E 'cache2|cc_opt|cxx_opt|ccld_opt|cxxld_opt' | sort .include <mkc.mk> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/tests/configure_test/mkc_test_preset.mk new/mk-configure-mk-configure-0.40.1/tests/configure_test/mkc_test_preset.mk --- old/mk-configure-mk-configure-0.40.0/tests/configure_test/mkc_test_preset.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/tests/configure_test/mkc_test_preset.mk 2026-10-14 22:42:43.000000000 +0200 @@ -27,8 +27,8 @@ CUSTOM.custom_check2_link=3 PROG.awk= PROG.megaprog-x34=/bad/path -HAVE_PROTOTYPE.strstr_ok=0 -HAVE_PROTOTYPE.strstr_bad=1 +HAVE_PROTOTYPE.execve_ok=0 +HAVE_PROTOTYPE.execve_bad=1 HAVE_CC_OPT.-DMACRO_zzz=5 HAVE_CXX_OPT.-DMACRO_zzz=5 HAVE_CCLD_OPT.-DMACRO_zzz=5 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mk-configure-mk-configure-0.40.0/tests/mkc_check_custom/test.mk new/mk-configure-mk-configure-0.40.1/tests/mkc_check_custom/test.mk --- old/mk-configure-mk-configure-0.40.0/tests/mkc_check_custom/test.mk 2024-10-06 11:05:05.000000000 +0200 +++ new/mk-configure-mk-configure-0.40.1/tests/mkc_check_custom/test.mk 2026-10-14 22:42:43.000000000 +0200 @@ -6,40 +6,40 @@ CXXFLAGS=${CXXFLAGS:Q}; export CXXFLAGS; \ LDFLAGS=${CFLAGS:Q}\ ${LDFLAGS:Q}; export LDFLAGS; \ echo ============= common tests ============; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1 | head -1; \ echo =========== custom_check1.c ===========; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -t check1 ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ MKC_VERBOSE=1; export MKC_VERBOSE; \ mkc_check_custom -t check1 ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ mkc_check_custom -t check1 ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ env MKC_NOCACHE=1 mkc_check_custom -t check1 ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ env MKC_SHOW_CACHED=1 mkc_check_custom -t check1 ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ env MKC_SHOW_CACHED=1 mkc_check_custom -t check1 -b ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ env mkc_check_custom -t check1 -b ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ env mkc_check_custom -t check1 -bl ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ env LDFLAGS="$$CFLAGS --zzz" mkc_check_custom -t check1 -bl ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ env LDFLAGS="$$LDLAGS --zzz" mkc_check_custom -t check1 -b ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ env CFLAGS="$$CFLAGS --zzz" mkc_check_custom -e -t check1 -b ${SRCDIR_configure_test}/custom/custom_check1.c 2>&1; \ echo =========== custom_check3.c ===========; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -t check3 ${SRCDIR_configure_test}/custom/custom_check3.c 2>&1; \ echo =========== my_check2.c ===========; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -t check2 -b ${SRCDIR_configure_test}/custom/my_check2.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -t check2 -lb ${SRCDIR_configure_test}/custom/my_check2.c 2>&1; \ echo =========== my_check4.c ===========; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -t check4 ${SRCDIR_configure_test}/custom/my_check4.c 2>&1; \ - rm -f _mkc_*; \ + rm -rf _mkc_*.dSYM; rm -f _mkc_*; \ mkc_check_custom -lb -t check4 ${SRCDIR_configure_test}/custom/my_check4.c 2>&1; \ mkc_check_custom -lbd -t check4 ${SRCDIR_configure_test}/custom/my_check4.c 2>&1; \ mkc_check_custom -t custom_check4 -m 'trying to build my_check4 application' -lb ${SRCDIR_configure_test}/custom/my_check4.c 2>&1; \
