Subject: CVS commit: wip/mk-configure
From: Aleksey Cheusov
Date: 2009-09-05 15:50:43
Message id: E1MjvfO-0004lA-M1@ddv4jf1.ch3.sourceforge.com

Log Message:

updated to 0.11.0

  Major changes:

  mk-configure(7)

  Simon Gerrary's mk-files is not supported anymore.
  Use pkgsrc mk-files!

  Regression tests have been reorganized and significantly improved.
  All examples become regression tests.  Lots of new tests.
  Run 'bmake test' to run them.

  mk-configure uses its own mkc.*.mk scripts to build and install
  itself.  As a result Free/OpenBSD make cannot be used anymore for
  building and installations. Use bmake!

  ADDED: FAQ document to answer frequently asked questions.
  Thanks to Michael Shigorin for corrections.

  New simple module for regression tests: mkc.minitest.mk.  Besides
  its simplicity it is quite useful. mk-configure uses it for testing
  itself.

  Initial version of mkc.pkg-config.mk module
  See examples/hello_glib2 for the sample of use.
  Note that it is not complete yet.

  mkc.configure.mk and configure.mk:

      - checks are not run if appropriate HAVE_xxx.yyy variable is
        already defined. This makes possible to effectively build
        software in a well defined stable environment.
        Ex: bmake -f predefined_settings.mk -f Makefile all

      - ADDED: MKC_CHECK_TYPES for checking for types.
        See the documentation in configure.mk.in and examples/.

      - ADDED: MKC_CHECK_CUSTOM for custom user's checks.
        Custom check is a user's code.
        Check itself -- is this code compilable or not.
        See the documentation in configure.mk.in and examples/.

      - Behaviour of MKC_CHECK_MEMBERS changed: Now "struct " prefix
        is not hardcoded. This gives an ability to check members in
        struct-s, enum-s and typedef-s.

      - NEW: MKC_REQUIRE_HEADERS, MKC_REQUIRE_FUNCLIBS,
        MKC_REQUIRE_DEFINES, MKC_REQUIRE_TYPES, MKC_REQUIRE_VARS,
        MKC_REQUIRE_MEMBERS, MKC_REQUIRE_CUSTOM and
        MKC_REQUIRE_FUNCS<N>.  If these checks failure, bmake exits
        with error and prints an error message.  See configure.mk.in
        for the documentation and examples/ for the samples of use.

      - NEW: MKC_CHECK_PROGS and MKC_REQUIRE_PROGS.
        See configure.mk.in for the documentation and
        examples/ for the samples of use.

      - NEW: targets "distclean" and "cleandir" removes \ 
_mkc_* cache files.

      - NEW: target "configure" runs all checks
        and creates _mkc_ cache files.

      - all checks are disabled for targets "clean", \ 
"cleandir" and
        "distclean".

      -  Cache file names changed. Now they are:
           _mkc_type_<type>, _mkc_sizeof_<type>, \ 
_mkc_header_<header>,
           _mkc_funclib_<funclib>, _mkc_funcN_<func>,
           _mkc_variable_<variable>, _mkc_custom_<custom-check>,
           _mkc_prog_<progname>, _mkc_define_<define>, \ 
_mkc_member_<member>

  mkc.info.mk and mkc.man.mk are removed. They are included automatically
  from mkc.prog.mk, mkc.lib.mk and mkc.files.mk if needed.

  mkc.prog.mk, mkc.lib.mk, mkc.files.mk and mkc.subdir.mk:

      - NEW: target "uninstall" is supported.

      - performance improvements. "Hard" sections of mkc.common.mk are
      activated if and only if appropriate target is in action.

      - FIX: target "install-dirs" now works correctly with MAN
      containing .N pages where N is not 1.

      - FIX: target "install-dirs" now takes into account LINKS and
        SYMLINKS.

      - Better support for TEXINFO:
          - "uninstall" target takes TEXINFO into account.
          - "clean" target removes generated .info files.

      - mkc.{prog,lib,files}.mk supports a target "test".  By default
        it does nothing.  The target "test" of mkc.subdir.mk runs
        'bmake test' for each SUBDIR. If you want to define your own
        "test" target overriding the default one, define it in your
        project's Makefile before any .include <mkc.*.mk> directive.

      - MKC_REQD variable

  Makefile of mk-configure: README, NEWS, TODO, FAQ and COPYRIGHT
  files are also installed unless EXTRAFILES is set to an empty string.

  "mkc_check_sizeof" and "mkc_check_decl type" don't create cache
  files with spaces in its name anymore.  Space inside a filename is
  replaced with symbol ~ (tilde).

  FIXED: mkc_check_custom, mkc_check_decl, mkc_check_funclib,
  mkc_check_header and mkc_check_sizeof failed if CC contains space.
  Thanks to Vitaly Lipatov for the report.

  mkc_check_sizeof now works drammatically faster.

  MKHTML defaults to "no".

  mkc_check_sizeof, mkc_check_custom:
      - fixes for problems with Solaris' /bin/sh

  Other fixes and improvements.

Files:
RevisionActionfile
1.10modifywip/mk-configure/Makefile
1.6modifywip/mk-configure/PLIST
1.5modifywip/mk-configure/distinfo