pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/mk-configure Version 0.34.0, by Aleksey Cheusov, ...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/958e2380fb1e
branches:  trunk
changeset: 423514:958e2380fb1e
user:      cheusov <cheusov%pkgsrc.org@localhost>
date:      Wed Feb 19 22:03:17 2020 +0000

description:
Version 0.34.0, by Aleksey Cheusov, Wed, 19 Feb 2020 22:46:40 +0300

  This release introduces some incompatibilities with older releases:
    - mkc_install -l is changed
    - Target "distclean" is considered deprecated.
      Use target "configure" instead!
    - Remove support for Pascal, Fortran and ObjC.
      Only C and C++ are supported.
    - Do not add ${LEXLIB} to LDADD if SRCS contains .l files.
      You have to add it manually when needed or use new feature "libl".
    - mkc_check_custom: remove options -p and -n
    - LDREAL is either C or C++ compiler, not the linker
    - mkc_check_custom: do not use CARGS anymore
    - Introduce CXXOPTS and CXXOPTS_<prj> variables and
      do not pass COPTS to C++ compiler. COPTS is only for C!

  mk-configure build system changes:
    - Introduce new targets "help", "help_subprj" and "help_use" and
      appropriate framework for documenting the software project.  See
      mkc_imp.help.mk makefile. mk-configure itself uses this
      framework, so, you can run "bmake help" before build. Also
      introduce the following configuring variables for mk-configure:
      USE_AWK, USE_ID, USE_INSTALL, USE_NM, USE_SH, USE_CC_COMPILERS,
      USE_CXX_COMPILERS. See updated doc/INSTALL.md
    - Add virtual targets "examples" in addition to "tests".
    - Move helpers/* scripts to examples/helpers/ subdirectory. They
      are for testing mk-configure only.

  Mk files:
    * C{,XX}FLAGS.{warns,ssp,pie,pic}, LDFLAGS.pie etc...:
      Defaults for these values are determined at build time by
      checking whether compiler/linker accepts the corresponding
      option.  Load compiler specific options from ~/.mk-c and
      MKFILESDIR directories, and exit with error if they do not
      exist. For generating such settings for compiler absent at build
      time, use newly introduced script "mkc_compiler_settings".
    * C{,XX}FLAGS:
      Pass these flags to the compiler after C{,XX}FLAGS.warns
      for overriding bad warnings/errors
    * MKC_CHECK_{CC,CXX}_OPTS:
      double underline symbols in the option is considered
      as a single space
    * MKC_CHECK_CUSTOM:
      - pass MKC_CUSTOM_{CPPFLAGS,CFLAGS,CXXFLAGS,LDFLAGS,LDADD}.<check_name>
        flags to the compiler
      - introduce variable MKC_CUSTOM_NOAUTO.<checkname>
      - introduce variable MKC_CUSTOM_CACHE.<checkname>
      - introduce variable MKC_CHECK_CCLD_OPTS and MKC_CHECK_CXXLD_OPTS
    * Introduce new variables CC_VERSION and CXX_VERSION determined
      by mkc_check_compiler(1)
    * Introduce INSTALL_FLAGS variables and remove undocumented
      COPY, PRESERVE, INSTPRIV and RENAME
    * Keep initial settings for mk-configure in sys.mk
      instead of mkc_imp.vars.mk
    * Introduce MKC_CUSTOM_LINK.<custom_check_name> variable for link testing
    * Introduce CFLAGS.check and CXXFLAGS.check variables
    * Set CFLAGS.dflt.sunpro to -errtags
    * mkc.conf.mk: undefine MKC_CHECK_CC_OPTS, MKC_CHECK_CXX_OPTS after use
    * Introduce new checks MKC_CHECK_CCLD_OPTS and MKC_CHECK_CXXLD_OPTS
    * Introduce new "help" framework, see mkc_imp.help.mk section in man page
    * mkc.minitest.mk: minor fix in target "cleandir"

  Features:
    - add support for C++ (extern "C") to all feature header files
    - add new feature "libl" for libl.a or libfl.a

  Utilities:
    * mkc_install:
      - "move" semantic is disabled forever, so flag -c is silently ignored
      - add manual page
      - flag -l is changed and becomes compatible with NetBSD install(1)
      - actually it is almost completely reimplemented
    * mkc_check_compiler:
      - add man page
      - exit status is 2, if bad option is specified
      - CC defaults to "cc" as the documentation says
      - detects not only compiler type, but also a version
      - cache file name for C compiler type is _mkc_cc_type.*
    * mkc_check_custom:
      - switch to getopts
      - add option -l and support for LDFLAGS and LDADD
      - add new option -t and remove options -p and -n
      - do not use CARGS anymore, use CFLAGS and CPPFLAGS instead
    * mkc_which:
      - add man page
    * mkc_check_version:
      - add man page
    * mkc_get_deps:
      - installed to libexec/ instead of bin/

  Documentation update

  Code clean-ups and minor fixes

diffstat:

 devel/mk-configure/Makefile |   20 +++--
 devel/mk-configure/PLIST    |  152 +++++++++++++++++++++++++------------------
 devel/mk-configure/distinfo |   10 +-
 3 files changed, 106 insertions(+), 76 deletions(-)

diffs (274 lines):

diff -r 029b5926f266 -r 958e2380fb1e devel/mk-configure/Makefile
--- a/devel/mk-configure/Makefile       Wed Feb 19 21:03:41 2020 +0000
+++ b/devel/mk-configure/Makefile       Wed Feb 19 22:03:17 2020 +0000
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.31 2020/01/22 10:53:58 cheusov Exp $
+# $NetBSD: Makefile,v 1.32 2020/02/19 22:03:17 cheusov Exp $
 #
 
-DISTNAME=      mk-configure-0.33.0
-PKGREVISION=   1
+DISTNAME=      mk-configure-0.34.0
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=mk-configure/}
 
@@ -13,7 +12,7 @@
 
 DEPENDS+=      bmake-[0-9]*:../../devel/bmake
 
-USE_LANGUAGES=         c
+USE_LANGUAGES=         c c++
 
 BUILD_TARGET=          all all-doc
 INSTALL_TARGET=                install install-doc
@@ -23,17 +22,24 @@
 MAKE_ENV+=             MANDIR=${PREFIX}/${PKGMANDIR} \
                        SYSCONFDIR=${PKG_SYSCONFDIR} \
                        BMAKE=${PREFIX}/bin/bmake \
-                       MKC_AWK=${AWK:Q}
+                       USE_AWK=${AWK:Q} \
+                       USE_ID=${ID:Q}
 
-AUTO_MKDIRS=           yes
+PLIST_SRC+=            ${WRKDIR}/PLIST-addon
+PLIST_SRC+=            PLIST
 
 EGDIR=                 share/examples/mk-configure
+INSTALLATION_DIRS=     ${EGDIR}
 
 TEST_TARGET=           test
 
 post-install:
        ${CP} -Rp ${WRKSRC}/examples/* ${DESTDIR}${PREFIX}/${EGDIR}
-       ${INSTALL_DATA} ${WRKSRC}/presentation/*.pdf ${DESTDIR}${PREFIX}/share/doc/mk-configure
+       ${INSTALL_DATA} ${WRKSRC}/presentation/*.pdf \
+               ${DESTDIR}${PREFIX}/share/doc/mk-configure
+       ${FIND} ${DESTDIR}${PREFIX}/share/mk-configure/mk | \
+               grep -E 'mkc_imp.(cc|cxx)' | \
+               ${SED} 's;${DESTDIR}${PREFIX}/;;g' > ${WRKDIR}/PLIST-addon
 
 .include "../../mk/bsd.prefs.mk"
 
diff -r 029b5926f266 -r 958e2380fb1e devel/mk-configure/PLIST
--- a/devel/mk-configure/PLIST  Wed Feb 19 21:03:41 2020 +0000
+++ b/devel/mk-configure/PLIST  Wed Feb 19 22:03:17 2020 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.15 2020/01/18 21:23:16 cheusov Exp $
+@comment $NetBSD: PLIST,v 1.16 2020/02/19 22:03:17 cheusov Exp $
 bin/mkc_check_compiler
 bin/mkc_check_custom
 bin/mkc_check_decl
@@ -7,19 +7,23 @@
 bin/mkc_check_prog
 bin/mkc_check_sizeof
 bin/mkc_check_version
-bin/mkc_get_deps
+bin/mkc_compiler_settings
 bin/mkc_install
-bin/mkc_long_lines
-bin/mkc_test_helper
 bin/mkc_which
 bin/mkcmake
 libexec/mk-configure/mkc_check_common.sh
+libexec/mk-configure/mkc_get_deps
+man/man1/mkc_check_compiler.1
 man/man1/mkc_check_custom.1
 man/man1/mkc_check_decl.1
 man/man1/mkc_check_funclib.1
 man/man1/mkc_check_header.1
 man/man1/mkc_check_prog.1
 man/man1/mkc_check_sizeof.1
+man/man1/mkc_check_version.1
+man/man1/mkc_compiler_settings.1
+man/man1/mkc_install.1
+man/man1/mkc_which.1
 man/man1/mkcmake.1
 man/man7/mk-configure.7
 share/doc/mk-configure/FAQ
@@ -31,6 +35,7 @@
 share/doc/mk-configure/TODO
 share/doc/mk-configure/presentation.pdf
 share/examples/mk-configure/Makefile.inc
+share/examples/mk-configure/README
 share/examples/mk-configure/check_compiler_opts/Makefile
 share/examples/mk-configure/check_compiler_opts/expect.out
 share/examples/mk-configure/check_compiler_opts/hello_world.c
@@ -355,6 +360,19 @@
 share/examples/mk-configure/hello_yacc/expect.out
 share/examples/mk-configure/hello_yacc/input.txt
 share/examples/mk-configure/hello_yacc/test.mk
+share/examples/mk-configure/help_target/Makefile
+share/examples/mk-configure/help_target/expect.out
+share/examples/mk-configure/help_target/print_value.c
+share/examples/mk-configure/help_target/test.mk
+share/examples/mk-configure/helpers/Makefile
+share/examples/mk-configure/helpers/mkc_fake_strip
+share/examples/mk-configure/helpers/mkc_long_lines
+share/examples/mk-configure/helpers/mkc_long_lines.in
+share/examples/mk-configure/helpers/mkc_test_helper
+share/examples/mk-configure/helpers/mkc_test_helper2
+share/examples/mk-configure/helpers/mkc_test_helper3
+share/examples/mk-configure/helpers/mkc_test_helper_paths
+share/examples/mk-configure/helpers/mkc_test_nm
 share/examples/mk-configure/pkgconfig3/Makefile
 share/examples/mk-configure/pkgconfig3/expect.out
 share/examples/mk-configure/pkgconfig3/pkgconfig3.c
@@ -422,6 +440,7 @@
 share/examples/mk-configure/tools2/tools/prog4/Makefile
 share/examples/mk-configure/tools2/tools/prog4/prog4.c
 share/mk-configure/builtins/easy.c
+share/mk-configure/builtins/easy.cc
 share/mk-configure/builtins/endianness
 share/mk-configure/builtins/prog_bison
 share/mk-configure/builtins/prog_flex
@@ -442,6 +461,7 @@
 share/mk-configure/features/mkc_STAILQ.h
 share/mk-configure/features/mkc_TAILQ.h
 share/mk-configure/features/mkc_err.h
+share/mk-configure/features/mkc_externc.h
 share/mk-configure/features/mkc_fgetln.h
 share/mk-configure/features/mkc_getdelim.h
 share/mk-configure/features/mkc_getline.h
@@ -459,63 +479,67 @@
 share/mk-configure/features/strlcpy/strlcpy.c
 share/mk-configure/features/strndup/strndup.c
 share/mk-configure/features/warn/warn.c
-share/mkc-mk/mkc.conf.mk
-share/mkc-mk/mkc.configure.mk
-share/mkc-mk/mkc.files.mk
-share/mkc-mk/mkc.init.mk
-share/mkc-mk/mkc.intexts.mk
-share/mkc-mk/mkc.lib.mk
-share/mkc-mk/mkc.minitest.mk
-share/mkc-mk/mkc.mk
-share/mkc-mk/mkc.pkg-config.mk
-share/mkc-mk/mkc.prog.mk
-share/mkc-mk/mkc.subdir.mk
-share/mkc-mk/mkc.subprj.mk
-share/mkc-mk/mkc.subprjs.mk
-share/mkc-mk/mkc_imp.arch.mk
-share/mkc-mk/mkc_imp.checkprogs.mk
-share/mkc-mk/mkc_imp.conf-cleanup.mk
-share/mkc-mk/mkc_imp.conf-final.mk
-share/mkc-mk/mkc_imp.dep.mk
-share/mkc-mk/mkc_imp.dpvars.mk
-share/mkc-mk/mkc_imp.f_CIRCLEQ.mk
-share/mkc-mk/mkc_imp.f_LIST.mk
-share/mkc-mk/mkc_imp.f_RB.mk
-share/mkc-mk/mkc_imp.f_SIMPLEQ.mk
-share/mkc-mk/mkc_imp.f_SLIST.mk
-share/mkc-mk/mkc_imp.f_SPLAY.mk
-share/mkc-mk/mkc_imp.f_STAILQ.mk
-share/mkc-mk/mkc_imp.f_TAILQ.mk
-share/mkc-mk/mkc_imp.f_err.mk
-share/mkc-mk/mkc_imp.f_fgetln.mk
-share/mkc-mk/mkc_imp.f_getdelim.mk
-share/mkc-mk/mkc_imp.f_getline.mk
-share/mkc-mk/mkc_imp.f_libdl.mk
-share/mkc-mk/mkc_imp.f_libm.mk
-share/mkc-mk/mkc_imp.f_progname.mk
-share/mkc-mk/mkc_imp.f_strlcat.mk
-share/mkc-mk/mkc_imp.f_strlcpy.mk
-share/mkc-mk/mkc_imp.f_strndup.mk
-share/mkc-mk/mkc_imp.f_warn.mk
-share/mkc-mk/mkc_imp.files.mk
-share/mkc-mk/mkc_imp.final.mk
-share/mkc-mk/mkc_imp.inc.mk
-share/mkc-mk/mkc_imp.info.mk
-share/mkc-mk/mkc_imp.intexts.mk
-share/mkc-mk/mkc_imp.lib.mk
-share/mkc-mk/mkc_imp.links.mk
-share/mkc-mk/mkc_imp.lua.mk
-share/mkc-mk/mkc_imp.man.mk
-share/mkc-mk/mkc_imp.mk
-share/mkc-mk/mkc_imp.obj.mk
-share/mkc-mk/mkc_imp.objdir.mk
-share/mkc-mk/mkc_imp.pkg-config.mk
-share/mkc-mk/mkc_imp.platform.sys.mk
-share/mkc-mk/mkc_imp.pod.mk
-share/mkc-mk/mkc_imp.preinit.mk
-share/mkc-mk/mkc_imp.prog.mk
-share/mkc-mk/mkc_imp.rules.mk
-share/mkc-mk/mkc_imp.scripts.mk
-share/mkc-mk/mkc_imp.subprj.mk
-share/mkc-mk/mkc_imp.vars.mk
-share/mkc-mk/sys.mk
+share/mk-configure/mk/mkc.compiler_settings.mk
+share/mk-configure/mk/mkc.conf.mk
+share/mk-configure/mk/mkc.configure.mk
+share/mk-configure/mk/mkc.files.mk
+share/mk-configure/mk/mkc.init.mk
+share/mk-configure/mk/mkc.intexts.mk
+share/mk-configure/mk/mkc.lib.mk
+share/mk-configure/mk/mkc.minitest.mk
+share/mk-configure/mk/mkc.mk
+share/mk-configure/mk/mkc.pkg-config.mk
+share/mk-configure/mk/mkc.prog.mk
+share/mk-configure/mk/mkc.subdir.mk
+share/mk-configure/mk/mkc.subprj.mk
+share/mk-configure/mk/mkc.subprjs.mk
+share/mk-configure/mk/mkc_imp.arch.mk
+share/mk-configure/mk/mkc_imp.checkprogs.mk
+share/mk-configure/mk/mkc_imp.compiler_settings.mk
+share/mk-configure/mk/mkc_imp.compiler_type.mk
+share/mk-configure/mk/mkc_imp.conf-cleanup.mk
+share/mk-configure/mk/mkc_imp.conf-final.mk
+share/mk-configure/mk/mkc_imp.dep.mk
+share/mk-configure/mk/mkc_imp.dpvars.mk
+share/mk-configure/mk/mkc_imp.f_CIRCLEQ.mk
+share/mk-configure/mk/mkc_imp.f_LIST.mk
+share/mk-configure/mk/mkc_imp.f_RB.mk
+share/mk-configure/mk/mkc_imp.f_SIMPLEQ.mk
+share/mk-configure/mk/mkc_imp.f_SLIST.mk
+share/mk-configure/mk/mkc_imp.f_SPLAY.mk
+share/mk-configure/mk/mkc_imp.f_STAILQ.mk
+share/mk-configure/mk/mkc_imp.f_TAILQ.mk
+share/mk-configure/mk/mkc_imp.f_err.mk
+share/mk-configure/mk/mkc_imp.f_fgetln.mk
+share/mk-configure/mk/mkc_imp.f_getdelim.mk
+share/mk-configure/mk/mkc_imp.f_getline.mk
+share/mk-configure/mk/mkc_imp.f_libdl.mk
+share/mk-configure/mk/mkc_imp.f_libl.mk
+share/mk-configure/mk/mkc_imp.f_libm.mk
+share/mk-configure/mk/mkc_imp.f_progname.mk
+share/mk-configure/mk/mkc_imp.f_strlcat.mk
+share/mk-configure/mk/mkc_imp.f_strlcpy.mk
+share/mk-configure/mk/mkc_imp.f_strndup.mk
+share/mk-configure/mk/mkc_imp.f_warn.mk
+share/mk-configure/mk/mkc_imp.files.mk
+share/mk-configure/mk/mkc_imp.final.mk
+share/mk-configure/mk/mkc_imp.help.mk
+share/mk-configure/mk/mkc_imp.inc.mk
+share/mk-configure/mk/mkc_imp.info.mk
+share/mk-configure/mk/mkc_imp.intexts.mk
+share/mk-configure/mk/mkc_imp.lib.mk
+share/mk-configure/mk/mkc_imp.links.mk
+share/mk-configure/mk/mkc_imp.lua.mk
+share/mk-configure/mk/mkc_imp.man.mk
+share/mk-configure/mk/mkc_imp.mk
+share/mk-configure/mk/mkc_imp.obj.mk
+share/mk-configure/mk/mkc_imp.objdir.mk
+share/mk-configure/mk/mkc_imp.pkg-config.mk
+share/mk-configure/mk/mkc_imp.platform.sys.mk
+share/mk-configure/mk/mkc_imp.pod.mk
+share/mk-configure/mk/mkc_imp.preinit.mk
+share/mk-configure/mk/mkc_imp.prog.mk
+share/mk-configure/mk/mkc_imp.rules.mk
+share/mk-configure/mk/mkc_imp.scripts.mk
+share/mk-configure/mk/mkc_imp.subprj.mk
+share/mk-configure/mk/sys.mk
diff -r 029b5926f266 -r 958e2380fb1e devel/mk-configure/distinfo
--- a/devel/mk-configure/distinfo       Wed Feb 19 21:03:41 2020 +0000
+++ b/devel/mk-configure/distinfo       Wed Feb 19 22:03:17 2020 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.23 2020/01/18 21:23:16 cheusov Exp $
+$NetBSD: distinfo,v 1.24 2020/02/19 22:03:17 cheusov Exp $
 
-SHA1 (mk-configure-0.33.0.tar.gz) = 810ccb330fb66803a14e4ca607001bed3d964313
-RMD160 (mk-configure-0.33.0.tar.gz) = 2c5868f5ba14b39c058b5ba93f600fbe8572a694
-SHA512 (mk-configure-0.33.0.tar.gz) = 0d76c07f1d0faa4698dfd3e62fe41abbfa5e1e8a4bb687766c370065db35ebdc807de774d21f4c189bbeb77a8c3e2acec7022c25f4877d685c695ee4524bea3c
-Size (mk-configure-0.33.0.tar.gz) = 313164 bytes
+SHA1 (mk-configure-0.34.0.tar.gz) = 90479abd74ac632ea17178ecd75037e4b20855c8
+RMD160 (mk-configure-0.34.0.tar.gz) = c1d933e42e24da58c1b1007bef14c69afc9021b7
+SHA512 (mk-configure-0.34.0.tar.gz) = f29aa2455dcaa5b152121279ca6d4bc326ac4f5cf31a6de622c13ddde277ef243ba1399327abc67634ea7cb81f8064b9c61d20fe698166b179b96ad6dfa0c920
+Size (mk-configure-0.34.0.tar.gz) = 325518 bytes



Home | Main Index | Thread Index | Old Index