]> rtime.felk.cvut.cz Git - omk.git/log
omk.git
9 years agoAllow specifying python binary to run omkbuild
Michal Sojka [Mon, 8 Sep 2014 22:49:49 +0000 (00:49 +0200)]
Allow specifying python binary to run omkbuild

This is will ease python2 and python3 compatibility testing.

9 years agoAdd experimental version of omk-mode for Emacs
Michal Sojka [Tue, 29 Jul 2014 22:48:18 +0000 (00:48 +0200)]
Add experimental version of omk-mode for Emacs

9 years agoSupport all generally recognized C++ extensions
Michal Sojka [Thu, 26 Jun 2014 14:06:14 +0000 (16:06 +0200)]
Support all generally recognized C++ extensions

9 years agoIt is not necessary to evaluate C++ compilation separately for every possible file...
Michal Sojka [Thu, 26 Jun 2014 13:59:35 +0000 (15:59 +0200)]
It is not necessary to evaluate C++ compilation separately for every possible file extension

One call to $(filter) can handle all the extensions.

9 years agoAdd rules for .s assembler files
Michal Sojka [Thu, 26 Jun 2014 13:55:56 +0000 (15:55 +0200)]
Add rules for .s assembler files

According to gcc documentation .s is processed by assembler without first
preprocessing it with CPP.

10 years agoFix typo that caused all programs to be linked by $(CXX)
Michal Sojka [Mon, 6 Jan 2014 13:47:24 +0000 (14:47 +0100)]
Fix typo that caused all programs to be linked by $(CXX)

10 years agoDo not use program dependenies on linker command line
Michal Sojka [Tue, 26 Nov 2013 16:25:55 +0000 (17:25 +0100)]
Do not use program dependenies on linker command line

We have to use only explicitly specified objects based on the content of
Makefile.omk.

Previously, our automatic dependency generator caused the second
compilation to fail because things like
/usr/lib/gcc/x86_64-linux-gnu/4.8/crtbegin.o appeared on the linker
command line.

10 years agoReplace AM_ variables with OMK_ ones
Michal Sojka [Mon, 25 Nov 2013 16:37:46 +0000 (17:37 +0100)]
Replace AM_ variables with OMK_ ones

10 years agoAdd forgotten cmetric.omk
Michal Sojka [Mon, 25 Nov 2013 16:31:19 +0000 (17:31 +0100)]
Add forgotten cmetric.omk

10 years agoMove cmetric rules to a separate snippet
Michal Sojka [Mon, 25 Nov 2013 16:22:45 +0000 (17:22 +0100)]
Move cmetric rules to a separate snippet

10 years agoUse C locale to run tests
Michal Sojka [Mon, 25 Nov 2013 16:21:59 +0000 (17:21 +0100)]
Use C locale to run tests

This influences, for example, sorting order and different locales may
result if test failures.

10 years agoRemove debugging message
Michal Sojka [Mon, 25 Nov 2013 15:34:14 +0000 (16:34 +0100)]
Remove debugging message

10 years agoSupport for target specific flags is broken in sysless
Michal Sojka [Fri, 22 Nov 2013 16:49:44 +0000 (17:49 +0100)]
Support for target specific flags is broken in sysless

10 years agoSupport target specific flags also for libraries
Michal Sojka [Fri, 22 Nov 2013 16:41:21 +0000 (17:41 +0100)]
Support target specific flags also for libraries

10 years agoSupport program specific CFLAGS, CXXCLAGS and CPPFLAGS
Michal Sojka [Fri, 22 Nov 2013 16:40:40 +0000 (17:40 +0100)]
Support program specific CFLAGS, CXXCLAGS and CPPFLAGS

10 years agoFix bug in clean target
Michal Sojka [Wed, 13 Nov 2013 05:31:28 +0000 (06:31 +0100)]
Fix bug in clean target

10 years agoFix error with multiple IDL files
Michal Sojka [Wed, 13 Nov 2013 05:11:37 +0000 (06:11 +0100)]
Fix error with multiple IDL files

