pkgsrc/devel/kyua-cli/Makefile

49 lines
1.2 KiB
Makefile
Raw Normal View History

# $NetBSD: Makefile,v 1.18 2013/12/08 01:21:59 jmmv Exp $
#
DISTNAME= kyua-cli-0.8
CATEGORIES= devel
MASTER_SITES= http://kyua.googlecode.com/files/
MAINTAINER= jmmv@NetBSD.org
HOMEPAGE= http://code.google.com/p/kyua/
COMMENT= Kyua (automated testing framework) - Command line interface
LICENSE= modified-bsd
GNU_CONFIGURE= yes
MAKE_JOBS_SAFE= yes
USE_LANGUAGES= c++
Update to 0.6: Experimental version released on February 22nd, 2013. * Issue 36: Changed 'kyua help' to not fail when the configuration file is bogus. Help should always work. * Issue 37: Simplified the syntax() calls in configuration and Kyuafile files to only specify the requested version instead of also the format name. The format name is implied by the file being loaded, so there is no use in the caller having to specify it. The version number of these file formats has been bumped to 2. * Issue 39: Added per-test-case metadata values to the HTML reports. * Issue 40: Rewrote the documentation as manual pages and removed the previous GNU Info document. * Issue 47: Started using the independent testers in the kyua-testers package to run the test cases. Kyua does not implement the logic to invoke test cases any more, which provides for better modularity, extensibility and robustness. * Issue 57: Added support to specify arbitrary metadata properties for test programs right from the Kyuafile. This is to make plain test programs more versatile, by allowing them to specify any of the requirements (allowed architectures, required files, etc.) supported by Kyua. * Reduced automatic screen line wrapping of messages to the 'help' command and the output of tables by 'db-exec'. Wrapping any other messages (specially anything going to stderr) was very annoying because it prevented natural copy/pasting of text. * Increased the granularity of the error codes returned by kyua(1) to denote different error conditions. This avoids the overload of '1' to indicate both "expected" errors from specific subcommands and unexpected errors caused by the internals of the code. The manual now correctly explain how the exit codes behave on a command basis. * Optimized the database schema to make report generation almost instantaneous. * Bumped the database schema to 2. The database now records the metadata of both test programs and test cases generically, without knowledge of their interface. * Added the 'db-migrate' command to provide a mechanism to upgrade a database with an old schema to the current schema. * Removed the GDB build-time configuration variable. This is now part of the kyua-testers package. * Rewrote the Kyuafile parsing code in C++, which results in a much simpler implementation. As a side-effect, this gets rid of the external Lua files required by 'kyua', which in turn make the tool self-contained. * Added caching of various configure test results (particularly in those tests that need to execute a test program) so that cross-compilers can predefine the results of the tests without having to run the executables.
2013-02-23 04:37:40 +01:00
USE_TOOLS= pkg-config
Update to 0.4. Other than the upgrade itself, this also adds a new 'tests' option to the package to indicate whether the Kyua-specific tests should be built or not. I do not recommend disabling their build, but not specifiying the 'tests' option cuts down the build time significantly. The major changes since 0.3 are: * Added the 'report-html' command to generate HTML reports of the execution of any recorded action. * Changed the '--output' flag of the 'report' command to only take a path to the target file, not its format. Different formats are better supported by implementing different subcommands, as the options they may receive will vary from format to format. * Added a '--with-atf' flag to the configure script to control whether the ATF tests get built or not. May be useful for packaging systems that do not have ATF in them yet. Disabling ATF also cuts down the build time of Kyua significantly, but with the obvious drawbacks. * Grouped 'kyua' subcommands by topic both in the output of 'help' and in the documentation. In general, the user needs to be aware of commands that rely on a current project and those commands that rely purely on the database to generate reports. * Made 'help' print the descriptions of options and commands properly tabulated. * Changed most informational messages to automatically wrap on screen boundaries. * Rewrote the configuration file parsing module for extensibility. This will allow future versions of Kyua to provide additional user-facing options in the configuration file. No syntax changes have been made, so existing configuration files (version 1) will continue to be parsed without problems. There is one little exception though: all variables under the top-level 'test_suites' tree must be declared as strings. Similarly, the '-v' and '--variable' flags to the command line must now carry a 'test_suites.' prefix when referencing any variables under such tree.
2012-06-07 03:13:58 +02:00
PKG_OPTIONS_VAR= PKG_OPTIONS.kyua-cli
PKG_SUPPORTED_OPTIONS= tests
PKG_SUGGESTED_OPTIONS= tests
CONFIGURE_ARGS+= KYUA_CONFSUBDIR=
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --without-doxygen
PKG_SYSCONFSUBDIR= kyua
Update to 0.4. Other than the upgrade itself, this also adds a new 'tests' option to the package to indicate whether the Kyua-specific tests should be built or not. I do not recommend disabling their build, but not specifiying the 'tests' option cuts down the build time significantly. The major changes since 0.3 are: * Added the 'report-html' command to generate HTML reports of the execution of any recorded action. * Changed the '--output' flag of the 'report' command to only take a path to the target file, not its format. Different formats are better supported by implementing different subcommands, as the options they may receive will vary from format to format. * Added a '--with-atf' flag to the configure script to control whether the ATF tests get built or not. May be useful for packaging systems that do not have ATF in them yet. Disabling ATF also cuts down the build time of Kyua significantly, but with the obvious drawbacks. * Grouped 'kyua' subcommands by topic both in the output of 'help' and in the documentation. In general, the user needs to be aware of commands that rely on a current project and those commands that rely purely on the database to generate reports. * Made 'help' print the descriptions of options and commands properly tabulated. * Changed most informational messages to automatically wrap on screen boundaries. * Rewrote the configuration file parsing module for extensibility. This will allow future versions of Kyua to provide additional user-facing options in the configuration file. No syntax changes have been made, so existing configuration files (version 1) will continue to be parsed without problems. There is one little exception though: all variables under the top-level 'test_suites' tree must be declared as strings. Similarly, the '-v' and '--variable' flags to the command line must now carry a 'test_suites.' prefix when referencing any variables under such tree.
2012-06-07 03:13:58 +02:00
.include "../../mk/bsd.options.mk"
.if $(PKG_OPTIONS:Mtests)
CONFIGURE_ARGS+= --with-atf
PLIST_SUBST+= TESTS=
. include "../../devel/atf-libs/buildlink3.mk"
Update to 0.4. Other than the upgrade itself, this also adds a new 'tests' option to the package to indicate whether the Kyua-specific tests should be built or not. I do not recommend disabling their build, but not specifiying the 'tests' option cuts down the build time significantly. The major changes since 0.3 are: * Added the 'report-html' command to generate HTML reports of the execution of any recorded action. * Changed the '--output' flag of the 'report' command to only take a path to the target file, not its format. Different formats are better supported by implementing different subcommands, as the options they may receive will vary from format to format. * Added a '--with-atf' flag to the configure script to control whether the ATF tests get built or not. May be useful for packaging systems that do not have ATF in them yet. Disabling ATF also cuts down the build time of Kyua significantly, but with the obvious drawbacks. * Grouped 'kyua' subcommands by topic both in the output of 'help' and in the documentation. In general, the user needs to be aware of commands that rely on a current project and those commands that rely purely on the database to generate reports. * Made 'help' print the descriptions of options and commands properly tabulated. * Changed most informational messages to automatically wrap on screen boundaries. * Rewrote the configuration file parsing module for extensibility. This will allow future versions of Kyua to provide additional user-facing options in the configuration file. No syntax changes have been made, so existing configuration files (version 1) will continue to be parsed without problems. There is one little exception though: all variables under the top-level 'test_suites' tree must be declared as strings. Similarly, the '-v' and '--variable' flags to the command line must now carry a 'test_suites.' prefix when referencing any variables under such tree.
2012-06-07 03:13:58 +02:00
.else
CONFIGURE_ARGS+= --without-atf
PLIST_SUBST+= TESTS=@comment
.endif
post-install:
Update to 0.4. Other than the upgrade itself, this also adds a new 'tests' option to the package to indicate whether the Kyua-specific tests should be built or not. I do not recommend disabling their build, but not specifiying the 'tests' option cuts down the build time significantly. The major changes since 0.3 are: * Added the 'report-html' command to generate HTML reports of the execution of any recorded action. * Changed the '--output' flag of the 'report' command to only take a path to the target file, not its format. Different formats are better supported by implementing different subcommands, as the options they may receive will vary from format to format. * Added a '--with-atf' flag to the configure script to control whether the ATF tests get built or not. May be useful for packaging systems that do not have ATF in them yet. Disabling ATF also cuts down the build time of Kyua significantly, but with the obvious drawbacks. * Grouped 'kyua' subcommands by topic both in the output of 'help' and in the documentation. In general, the user needs to be aware of commands that rely on a current project and those commands that rely purely on the database to generate reports. * Made 'help' print the descriptions of options and commands properly tabulated. * Changed most informational messages to automatically wrap on screen boundaries. * Rewrote the configuration file parsing module for extensibility. This will allow future versions of Kyua to provide additional user-facing options in the configuration file. No syntax changes have been made, so existing configuration files (version 1) will continue to be parsed without problems. There is one little exception though: all variables under the top-level 'test_suites' tree must be declared as strings. Similarly, the '-v' and '--variable' flags to the command line must now carry a 'test_suites.' prefix when referencing any variables under such tree.
2012-06-07 03:13:58 +02:00
${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/tests
${INSTALL_DATA} ${WRKSRC}/examples/Kyuafile.top \
${DESTDIR}${PREFIX}/tests/Kyuafile
.include "../../databases/sqlite3/buildlink3.mk"
Update to 0.6: Experimental version released on February 22nd, 2013. * Issue 36: Changed 'kyua help' to not fail when the configuration file is bogus. Help should always work. * Issue 37: Simplified the syntax() calls in configuration and Kyuafile files to only specify the requested version instead of also the format name. The format name is implied by the file being loaded, so there is no use in the caller having to specify it. The version number of these file formats has been bumped to 2. * Issue 39: Added per-test-case metadata values to the HTML reports. * Issue 40: Rewrote the documentation as manual pages and removed the previous GNU Info document. * Issue 47: Started using the independent testers in the kyua-testers package to run the test cases. Kyua does not implement the logic to invoke test cases any more, which provides for better modularity, extensibility and robustness. * Issue 57: Added support to specify arbitrary metadata properties for test programs right from the Kyuafile. This is to make plain test programs more versatile, by allowing them to specify any of the requirements (allowed architectures, required files, etc.) supported by Kyua. * Reduced automatic screen line wrapping of messages to the 'help' command and the output of tables by 'db-exec'. Wrapping any other messages (specially anything going to stderr) was very annoying because it prevented natural copy/pasting of text. * Increased the granularity of the error codes returned by kyua(1) to denote different error conditions. This avoids the overload of '1' to indicate both "expected" errors from specific subcommands and unexpected errors caused by the internals of the code. The manual now correctly explain how the exit codes behave on a command basis. * Optimized the database schema to make report generation almost instantaneous. * Bumped the database schema to 2. The database now records the metadata of both test programs and test cases generically, without knowledge of their interface. * Added the 'db-migrate' command to provide a mechanism to upgrade a database with an old schema to the current schema. * Removed the GDB build-time configuration variable. This is now part of the kyua-testers package. * Rewrote the Kyuafile parsing code in C++, which results in a much simpler implementation. As a side-effect, this gets rid of the external Lua files required by 'kyua', which in turn make the tool self-contained. * Added caching of various configure test results (particularly in those tests that need to execute a test program) so that cross-compilers can predefine the results of the tests without having to run the executables.
2013-02-23 04:37:40 +01:00
.include "../../devel/kyua-testers/buildlink3.mk"
.include "../../devel/lutok/buildlink3.mk"
.include "../../lang/lua/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"