diff options
author | cheusov <cheusov@pkgsrc.org> | 2014-01-01 23:59:27 +0000 |
---|---|---|
committer | cheusov <cheusov@pkgsrc.org> | 2014-01-01 23:59:27 +0000 |
commit | edaebb0bb09f1921757eef5d17d78f9d2ab347ae (patch) | |
tree | 5b56b520c8ed7b221e318fc820318bb294ea165d /devel/mk-configure | |
parent | 931b3ad76ebc6952ae8d5f56372db1575400b25c (diff) | |
download | pkgsrc-edaebb0bb09f1921757eef5d17d78f9d2ab347ae.tar.gz |
mk-configure updated to 0.25.0
Build infrastructure for mk-c itself was completely reimplemented.
Now it looks much better and is more flexible for further extensions.
NetBSD version of mkdep(1), traditional BSD mkdep(1) or
makedepend(1) is needed at build time.
LDCOMPILER defaults to "yes".
Variable TARGETS is now visible to users and is documented. It
contains all recursive targets and may be used for adding user's
functionality to mk-c.
FIX: Parallel installation ("mkcmake install -jN") now works
correctly. "installdirs" is activated before "install". Report by
Michael Crogan.
During build object directories are created automatically by default
when MAKEOBJDIR or MAKEOBJDIRPREFIX are set. New recursive target
"obj" and variable MKOBJDIRS were introduced.
Report by Michael Crogan.
New variable MKRELOBJDIR was introduced. With its help one can
create object directories relative to top-level object directory
(like MAKEOBJDIRPREFIX but without top-level ${.CURDIR} in paths).
Thanks to Michael Crogan.
target "depend":
- FIX. Original implementation relied on NetBSD version of
mkdep(1). So, it didn't work on Linux, FreeBSD and others with
original BSD mkdep(1). Type of mkdep(1) is detected at
mk-configure build time. Report by Michael Crogan.
New variables LN, LN_S, MKDIR, RM, CLEANFILES_CMD, CLEANDIRS_CMD,
UNINSTALL, MAKEDEPEND, OBJTOP, CC_PREFIX, CXX_PREFIX were
introduced.
New variable NODEPS was introduced. With its help one can cut off
the dependency graph for particular targets.
New variable BMAKE_REQD was introduced.
New variable SRCTOP was introduced. With its help
"mkcmake -C subdir target" may work just like "mkcmake target-subdir".
New variables CFLAGS.dflt.${CC_TYPE} and CXXFLAGS.dflt.${CXX_TYPE}
were introduced. They default to -Qunused-arguments
for clang and clang++.
mkc.init.mk can be invoked by users directly for setting all
required variables and further checks (CC_TYPE, LD_TYPE, OPSYS etc.).
mkc_imp.links.mk:
- This module was reimplemented from scratch.
Bug with parallel installation (LINKS and MLINKS) was fixed.
mkc.minitest.mk:
- new variable TEST_PREREQS was introduced.
mkc_imp.inc.mk: fix for ${INCS} installation problem happened when
headers are built in ${.OBJDIR}. Report by Jan Smydke.
mkc_imp.info.mk:
- fix for MKINSTALL=no. "installdirs" unexpectedly created target
directories.
mkc.configure.mk:
- fix issue with MKC_CHECK_CUSTOM when ${.OBJDIR} != ${.CURDIR}
- MKC_CHECK_PROGS: PROG.<prog> is set even if full path was
specified. In addition existence and executability of the
specified file is always checked.
- fix for MKC_SOURCE_FUNCLIBS. Not all objects were cleaned
correctly by target "clean". Now objects are added to CLEANFILES
unconditionally.
- negative results for MKC_REQUIRE_* are not cached. This gives
users ability to fix the problem by changing the environment
and try again.
- MKC_CHECK_BUILTINS. Additional builtin checks were added:
"prog_mkdep" and "prog_nbmkdep" for original BSD mkdep(1) and
NetBSD version of mkdep(1) respectively.
mkc_imp.intexts.mk fixes:
- Targets "clean" and "cleandir" do not fail anymore if INTEXTS_REPLS
contains empty variables.
- Target "all" works correctly if INFILES or INSCRIPTS contain
files with directories.
mkc.sub{dir,prj}.mk:
- ${MAKEFLAGS} is passed to recursive ${MAKE}s.
- {nodeps-,subdir-,}dir:T are also targets, that is, one can also
use the last component of subdirectory as_a_part_of/as_a_whole
target. If you want to disable this, set SHORTPRJNAME to "no".
mkc_imp.subdir.mk was reimplemented using mkc_imp.subprj.mk
mkc_imp.dep.mk:
- documentation for this module was added.
- support for SHRTOUT=yes
- new variable DPSRCS was introduced
- MKDEP_SUFFIXES also contains .os and .op. Report by Michael Crogan.
- Target "clean" does not remove .depend and .d files.
Target "cleandir" does. NetBSD mk files work the same way.
Report by Michael Crogan.
MKPIE/SHLIB_*:
- s/-KPIC/-xcode=pic32/ for SunStudio compilers
MKSSP=yes:
- Support for IBM XL Compiler was added (not tested due to lack of such
- iron)
- Support for Intel C/C++ Compiler was added
Documentation fixes, updates and improvements. A lot of new
examples/. A lot of new regression tests.
Tools:
Long option --help was removed from all utilities
- mkc_install:
- fix for problem with parallel "installdirs" (race condition).
- Options -t and -b were removed.
- mkc_check_prog: option -i is documented in man page
- mkc_check_compiler: workarounds for buggy SunStudio C++
compiler ("CC -E -" exits with error).
All test are run with MKCATPAGES=no by default.
myprojects.pdf: pipestatus also uses mk-configure.
Diffstat (limited to 'devel/mk-configure')
-rw-r--r-- | devel/mk-configure/Makefile | 22 | ||||
-rw-r--r-- | devel/mk-configure/PLIST | 59 | ||||
-rw-r--r-- | devel/mk-configure/distinfo | 9 | ||||
-rw-r--r-- | devel/mk-configure/patches/patch-mkc__imp.own.mk | 13 |
4 files changed, 66 insertions, 37 deletions
diff --git a/devel/mk-configure/Makefile b/devel/mk-configure/Makefile index 2b5bf307400..14ca6956ca1 100644 --- a/devel/mk-configure/Makefile +++ b/devel/mk-configure/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.14 2013/04/06 08:39:31 cheusov Exp $ +# $NetBSD: Makefile,v 1.15 2014/01/01 23:59:27 cheusov Exp $ # -DISTNAME= mk-configure-0.24.0 -PKGREVISION= 1 +DISTNAME= mk-configure-0.25.0 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mk-configure/} \ http://mova.org/~cheusov/pub/mk-configure/ @@ -14,9 +13,12 @@ LICENSE= modified-bsd DEPENDS+= bmake-[0-9]*:../../devel/bmake -USE_LANGUAGES= # no languages +USE_LANGUAGES= c -DOC_FILES= doc/presentation.pdf +BUILD_TARGET= all all-doc +INSTALL_TARGET= install install-doc + +MAKE_PROGRAM= ${PREFIX}/bin/bmake MAKE_ENV+= MANDIR=${PREFIX}/${PKGMANDIR} \ SYSCONFDIR=${PKG_SYSCONFDIR} \ @@ -24,15 +26,11 @@ MAKE_ENV+= MANDIR=${PREFIX}/${PKGMANDIR} \ AUTO_MKDIRS= yes -PKGDOCDIR= share/doc/mk-configure EGDIR= share/examples/mk-configure -#TEST_TARGET= test +TEST_TARGET= test post-install: -.for i in ${DOC_FILES} - ${INSTALL_DATA} ${WRKSRC}/"${i}" ${DESTDIR}${PREFIX}/${PKGDOCDIR} -.endfor cp -Rp ${WRKSRC}/examples/* ${DESTDIR}${PREFIX}/${EGDIR} .include "../../mk/bsd.prefs.mk" @@ -44,4 +42,8 @@ REPLACE.awk.new= /usr/xpg4/bin/awk REPLACE_FILES.awk= mkc_check_version .endif +.if ${OPSYS} != NetBSD && ${OPSYS} != FreeBSD && ${OPSYS} != OpenBSD && ${OPSYS} != DragonFly && ${OPSYS} != MirBSD +DEPENDS+= bmkdep-[0-9]*:../../devel/bmkdep +.endif + .include "../../mk/bsd.pkg.mk" diff --git a/devel/mk-configure/PLIST b/devel/mk-configure/PLIST index 65be89f4e9d..4e8a8a3abe9 100644 --- a/devel/mk-configure/PLIST +++ b/devel/mk-configure/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.5 2013/03/08 11:35:14 cheusov Exp $ +@comment $NetBSD: PLIST,v 1.6 2014/01/01 23:59:27 cheusov Exp $ bin/mkc_check_common.sh bin/mkc_check_compiler bin/mkc_check_custom @@ -20,14 +20,23 @@ man/man1/mkc_check_prog.1 man/man1/mkc_check_sizeof.1 man/man1/mkcmake.1 man/man7/mk-configure.7 -share/doc/mk-configure/COPYRIGHT share/doc/mk-configure/FAQ +share/doc/mk-configure/LICENSE share/doc/mk-configure/NEWS share/doc/mk-configure/README share/doc/mk-configure/TODO -share/doc/mk-configure/presentation.pdf share/examples/mk-configure/Makefile share/examples/mk-configure/Makefile.inc +share/examples/mk-configure/hello_TARGETS/Makefile +share/examples/mk-configure/hello_TARGETS/Makefile.inc +share/examples/mk-configure/hello_TARGETS/expect.out +share/examples/mk-configure/hello_TARGETS/hello1/Makefile +share/examples/mk-configure/hello_TARGETS/hello1/hello1.c +share/examples/mk-configure/hello_TARGETS/hello1/hello1.pod +share/examples/mk-configure/hello_TARGETS/hello2/Makefile +share/examples/mk-configure/hello_TARGETS/hello2/hello2.c +share/examples/mk-configure/hello_TARGETS/hello2/hello2.pod +share/examples/mk-configure/hello_TARGETS/test.mk share/examples/mk-configure/hello_calc2/Makefile share/examples/mk-configure/hello_calc2/expect.out share/examples/mk-configure/hello_calc2/expressions.txt @@ -125,7 +134,7 @@ share/examples/mk-configure/hello_lua/bar.lua share/examples/mk-configure/hello_lua/baz.c share/examples/mk-configure/hello_lua/expect.out share/examples/mk-configure/hello_lua/foo.lua -share/examples/mk-configure/hello_lua/foobar +share/examples/mk-configure/hello_lua/foobar.in share/examples/mk-configure/hello_lua/test.mk share/examples/mk-configure/hello_lua2/Makefile share/examples/mk-configure/hello_lua2/bar.lua @@ -195,6 +204,7 @@ share/examples/mk-configure/hello_sizeof/sizeof_test.c share/examples/mk-configure/hello_sizeof/test.mk share/examples/mk-configure/hello_strlcpy/Makefile share/examples/mk-configure/hello_strlcpy/expect.out +share/examples/mk-configure/hello_strlcpy/getline.c share/examples/mk-configure/hello_strlcpy/hello.c share/examples/mk-configure/hello_strlcpy/input.in share/examples/mk-configure/hello_strlcpy/strlcpy.c @@ -270,6 +280,10 @@ share/examples/mk-configure/tools/libs/foo/Makefile share/examples/mk-configure/tools/libs/foo/foo.c share/examples/mk-configure/tools/libs/foo/foo.h share/examples/mk-configure/tools/libs/foo/linkme.mk +share/examples/mk-configure/tools/libs/qux/Makefile +share/examples/mk-configure/tools/libs/qux/linkme.mk +share/examples/mk-configure/tools/libs/qux/qux.c +share/examples/mk-configure/tools/libs/qux/qux.h.in share/examples/mk-configure/tools/test.mk share/examples/mk-configure/tools/tools/prog1/Makefile share/examples/mk-configure/tools/tools/prog1/prog1.c @@ -277,6 +291,35 @@ share/examples/mk-configure/tools/tools/prog2/Makefile share/examples/mk-configure/tools/tools/prog2/prog2.c share/examples/mk-configure/tools/tools/prog3/Makefile share/examples/mk-configure/tools/tools/prog3/prog3.c +share/examples/mk-configure/tools/tools/prog4/Makefile +share/examples/mk-configure/tools/tools/prog4/prog4.c +share/examples/mk-configure/tools2/Makefile +share/examples/mk-configure/tools2/expect.out +share/examples/mk-configure/tools2/libs/bar/Makefile +share/examples/mk-configure/tools2/libs/bar/bar.c +share/examples/mk-configure/tools2/libs/bar/bar.h +share/examples/mk-configure/tools2/libs/bar/linkme.mk +share/examples/mk-configure/tools2/libs/foo/Makefile +share/examples/mk-configure/tools2/libs/foo/foo.c +share/examples/mk-configure/tools2/libs/foo/foo.h +share/examples/mk-configure/tools2/libs/foo/linkme.mk +share/examples/mk-configure/tools2/libs/qux/Makefile +share/examples/mk-configure/tools2/libs/qux/linkme.mk +share/examples/mk-configure/tools2/libs/qux/qux.c +share/examples/mk-configure/tools2/libs/qux/qux.h.in +share/examples/mk-configure/tools2/test.mk +share/examples/mk-configure/tools2/tests/prog1/Makefile +share/examples/mk-configure/tools2/tests/prog2/Makefile +share/examples/mk-configure/tools2/tests/prog3/Makefile +share/examples/mk-configure/tools2/tests/prog4/Makefile +share/examples/mk-configure/tools2/tools/prog1/Makefile +share/examples/mk-configure/tools2/tools/prog1/prog1.c +share/examples/mk-configure/tools2/tools/prog2/Makefile +share/examples/mk-configure/tools2/tools/prog2/prog2.c +share/examples/mk-configure/tools2/tools/prog3/Makefile +share/examples/mk-configure/tools2/tools/prog3/prog3.c +share/examples/mk-configure/tools2/tools/prog4/Makefile +share/examples/mk-configure/tools2/tools/prog4/prog4.c share/mk-configure/custom/endianess share/mk-configure/custom/prog_bison share/mk-configure/custom/prog_flex @@ -285,11 +328,11 @@ share/mk-configure/custom/prog_gm4 share/mkc-mk/configure.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.own.mk share/mkc-mk/mkc.pkg-config.mk share/mkc-mk/mkc.prog.mk share/mkc-mk/mkc.subdir.mk @@ -301,22 +344,20 @@ 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.init.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.own.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.scripts.mk -share/mkc-mk/mkc_imp.subdir.mk share/mkc-mk/mkc_imp.subprj.mk -share/mkc-mk/mkc_imp.sys.mk share/mkc-mk/mkc_imp.vars.mk share/mkc-mk/sys.mk diff --git a/devel/mk-configure/distinfo b/devel/mk-configure/distinfo index 9a151159ab7..11c18681b7b 100644 --- a/devel/mk-configure/distinfo +++ b/devel/mk-configure/distinfo @@ -1,6 +1,5 @@ -$NetBSD: distinfo,v 1.9 2013/04/06 08:39:31 cheusov Exp $ +$NetBSD: distinfo,v 1.10 2014/01/01 23:59:27 cheusov Exp $ -SHA1 (mk-configure-0.24.0.tar.gz) = 4f429eca4c6cbbd19a3176bed902c703503dd352 -RMD160 (mk-configure-0.24.0.tar.gz) = 445ea46d9a79fc305270d561efca6bceccce8c55 -Size (mk-configure-0.24.0.tar.gz) = 237471 bytes -SHA1 (patch-mkc__imp.own.mk) = 1c47784bc620f9576c53163e4ce65b50306c07a6 +SHA1 (mk-configure-0.25.0.tar.gz) = 06736b3fb45e1810ba494a1e8f9b048a89354794 +RMD160 (mk-configure-0.25.0.tar.gz) = ad727b762285166fccde5809c453bee937768104 +Size (mk-configure-0.25.0.tar.gz) = 252755 bytes diff --git a/devel/mk-configure/patches/patch-mkc__imp.own.mk b/devel/mk-configure/patches/patch-mkc__imp.own.mk deleted file mode 100644 index 1f37978cca8..00000000000 --- a/devel/mk-configure/patches/patch-mkc__imp.own.mk +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-mkc__imp.own.mk,v 1.1 2013/04/06 08:39:31 cheusov Exp $ - ---- mkc_imp.own.mk.orig 2013-03-08 10:39:34.000000000 +0000 -+++ mkc_imp.own.mk -@@ -71,7 +71,7 @@ ROOT_GROUP.MirBSD = wheel - ROOT_GROUP.HP-UX = bin - ROOT_GROUP.OSF1 = bin - ROOT_GROUP.Interix = +Administrators --ROOR_GROUP.Haiku = root -+ROOT_GROUP.Minix = operator - - ROOT_USER.HP-UX = bin - ROOT_USER.OSF1 = bin |