... whitespace is sometimes important in Makefiles.

10 years agoDocument and fix xxx_GEN_SOURCES
Michal Sojka [Tue, 12 Nov 2013 23:40:38 +0000 (00:40 +0100)]
Document and fix xxx_GEN_SOURCES

10 years agoAllow including an arbitrary file from tests in the documentation
Michal Sojka [Tue, 12 Nov 2013 23:40:08 +0000 (00:40 +0100)]
Allow including an arbitrary file from tests in the documentation

10 years agoFix test
Michal Sojka [Tue, 12 Nov 2013 21:02:43 +0000 (22:02 +0100)]
Fix test

10 years agoRemove debugging output
Michal Sojka [Tue, 12 Nov 2013 21:02:37 +0000 (22:02 +0100)]
Remove debugging output

10 years agoAdd linux-kernel snippet
Michal Sojka [Tue, 12 Nov 2013 20:59:54 +0000 (21:59 +0100)]
Add linux-kernel snippet

I forgot to add it to the comit that split the linux rules to user and
kernel parts.

10 years agoFix generation of test files included in the documentation
Michal Sojka [Tue, 12 Nov 2013 20:58:39 +0000 (21:58 +0100)]
Fix generation of test files included in the documentation

10 years agoReworked default-config test
Michal Sojka [Tue, 12 Nov 2013 20:30:42 +0000 (21:30 +0100)]
Reworked default-config test

10 years agoFix sources_in_subdirectory test
Michal Sojka [Tue, 12 Nov 2013 17:49:36 +0000 (18:49 +0100)]
Fix sources_in_subdirectory test

Note that handling in source files in subdirectories has changed. See
previous commit for details.

Now, all tests pass.

10 years agoFix IDL test
Michal Sojka [Tue, 12 Nov 2013 17:40:49 +0000 (18:40 +0100)]
Fix IDL test

This breaks sources_in_subdirectory test, because I changed the way how
object files are generated. Now, every object is generated in the
"current" build directory irrespective to where the source resides.

This might break existing projects. If this happens, we will handle it
somehow.

10 years agoSimplify libraries compilation
Michal Sojka [Tue, 12 Nov 2013 16:57:37 +0000 (17:57 +0100)]
Simplify libraries compilation

This commit does the similar changes as a previous commit for program
compilation.

10 years agoDon't exit when a test fails
Michal Sojka [Tue, 12 Nov 2013 16:56:55 +0000 (17:56 +0100)]
Don't exit when a test fails

10 years agoRework libraries and shlibs tests
Michal Sojka [Tue, 12 Nov 2013 15:46:45 +0000 (16:46 +0100)]
Rework libraries and shlibs tests

10 years agoSimplify program compilation
Michal Sojka [Tue, 12 Nov 2013 15:27:33 +0000 (16:27 +0100)]
Simplify program compilation

Now, PROGRAM_template does not use global variables and rule generation
($(eval $(call ...))) is not split over multiple places. Now, we simply
call $(eval $(call PROGRAM_template,...)) and all rules for program
compilation are generated.

10 years agoRework test for programs
Michal Sojka [Tue, 12 Nov 2013 15:21:18 +0000 (16:21 +0100)]
Rework test for programs

10 years agoConvert cmetric test to a single file
Michal Sojka [Tue, 12 Nov 2013 13:59:57 +0000 (14:59 +0100)]
Convert cmetric test to a single file

10 years agoRun tests directly with snippets instead of with the preprocessed rules
Michal Sojka [Tue, 12 Nov 2013 13:56:08 +0000 (14:56 +0100)]
Run tests directly with snippets instead of with the preprocessed rules

This simplifies debugging failed tests.

10 years agoDocument AM_ variables instead of user variables
Michal Sojka [Tue, 12 Nov 2013 10:34:12 +0000 (11:34 +0100)]
Document AM_ variables instead of user variables

10 years agoSplit Linux rules to user and kernel parts
Michal Sojka [Tue, 12 Nov 2013 10:30:56 +0000 (11:30 +0100)]
Split Linux rules to user and kernel parts

I mostly care about userspace and this split will allow to simplify
the userspace part separately and thus make it more maintainable.

10 years agoConvert clean pass to "double-colon rules"
Michal Sojka [Tue, 12 Nov 2013 10:23:00 +0000 (11:23 +0100)]
Convert clean pass to "double-colon rules"

This simplifies things a bit.

10 years agoRemove OCERA specific stuff
Michal Sojka [Tue, 12 Nov 2013 09:57:49 +0000 (10:57 +0100)]
Remove OCERA specific stuff

Nobody uses this anymore and it only complicates the code.

10 years agoCorrect comment
Michal Sojka [Tue, 12 Nov 2013 09:50:34 +0000 (10:50 +0100)]
Correct comment

10 years agoSimplify CFLAGS test and check for CFLAGS overriding AM_CFLAGS
Michal Sojka [Tue, 12 Nov 2013 09:20:49 +0000 (10:20 +0100)]
Simplify CFLAGS test and check for CFLAGS overriding AM_CFLAGS

10 years agoDocument AM_*FLAGS and relation to *FLAGS
Michal Sojka [Tue, 12 Nov 2013 09:51:36 +0000 (10:51 +0100)]
Document AM_*FLAGS and relation to *FLAGS

10 years agoPut leaf makefile to the test by default
Michal Sojka [Tue, 12 Nov 2013 09:14:30 +0000 (10:14 +0100)]
Put leaf makefile to the test by default

10 years agoUse synctex to ease documentation editting
Michal Sojka [Tue, 12 Nov 2013 08:30:26 +0000 (09:30 +0100)]
Use synctex to ease documentation editting

10 years agoUpdate introduction
Michal Sojka [Tue, 12 Nov 2013 08:20:10 +0000 (09:20 +0100)]
Update introduction

10 years agoWhitespace and copyright
Michal Sojka [Tue, 12 Nov 2013 07:47:15 +0000 (08:47 +0100)]
Whitespace and copyright

10 years agoRun test first for Linux, then other platforms
Michal Sojka [Mon, 11 Nov 2013 11:15:50 +0000 (12:15 +0100)]
Run test first for Linux, then other platforms

Serious breakage will thus be detected faster.

10 years agoOmkize target always creates Makefile wherever Makefile.omk exists
Michal Sojka [Mon, 11 Nov 2013 10:30:06 +0000 (11:30 +0100)]
Omkize target always creates Makefile wherever Makefile.omk exists

Previously, it only rewrote existing Makefiles, which was not so useful
for new projects.

Added test for omkize target.

10 years agoImprove QT tests to check for the error fixed by Pavel recently
Michal Sojka [Mon, 28 Oct 2013 18:21:27 +0000 (19:21 +0100)]
Improve QT tests to check for the error fixed by Pavel recently

10 years agoRun subtests in a separate directory
Michal Sojka [Mon, 28 Oct 2013 19:01:01 +0000 (20:01 +0100)]
Run subtests in a separate directory

This makes subtests easier to understand, because one need not to read
the whole test script to figure out in which state we actualy are.

10 years agoQT: Fix bug in *.pro search which prevent QT_SUBDIRS to work for other than direct...
Pavel Pisa [Fri, 25 Oct 2013 22:29:16 +0000 (00:29 +0200)]
QT: Fix bug in *.pro search which prevent QT_SUBDIRS to work for other than direct make invocation directory.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
10 years agoRun one QT test verbosely
Michal Sojka [Fri, 4 Oct 2013 15:52:17 +0000 (17:52 +0200)]
Run one QT test verbosely

This is to allow manual inspection of which qmake was used. Wheter the
default one (qmake) or the one specified in QMAKE environment variable.

10 years agoFix qt-qmake test that failed
Michal Sojka [Fri, 4 Oct 2013 15:51:15 +0000 (17:51 +0200)]
Fix qt-qmake test that failed

The reason was recent removal of qt.files.

10 years agoSimplify manual execution of QT test
Michal Sojka [Fri, 4 Oct 2013 15:50:13 +0000 (17:50 +0200)]
Simplify manual execution of QT test

Now it is not necessary to specify OMK_RULES as it default to linux.

10 years agoFix strange behaviour of $(dir) function
Michal Sojka [Fri, 4 Oct 2013 15:10:42 +0000 (17:10 +0200)]
Fix strange behaviour of $(dir) function

This fixes the error in the test suite

10 years agoFreeBSD compatibility: Don't use GNU specific cmp and install options
Michal Sojka [Fri, 4 Oct 2013 12:46:43 +0000 (14:46 +0200)]
FreeBSD compatibility: Don't use GNU specific cmp and install options

11 years agoReport failed commands in tests (under bash only)
Michal Sojka [Tue, 30 Apr 2013 14:13:27 +0000 (16:13 +0200)]
Report failed commands in tests (under bash only)

11 years agoPut qt test to a single file
Michal Sojka [Tue, 30 Apr 2013 14:13:02 +0000 (16:13 +0200)]
Put qt test to a single file

To make later changes easier.

11 years agoFix failures in programs-cxxflags tests
Michal Sojka [Tue, 30 Apr 2013 14:10:34 +0000 (16:10 +0200)]
Fix failures in programs-cxxflags tests

11 years agoFix failure in cmetric test
Michal Sojka [Tue, 30 Apr 2013 14:06:37 +0000 (16:06 +0200)]
Fix failure in cmetric test

It was caused by undefined locale.

11 years agoIgnore temporary directories created by running tests
Michal Sojka [Tue, 30 Apr 2013 13:37:01 +0000 (15:37 +0200)]
Ignore temporary directories created by running tests

11 years agoWhitespace
Michal Sojka [Tue, 30 Apr 2013 13:36:11 +0000 (15:36 +0200)]
Whitespace

11 years agoFix error in test runner
Michal Sojka [Tue, 30 Apr 2013 13:35:50 +0000 (15:35 +0200)]
Fix error in test runner

This caused some errors to be not detected, because some tests were
not run.

11 years agoObey CXXFLAGS variable when set
Michal Sojka [Tue, 16 Oct 2012 02:28:58 +0000 (04:28 +0200)]
Obey CXXFLAGS variable when set

11 years agoAdd test for CXXFLAGS
Michal Sojka [Tue, 16 Oct 2012 02:11:10 +0000 (04:11 +0200)]
Add test for CXXFLAGS

11 years agoAdd support for .cpp extension of C++ sources
Michal Sojka [Mon, 9 Jul 2012 17:05:28 +0000 (19:05 +0200)]
Add support for .cpp extension of C++ sources

11 years agoFix parallel make test
Michal Sojka [Mon, 9 Jul 2012 17:02:19 +0000 (19:02 +0200)]
Fix parallel make test

11 years agoFix cmetric test
Michal Sojka [Mon, 9 Jul 2012 17:01:02 +0000 (19:01 +0200)]
Fix cmetric test

For some reason, sort order seems now different.

12 years agoLinux 3.x kernal KBUILD can be examined by samerules as 2.6.x
Pavel Pisa [Thu, 18 Aug 2011 16:50:26 +0000 (18:50 +0200)]
Linux 3.x kernal KBUILD can be examined by samerules as 2.6.x

12 years agoReport which version is too old
Michal Sojka [Mon, 18 Jul 2011 13:02:28 +0000 (15:02 +0200)]
Report which version is too old

This was used when trying to run OMK on MAC OS.

12 years agoAdd test for IDL
Michal Sojka [Mon, 18 Jul 2011 12:59:28 +0000 (14:59 +0200)]
Add test for IDL

12 years agotests: Only include .files file if it exists
Michal Sojka [Mon, 18 Jul 2011 12:59:13 +0000 (14:59 +0200)]
tests: Only include .files file if it exists

12 years agoAttempt to fix IDL compilation for RTEMS
Michal Sojka [Mon, 18 Jul 2011 12:18:38 +0000 (14:18 +0200)]
Attempt to fix IDL compilation for RTEMS

12 years agoLinux kernel modules build support adapted for KBUILD 2.6.36+ changes.
Pavel Pisa [Fri, 24 Jun 2011 13:49:53 +0000 (15:49 +0200)]
Linux kernel modules build support adapted for KBUILD 2.6.36+ changes.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoAllow to define if default compiler provided startup file is linked into binary.
Pavel Pisa [Sun, 29 May 2011 19:47:18 +0000 (21:47 +0200)]
Allow to define if default compiler provided startup file is linked into binary.

The use of standard startup files is required for MSP430
target, because there it is useless and complicated
to provide BSP specific one.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
12 years agoAllow use alternative to default system SED program - SED4OMK.
Pavel Pisa [Thu, 12 May 2011 13:09:26 +0000 (15:09 +0200)]
Allow use alternative to default system SED program - SED4OMK.

This is required on BSD system derivatives (i.e. Apple MAC OS X)
where default sed program or its default mode does not interpret
vertical bar/pipe as text alternatives separator.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
13 years agotest: Update test_PROGRAMS test
Michal Sojka [Sat, 12 Mar 2011 16:04:43 +0000 (17:04 +0100)]
test: Update test_PROGRAMS test

The test is partially converted to wvtest API.

13 years agortems: Fix compilation of test_PROGRAMS
Michal Sojka [Sat, 12 Mar 2011 16:01:32 +0000 (17:01 +0100)]
rtems: Fix compilation of test_PROGRAMS

This variable was ignored in the previous version of the rules.

13 years agotest: Allow testing only a single type of rules
Michal Sojka [Sat, 12 Mar 2011 15:37:58 +0000 (16:37 +0100)]
test: Allow testing only a single type of rules

To do this, just run: make OMK_RULES=<type>

13 years agoFix a few tests to work correctly with rtems rules
Michal Sojka [Sat, 12 Mar 2011 15:31:17 +0000 (16:31 +0100)]
Fix a few tests to work correctly with rtems rules

13 years agoAdd fixes for keil51 rules to pass the tests
Michal Sojka [Sat, 12 Mar 2011 15:18:06 +0000 (16:18 +0100)]
Add fixes for keil51 rules to pass the tests

13 years agotest: Add check for cygpath command which is needed for testing keil16x rules
Michal Sojka [Sat, 12 Mar 2011 15:15:04 +0000 (16:15 +0100)]
test: Add check for cygpath command which is needed for testing keil16x rules

13 years agoPartially fix cmetric test for keil16x
Michal Sojka [Sat, 12 Mar 2011 15:12:37 +0000 (16:12 +0100)]
Partially fix cmetric test for keil16x

13 years agoTests can by run also by "make test"
Michal Sojka [Sat, 12 Mar 2011 11:07:04 +0000 (12:07 +0100)]
Tests can by run also by "make test"

13 years agortmes: Add fallback rule to create timestamp
Michal Sojka [Fri, 11 Mar 2011 23:08:52 +0000 (00:08 +0100)]
rtmes: Add fallback rule to create timestamp

When the build did not contain any library (such as in test suite), the
build failed because there was no rule to create the timestamp.

13 years agortems: Copy cmetric rules from linux snippet
Michal Sojka [Fri, 11 Mar 2011 23:06:48 +0000 (00:06 +0100)]
rtems: Copy cmetric rules from linux snippet

The previous rules failed when /bin/sh did not support 'set -o pipefail'
(such as in case of dash).

13 years agotests: Fix quoting in heredoc
Michal Sojka [Fri, 11 Mar 2011 22:19:56 +0000 (23:19 +0100)]
tests: Fix quoting in heredoc

13 years agoFix the test to work correctly with RTEMS rules
Michal Sojka [Fri, 11 Mar 2011 21:18:40 +0000 (22:18 +0100)]
Fix the test to work correctly with RTEMS rules

13 years agoAdd omk-get-var target to get values of OMK variables
Michal Sojka [Fri, 11 Mar 2011 21:07:37 +0000 (22:07 +0100)]
Add omk-get-var target to get values of OMK variables

This allows external scripts/programs to determine the
values of OMK variables such as RELATIVE_DIR etc.

Usage: make omk-get-var VAR=RELATIVE_DIR
Output: RELATIVE_DIR=some_dir

13 years agoRemove unused canttest macro
Michal Sojka [Fri, 11 Mar 2011 20:35:10 +0000 (21:35 +0100)]
Remove unused canttest macro

This macro was used by the old OMK test suite and it is not needed anymore.

13 years agoUse rules-specific environment for tests
Michal Sojka [Fri, 11 Mar 2011 20:29:05 +0000 (21:29 +0100)]
Use rules-specific environment for tests

For example, rtems rules require RTEMS_MAKEFILE_PATH variable to be set.
This and similar variables can be set by putting

  export RTEMS_MAKEFILE_PATH=/opt/rtems4.9/powerpc-rtems4.9/icecube

into tests/rtems.env.

13 years agowvtestrun produces nicer (and more readable) output
Michal Sojka [Sat, 12 Mar 2011 14:37:56 +0000 (15:37 +0100)]
wvtestrun produces nicer (and more readable) output

13 years agowvtest: Visually delimit the output of failed tests
Michal Sojka [Sat, 12 Mar 2011 11:05:24 +0000 (12:05 +0100)]
wvtest: Visually delimit the output of failed tests

13 years agotest: Use bash's conditional expression
Michal Sojka [Fri, 11 Mar 2011 20:19:52 +0000 (21:19 +0100)]
test: Use bash's conditional expression

In OMK we use bash in all test script so we can use [[ ]] instead of
external command [ ].

13 years agortems: Add support for EXTRA_RULES_SUBDIRS
Michal Sojka [Fri, 11 Mar 2011 15:15:53 +0000 (16:15 +0100)]
rtems: Add support for EXTRA_RULES_SUBDIRS

13 years agortems: Add support for IDL compilation
Michal Sojka [Fri, 11 Mar 2011 14:52:43 +0000 (15:52 +0100)]
rtems: Add support for IDL compilation

13 years agowvtest: Output "Test function header"
Michal Sojka [Fri, 25 Feb 2011 07:25:23 +0000 (08:25 +0100)]
wvtest: Output "Test function header"

Previously, when something in the test failed before the test output
its header, it looked like the error occurred in the previous test. Now,
the header is the very first thing generated by make so the user see the
proper name of the failed test.

13 years agoDocument bin_SCRIPTS
Michal Sojka [Tue, 22 Feb 2011 16:14:55 +0000 (17:14 +0100)]
Document bin_SCRIPTS

13 years agoFix compilation of manual
Michal Sojka [Tue, 22 Feb 2011 16:07:11 +0000 (17:07 +0100)]
Fix compilation of manual

The manual includes files from test (to ensure that the documentation
matches the real behavior). Since we converted the tests to a different
format, we have to change the way how the files are included.

13 years agoCall submakes with --no-builtin-rules switch
Michal Sojka [Tue, 22 Feb 2011 15:44:44 +0000 (16:44 +0100)]
Call submakes with --no-builtin-rules switch

This fixes the bug described in the previous commit. Additionally
we also get a performance gain of about 20% (measured on the total
execution time of the testsuite).

13 years agoAdd test for bug in bin_SCRIPTS handling
Michal Sojka [Tue, 22 Feb 2011 15:18:38 +0000 (16:18 +0100)]
Add test for bug in bin_SCRIPTS handling

when the name of a script is 'x' and there is a newer file 'x.c' in the
same directory then make applies built-in implicit rules and attempts
to recreate x from x.c. This should not happen.

13 years agoDo not use WVSTART in test scripts - it is called automatically
Michal Sojka [Tue, 22 Feb 2011 15:14:58 +0000 (16:14 +0100)]
Do not use WVSTART in test scripts - it is called automatically

... in wvtest.sh