From 9418ece26a83c3c9925ace74eef20b3c19058bbb Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Sun, 17 Feb 2013 21:11:50 +0200 Subject: Renamed system from builder to Meson. --- builder.py | 117 ------------------------ environment.py | 2 +- meson.py | 117 ++++++++++++++++++++++++ readme.txt | 12 +-- run_tests.py | 2 +- test cases/1 trivial/builder.txt | 7 -- test cases/1 trivial/meson.build | 7 ++ test cases/10 man install/builder.txt | 3 - test cases/10 man install/meson.build | 3 + test cases/11 subdir/builder.txt | 2 - test cases/11 subdir/meson.build | 2 + test cases/11 subdir/subdir/builder.txt | 1 - test cases/11 subdir/subdir/meson.build | 1 + test cases/12 data/builder.txt | 2 - test cases/12 data/meson.build | 2 + test cases/13 pch/builder.txt | 3 - test cases/13 pch/meson.build | 3 + test cases/14 cxx pch/builder.txt | 2 - test cases/14 cxx pch/meson.build | 2 + test cases/15 mixed pch/builder.txt | 5 - test cases/15 mixed pch/meson.build | 5 + test cases/16 configure file/builder.txt | 6 -- test cases/16 configure file/meson.build | 6 ++ test cases/17 if/builder.txt | 14 --- test cases/17 if/meson.build | 14 +++ test cases/18 else/builder.txt | 11 --- test cases/18 else/meson.build | 11 +++ test cases/19 comparison/builder.txt | 33 ------- test cases/19 comparison/meson.build | 33 +++++++ test cases/2 cxx/builder.txt | 3 - test cases/2 cxx/meson.build | 3 + test cases/20 array/builder.txt | 6 -- test cases/20 array/meson.build | 6 ++ test cases/21 includedir/builder.txt | 4 - test cases/21 includedir/meson.build | 4 + test cases/21 includedir/src/builder.txt | 2 - test cases/21 includedir/src/meson.build | 2 + test cases/22 header in file list/builder.txt | 4 - test cases/22 header in file list/meson.build | 4 + test cases/23 global arg/builder.txt | 11 --- test cases/23 global arg/meson.build | 11 +++ test cases/24 target arg/builder.txt | 7 -- test cases/24 target arg/meson.build | 7 ++ test cases/25 numbers/builder.txt | 7 -- test cases/25 numbers/meson.build | 7 ++ test cases/26 endian/builder.txt | 7 -- test cases/26 endian/meson.build | 7 ++ test cases/27 library versions/builder.txt | 6 -- test cases/27 library versions/meson.build | 6 ++ test cases/28 config subdir/builder.txt | 6 -- test cases/28 config subdir/include/builder.txt | 2 - test cases/28 config subdir/include/meson.build | 2 + test cases/28 config subdir/meson.build | 6 ++ test cases/28 config subdir/src/builder.txt | 2 - test cases/28 config subdir/src/meson.build | 2 + test cases/29 external dep/builder.txt | 8 -- test cases/29 external dep/meson.build | 8 ++ test cases/3 static/builder.txt | 2 - test cases/3 static/meson.build | 2 + test cases/4 shared/builder.txt | 2 - test cases/4 shared/meson.build | 2 + test cases/5 linkstatic/builder.txt | 5 - test cases/5 linkstatic/meson.build | 5 + test cases/6 linkshared/builder.txt | 5 - test cases/6 linkshared/meson.build | 5 + test cases/7 mixed/builder.txt | 3 - test cases/7 mixed/meson.build | 3 + test cases/8 install/builder.txt | 5 - test cases/8 install/meson.build | 5 + test cases/9 header install/builder.txt | 4 - test cases/9 header install/meson.build | 4 + 71 files changed, 315 insertions(+), 315 deletions(-) delete mode 100755 builder.py create mode 100755 meson.py delete mode 100644 test cases/1 trivial/builder.txt create mode 100644 test cases/1 trivial/meson.build delete mode 100644 test cases/10 man install/builder.txt create mode 100644 test cases/10 man install/meson.build delete mode 100644 test cases/11 subdir/builder.txt create mode 100644 test cases/11 subdir/meson.build delete mode 100644 test cases/11 subdir/subdir/builder.txt create mode 100644 test cases/11 subdir/subdir/meson.build delete mode 100644 test cases/12 data/builder.txt create mode 100644 test cases/12 data/meson.build delete mode 100644 test cases/13 pch/builder.txt create mode 100644 test cases/13 pch/meson.build delete mode 100644 test cases/14 cxx pch/builder.txt create mode 100644 test cases/14 cxx pch/meson.build delete mode 100644 test cases/15 mixed pch/builder.txt create mode 100644 test cases/15 mixed pch/meson.build delete mode 100644 test cases/16 configure file/builder.txt create mode 100644 test cases/16 configure file/meson.build delete mode 100644 test cases/17 if/builder.txt create mode 100644 test cases/17 if/meson.build delete mode 100644 test cases/18 else/builder.txt create mode 100644 test cases/18 else/meson.build delete mode 100644 test cases/19 comparison/builder.txt create mode 100644 test cases/19 comparison/meson.build delete mode 100644 test cases/2 cxx/builder.txt create mode 100644 test cases/2 cxx/meson.build delete mode 100644 test cases/20 array/builder.txt create mode 100644 test cases/20 array/meson.build delete mode 100644 test cases/21 includedir/builder.txt create mode 100644 test cases/21 includedir/meson.build delete mode 100644 test cases/21 includedir/src/builder.txt create mode 100644 test cases/21 includedir/src/meson.build delete mode 100644 test cases/22 header in file list/builder.txt create mode 100644 test cases/22 header in file list/meson.build delete mode 100644 test cases/23 global arg/builder.txt create mode 100644 test cases/23 global arg/meson.build delete mode 100644 test cases/24 target arg/builder.txt create mode 100644 test cases/24 target arg/meson.build delete mode 100644 test cases/25 numbers/builder.txt create mode 100644 test cases/25 numbers/meson.build delete mode 100644 test cases/26 endian/builder.txt create mode 100644 test cases/26 endian/meson.build delete mode 100644 test cases/27 library versions/builder.txt create mode 100644 test cases/27 library versions/meson.build delete mode 100644 test cases/28 config subdir/builder.txt delete mode 100644 test cases/28 config subdir/include/builder.txt create mode 100644 test cases/28 config subdir/include/meson.build create mode 100644 test cases/28 config subdir/meson.build delete mode 100644 test cases/28 config subdir/src/builder.txt create mode 100644 test cases/28 config subdir/src/meson.build delete mode 100644 test cases/29 external dep/builder.txt create mode 100644 test cases/29 external dep/meson.build delete mode 100644 test cases/3 static/builder.txt create mode 100644 test cases/3 static/meson.build delete mode 100644 test cases/4 shared/builder.txt create mode 100644 test cases/4 shared/meson.build delete mode 100644 test cases/5 linkstatic/builder.txt create mode 100644 test cases/5 linkstatic/meson.build delete mode 100644 test cases/6 linkshared/builder.txt create mode 100644 test cases/6 linkshared/meson.build delete mode 100644 test cases/7 mixed/builder.txt create mode 100644 test cases/7 mixed/meson.build delete mode 100644 test cases/8 install/builder.txt create mode 100644 test cases/8 install/meson.build delete mode 100644 test cases/9 header install/builder.txt create mode 100644 test cases/9 header install/meson.build diff --git a/builder.py b/builder.py deleted file mode 100755 index 536ddfe18..000000000 --- a/builder.py +++ /dev/null @@ -1,117 +0,0 @@ -#!/usr/bin/python3 -tt - -# Copyright 2012 Jussi Pakkanen - -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at - -# http://www.apache.org/licenses/LICENSE-2.0 - -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -from optparse import OptionParser -import sys, stat -import os.path -import environment, interpreter -import generators, build - -version = '0.1-research' - -usage_info = '%prog [options] source_dir build_dir' - -parser = OptionParser(usage=usage_info, version=version) - -build_types = ['plain', 'debug', 'optimized'] -buildtype_help = 'build type, one of: %s' % ', '.join(build_types) -buildtype_help += ' (default: %default)' - -parser.add_option('--prefix', default='/usr/local', dest='prefix', - help='the installation prefix (default: %default)') -parser.add_option('--libdir', default='lib', dest='libdir', - help='the installation subdir of libraries (default: %default)') -parser.add_option('--bindir', default='bin', dest='bindir', - help='the installation subdir of executables (default: %default)') -parser.add_option('--includedir', default='include', dest='includedir', - help='relative path of installed headers (default: %default)') -parser.add_option('--datadir', default='share', dest='datadir', - help='relative path to the top of data file subdirectory (default: %default)') -parser.add_option('--mandir' , default='share/man', dest='mandir', - help='relatie path of man files (default: %default)') -parser.add_option('-G', '--generator', default='ninja', dest='generator', - help='the backend generator to use (default: %default)') -parser.add_option('--buildtype', default='debug', type='choice', choices=build_types, dest='buildtype', - help=buildtype_help) -parser.add_option('--strip', action='store_true', dest='strip', default=False,\ - help='strip targets on install (default: %default)') - -class BuilderApp(): - - def __init__(self, dir1, dir2, script_file, options): - (self.source_dir, self.build_dir) = self.validate_dirs(dir1, dir2) - if options.prefix[0] != '/': - raise RuntimeError('--prefix must be an absolute path.') - self.builder_script_file = script_file - self.options = options - - def has_builder_file(self, dirname): - fname = os.path.join(dirname, environment.builder_filename) - try: - ifile = open(fname, 'r') - ifile.close() - return True - except IOError: - return False - - def validate_dirs(self, dir1, dir2): - ndir1 = os.path.abspath(dir1) - ndir2 = os.path.abspath(dir2) - if not stat.S_ISDIR(os.stat(ndir1).st_mode): - raise RuntimeError('%s is not a directory' % dir1) - if not stat.S_ISDIR(os.stat(ndir2).st_mode): - raise RuntimeError('%s is not a directory' % dir2) - self.options = options - if os.path.samefile(dir1, dir2): - raise RuntimeError('Source and build directories must not be the same. Create a pristine build directory.') - if self.has_builder_file(ndir1): - if self.has_builder_file(ndir2): - raise RuntimeError('Both directories contain a builder file %s.' % environment.builder_filename) - return (ndir1, ndir2) - if self.has_builder_file(ndir2): - return (ndir2, ndir1) - raise RuntimeError('Neither directory contains a builder file %s.' % environment.builder_filename) - - def generate(self): - env = environment.Environment(self.source_dir, self.build_dir, self.builder_script_file, options) - b = build.Build(env) - intr = interpreter.Interpreter(b) - intr.run() - if options.generator == 'shell': - g = generators.ShellGenerator(b, intr) - elif options.generator == 'ninja': - g = generators.NinjaGenerator(b, intr) - else: - raise RuntimeError('Unknown generator "%s".' % options.generator) - g.generate() - -if __name__ == '__main__': - (options, args) = parser.parse_args(sys.argv) - if len(args) == 1 or len(args) > 3: - print('%s ' % sys.argv[0]) - print('If you omit either directory, the current directory is substituted.') - sys.exit(1) - dir1 = args[1] - if len(args) > 2: - dir2 = args[2] - else: - dir2 = '.' - this_file = os.path.abspath(__file__) - builder = BuilderApp(dir1, dir2, this_file, options) - print ('Source dir: ' + builder.source_dir) - print ('Build dir: ' + builder.build_dir) - builder.generate() - diff --git a/environment.py b/environment.py index 4031d32ab..1dda39319 100755 --- a/environment.py +++ b/environment.py @@ -16,7 +16,7 @@ import subprocess, os.path -builder_filename = 'builder.txt' +builder_filename = 'meson.build' class EnvironmentException(Exception): def __init(self, *args, **kwargs): diff --git a/meson.py b/meson.py new file mode 100755 index 000000000..d7e6e4486 --- /dev/null +++ b/meson.py @@ -0,0 +1,117 @@ +#!/usr/bin/python3 -tt + +# Copyright 2012 Jussi Pakkanen + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from optparse import OptionParser +import sys, stat +import os.path +import environment, interpreter +import generators, build + +version = '0.1-research' + +usage_info = '%prog [options] source_dir build_dir' + +parser = OptionParser(usage=usage_info, version=version) + +build_types = ['plain', 'debug', 'optimized'] +buildtype_help = 'build type, one of: %s' % ', '.join(build_types) +buildtype_help += ' (default: %default)' + +parser.add_option('--prefix', default='/usr/local', dest='prefix', + help='the installation prefix (default: %default)') +parser.add_option('--libdir', default='lib', dest='libdir', + help='the installation subdir of libraries (default: %default)') +parser.add_option('--bindir', default='bin', dest='bindir', + help='the installation subdir of executables (default: %default)') +parser.add_option('--includedir', default='include', dest='includedir', + help='relative path of installed headers (default: %default)') +parser.add_option('--datadir', default='share', dest='datadir', + help='relative path to the top of data file subdirectory (default: %default)') +parser.add_option('--mandir' , default='share/man', dest='mandir', + help='relatie path of man files (default: %default)') +parser.add_option('-G', '--generator', default='ninja', dest='generator', + help='the backend generator to use (default: %default)') +parser.add_option('--buildtype', default='debug', type='choice', choices=build_types, dest='buildtype', + help=buildtype_help) +parser.add_option('--strip', action='store_true', dest='strip', default=False,\ + help='strip targets on install (default: %default)') + +class BuilderApp(): + + def __init__(self, dir1, dir2, script_file, options): + (self.source_dir, self.build_dir) = self.validate_dirs(dir1, dir2) + if options.prefix[0] != '/': + raise RuntimeError('--prefix must be an absolute path.') + self.builder_script_file = script_file + self.options = options + + def has_builder_file(self, dirname): + fname = os.path.join(dirname, environment.builder_filename) + try: + ifile = open(fname, 'r') + ifile.close() + return True + except IOError: + return False + + def validate_dirs(self, dir1, dir2): + ndir1 = os.path.abspath(dir1) + ndir2 = os.path.abspath(dir2) + if not stat.S_ISDIR(os.stat(ndir1).st_mode): + raise RuntimeError('%s is not a directory' % dir1) + if not stat.S_ISDIR(os.stat(ndir2).st_mode): + raise RuntimeError('%s is not a directory' % dir2) + self.options = options + if os.path.samefile(dir1, dir2): + raise RuntimeError('Source and build directories must not be the same. Create a pristine build directory.') + if self.has_builder_file(ndir1): + if self.has_builder_file(ndir2): + raise RuntimeError('Both directories contain a build file %s.' % environment.builder_filename) + return (ndir1, ndir2) + if self.has_builder_file(ndir2): + return (ndir2, ndir1) + raise RuntimeError('Neither directory contains a build file %s.' % environment.builder_filename) + + def generate(self): + env = environment.Environment(self.source_dir, self.build_dir, self.builder_script_file, options) + b = build.Build(env) + intr = interpreter.Interpreter(b) + intr.run() + if options.generator == 'shell': + g = generators.ShellGenerator(b, intr) + elif options.generator == 'ninja': + g = generators.NinjaGenerator(b, intr) + else: + raise RuntimeError('Unknown generator "%s".' % options.generator) + g.generate() + +if __name__ == '__main__': + (options, args) = parser.parse_args(sys.argv) + if len(args) == 1 or len(args) > 3: + print('%s ' % sys.argv[0]) + print('If you omit either directory, the current directory is substituted.') + sys.exit(1) + dir1 = args[1] + if len(args) > 2: + dir2 = args[2] + else: + dir2 = '.' + this_file = os.path.abspath(__file__) + builder = BuilderApp(dir1, dir2, this_file, options) + print ('Source dir: ' + builder.source_dir) + print ('Build dir: ' + builder.build_dir) + builder.generate() + diff --git a/readme.txt b/readme.txt index bd9811b11..c075d815c 100644 --- a/readme.txt +++ b/readme.txt @@ -6,17 +6,17 @@ Dependencies: Python3 and Python-Ply Running: -Builder requires that you have a source directory and a build directory +Meson requires that you have a source directory and a build directory and that these two are different. In your source root must exist a file -called 'builder.txt'. To generate the build system run this command: +called 'meson.build'. To generate the build system run this command: -builder.py +meson.py -You can omit either of the two directories, and Builder will substitute +You can omit either of the two directories, and Meson will substitute the current directory and autodetect what you mean. This mean that you can do things like this: -cd source_root; mkdir build; cd build; builder .. -cd source_root; mkdir build; builder build +cd source_root; mkdir build; cd build; meson.py .. +cd source_root; mkdir build; meson.py build For questions contact jpakkane@gmail.com. diff --git a/run_tests.py b/run_tests.py index 20465093e..5892ec841 100755 --- a/run_tests.py +++ b/run_tests.py @@ -20,7 +20,7 @@ import os, subprocess, shutil, sys test_build_dir = 'work area' install_dir = os.path.join(os.path.split(os.path.abspath(__file__))[0], 'install dir') use_shell = len(sys.argv) > 1 -builder_command = './builder.py' +builder_command = './meson.py' if use_shell: generator_flags = ['--generator', 'shell'] compile_commands = ['compile.sh'] diff --git a/test cases/1 trivial/builder.txt b/test cases/1 trivial/builder.txt deleted file mode 100644 index 34264c59e..000000000 --- a/test cases/1 trivial/builder.txt +++ /dev/null @@ -1,7 +0,0 @@ -project('trivial test', 'c') - -sources = 'trivial.c' - -exe = executable('trivialprog', sources : sources) - -add_test('runtest', exe) diff --git a/test cases/1 trivial/meson.build b/test cases/1 trivial/meson.build new file mode 100644 index 000000000..34264c59e --- /dev/null +++ b/test cases/1 trivial/meson.build @@ -0,0 +1,7 @@ +project('trivial test', 'c') + +sources = 'trivial.c' + +exe = executable('trivialprog', sources : sources) + +add_test('runtest', exe) diff --git a/test cases/10 man install/builder.txt b/test cases/10 man install/builder.txt deleted file mode 100644 index 107f8b5aa..000000000 --- a/test cases/10 man install/builder.txt +++ /dev/null @@ -1,3 +0,0 @@ -project('man install', 'c') -m1 = man('foo.1') -m2 = man('bar.2') \ No newline at end of file diff --git a/test cases/10 man install/meson.build b/test cases/10 man install/meson.build new file mode 100644 index 000000000..107f8b5aa --- /dev/null +++ b/test cases/10 man install/meson.build @@ -0,0 +1,3 @@ +project('man install', 'c') +m1 = man('foo.1') +m2 = man('bar.2') \ No newline at end of file diff --git a/test cases/11 subdir/builder.txt b/test cases/11 subdir/builder.txt deleted file mode 100644 index bda1f9040..000000000 --- a/test cases/11 subdir/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -project('subdir test', 'c') -subdir('subdir') diff --git a/test cases/11 subdir/meson.build b/test cases/11 subdir/meson.build new file mode 100644 index 000000000..bda1f9040 --- /dev/null +++ b/test cases/11 subdir/meson.build @@ -0,0 +1,2 @@ +project('subdir test', 'c') +subdir('subdir') diff --git a/test cases/11 subdir/subdir/builder.txt b/test cases/11 subdir/subdir/builder.txt deleted file mode 100644 index 5b399f080..000000000 --- a/test cases/11 subdir/subdir/builder.txt +++ /dev/null @@ -1 +0,0 @@ -executable('prog', 'prog.c') diff --git a/test cases/11 subdir/subdir/meson.build b/test cases/11 subdir/subdir/meson.build new file mode 100644 index 000000000..5b399f080 --- /dev/null +++ b/test cases/11 subdir/subdir/meson.build @@ -0,0 +1 @@ +executable('prog', 'prog.c') diff --git a/test cases/12 data/builder.txt b/test cases/12 data/builder.txt deleted file mode 100644 index f529bacd2..000000000 --- a/test cases/12 data/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -project('data install test', 'c') -data('progname', sources : 'datafile.dat') diff --git a/test cases/12 data/meson.build b/test cases/12 data/meson.build new file mode 100644 index 000000000..f529bacd2 --- /dev/null +++ b/test cases/12 data/meson.build @@ -0,0 +1,2 @@ +project('data install test', 'c') +data('progname', sources : 'datafile.dat') diff --git a/test cases/13 pch/builder.txt b/test cases/13 pch/builder.txt deleted file mode 100644 index 9632cc58d..000000000 --- a/test cases/13 pch/builder.txt +++ /dev/null @@ -1,3 +0,0 @@ -project('pch test', 'c') - -exe = executable('prog', 'prog.c', pch : 'pch/prog.h') diff --git a/test cases/13 pch/meson.build b/test cases/13 pch/meson.build new file mode 100644 index 000000000..9632cc58d --- /dev/null +++ b/test cases/13 pch/meson.build @@ -0,0 +1,3 @@ +project('pch test', 'c') + +exe = executable('prog', 'prog.c', pch : 'pch/prog.h') diff --git a/test cases/14 cxx pch/builder.txt b/test cases/14 cxx pch/builder.txt deleted file mode 100644 index 966979b16..000000000 --- a/test cases/14 cxx pch/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -project('c++ pch test', 'cxx') -exe = executable('prog', 'prog.cc', pch : 'pch/prog.hh') diff --git a/test cases/14 cxx pch/meson.build b/test cases/14 cxx pch/meson.build new file mode 100644 index 000000000..966979b16 --- /dev/null +++ b/test cases/14 cxx pch/meson.build @@ -0,0 +1,2 @@ +project('c++ pch test', 'cxx') +exe = executable('prog', 'prog.cc', pch : 'pch/prog.hh') diff --git a/test cases/15 mixed pch/builder.txt b/test cases/15 mixed pch/builder.txt deleted file mode 100644 index 74380429e..000000000 --- a/test cases/15 mixed pch/builder.txt +++ /dev/null @@ -1,5 +0,0 @@ -project('mixed C and C++ pch test', 'cxx', 'c') - -pch = ['pch/main.hh', 'pch/func.h'] - -exe = executable('prog', 'main.cc', 'func.c', pch : pch) diff --git a/test cases/15 mixed pch/meson.build b/test cases/15 mixed pch/meson.build new file mode 100644 index 000000000..74380429e --- /dev/null +++ b/test cases/15 mixed pch/meson.build @@ -0,0 +1,5 @@ +project('mixed C and C++ pch test', 'cxx', 'c') + +pch = ['pch/main.hh', 'pch/func.h'] + +exe = executable('prog', 'main.cc', 'func.c', pch : pch) diff --git a/test cases/16 configure file/builder.txt b/test cases/16 configure file/builder.txt deleted file mode 100644 index 7fb3258c9..000000000 --- a/test cases/16 configure file/builder.txt +++ /dev/null @@ -1,6 +0,0 @@ -project('configure file test', 'c') - -var = 'mystring' -other = 'string 2' -second = ' bonus' -configure_file('config.h.in', 'config.h') diff --git a/test cases/16 configure file/meson.build b/test cases/16 configure file/meson.build new file mode 100644 index 000000000..7fb3258c9 --- /dev/null +++ b/test cases/16 configure file/meson.build @@ -0,0 +1,6 @@ +project('configure file test', 'c') + +var = 'mystring' +other = 'string 2' +second = ' bonus' +configure_file('config.h.in', 'config.h') diff --git a/test cases/17 if/builder.txt b/test cases/17 if/builder.txt deleted file mode 100644 index f163d74d2..000000000 --- a/test cases/17 if/builder.txt +++ /dev/null @@ -1,14 +0,0 @@ -project('if test', 'c') - -var1 = true -var2 = false - -if var1 - exe = executable('prog', 'prog.c') -endif - -if var2 - exe = executable('breakbreakbreak', 'crashing.c') -endif - -add_test('iftest', exe) diff --git a/test cases/17 if/meson.build b/test cases/17 if/meson.build new file mode 100644 index 000000000..f163d74d2 --- /dev/null +++ b/test cases/17 if/meson.build @@ -0,0 +1,14 @@ +project('if test', 'c') + +var1 = true +var2 = false + +if var1 + exe = executable('prog', 'prog.c') +endif + +if var2 + exe = executable('breakbreakbreak', 'crashing.c') +endif + +add_test('iftest', exe) diff --git a/test cases/18 else/builder.txt b/test cases/18 else/builder.txt deleted file mode 100644 index 1555384b3..000000000 --- a/test cases/18 else/builder.txt +++ /dev/null @@ -1,11 +0,0 @@ -project('else test', 'c') - -var = false - -if var - exe = executable('break', 'break.c') -else - exe = executable('prog', 'prog.c') -endif - -add_test('elsetest', exe) diff --git a/test cases/18 else/meson.build b/test cases/18 else/meson.build new file mode 100644 index 000000000..1555384b3 --- /dev/null +++ b/test cases/18 else/meson.build @@ -0,0 +1,11 @@ +project('else test', 'c') + +var = false + +if var + exe = executable('break', 'break.c') +else + exe = executable('prog', 'prog.c') +endif + +add_test('elsetest', exe) diff --git a/test cases/19 comparison/builder.txt b/test cases/19 comparison/builder.txt deleted file mode 100644 index 27f91229d..000000000 --- a/test cases/19 comparison/builder.txt +++ /dev/null @@ -1,33 +0,0 @@ -project('comparison', 'c') - -var1 = 'foo' -var2 = 'bar' - -if var1 == var2 - exe1 = executable('broken', 'broken.c') -else - exe1 = executable('prog1', 'prog.c') -endif - -if var1 == var1 - exe2 = executable('prog2', 'prog.c') -else - exe2 = executable('broken', 'broken.c') -endif - -if var1 != var2 - exe3 = executable('prog3', 'prog.c') -else - exe3 = executable('broken', 'broken.c') -endif - -if var1 != var1 - exe4 = executable('broken', 'broken.c') -else - exe4 = executable('prog4', 'prog.c') -endif - -add_test('equalfalse', exe1) -add_test('equaltrue', exe2) -add_test('nequaltrue', exe3) -add_test('nequalfalse', exe4) diff --git a/test cases/19 comparison/meson.build b/test cases/19 comparison/meson.build new file mode 100644 index 000000000..27f91229d --- /dev/null +++ b/test cases/19 comparison/meson.build @@ -0,0 +1,33 @@ +project('comparison', 'c') + +var1 = 'foo' +var2 = 'bar' + +if var1 == var2 + exe1 = executable('broken', 'broken.c') +else + exe1 = executable('prog1', 'prog.c') +endif + +if var1 == var1 + exe2 = executable('prog2', 'prog.c') +else + exe2 = executable('broken', 'broken.c') +endif + +if var1 != var2 + exe3 = executable('prog3', 'prog.c') +else + exe3 = executable('broken', 'broken.c') +endif + +if var1 != var1 + exe4 = executable('broken', 'broken.c') +else + exe4 = executable('prog4', 'prog.c') +endif + +add_test('equalfalse', exe1) +add_test('equaltrue', exe2) +add_test('nequaltrue', exe3) +add_test('nequalfalse', exe4) diff --git a/test cases/2 cxx/builder.txt b/test cases/2 cxx/builder.txt deleted file mode 100644 index 0352d0d93..000000000 --- a/test cases/2 cxx/builder.txt +++ /dev/null @@ -1,3 +0,0 @@ -project('c++ test', 'cxx') -exe = executable('trivialprog', 'trivial.cc') -add_test('runtest', exe) diff --git a/test cases/2 cxx/meson.build b/test cases/2 cxx/meson.build new file mode 100644 index 000000000..0352d0d93 --- /dev/null +++ b/test cases/2 cxx/meson.build @@ -0,0 +1,3 @@ +project('c++ test', 'cxx') +exe = executable('trivialprog', 'trivial.cc') +add_test('runtest', exe) diff --git a/test cases/20 array/builder.txt b/test cases/20 array/builder.txt deleted file mode 100644 index a3eac90b9..000000000 --- a/test cases/20 array/builder.txt +++ /dev/null @@ -1,6 +0,0 @@ -project('array test', 'c') - -arr = ['func.c', 'prog.c'] - -exe = executable('prog', sources : arr) -add_test('arr test', exe) diff --git a/test cases/20 array/meson.build b/test cases/20 array/meson.build new file mode 100644 index 000000000..a3eac90b9 --- /dev/null +++ b/test cases/20 array/meson.build @@ -0,0 +1,6 @@ +project('array test', 'c') + +arr = ['func.c', 'prog.c'] + +exe = executable('prog', sources : arr) +add_test('arr test', exe) diff --git a/test cases/21 includedir/builder.txt b/test cases/21 includedir/builder.txt deleted file mode 100644 index 17eec0e57..000000000 --- a/test cases/21 includedir/builder.txt +++ /dev/null @@ -1,4 +0,0 @@ -project('include dir test', 'c') - -inc = include_directories('include') -subdir('src') diff --git a/test cases/21 includedir/meson.build b/test cases/21 includedir/meson.build new file mode 100644 index 000000000..17eec0e57 --- /dev/null +++ b/test cases/21 includedir/meson.build @@ -0,0 +1,4 @@ +project('include dir test', 'c') + +inc = include_directories('include') +subdir('src') diff --git a/test cases/21 includedir/src/builder.txt b/test cases/21 includedir/src/builder.txt deleted file mode 100644 index 5eaeab683..000000000 --- a/test cases/21 includedir/src/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -exe = executable('prog', 'prog.c', 'func.c', include_dirs : inc) -add_test('inc test', exe) diff --git a/test cases/21 includedir/src/meson.build b/test cases/21 includedir/src/meson.build new file mode 100644 index 000000000..5eaeab683 --- /dev/null +++ b/test cases/21 includedir/src/meson.build @@ -0,0 +1,2 @@ +exe = executable('prog', 'prog.c', 'func.c', include_dirs : inc) +add_test('inc test', exe) diff --git a/test cases/22 header in file list/builder.txt b/test cases/22 header in file list/builder.txt deleted file mode 100644 index 09c302c69..000000000 --- a/test cases/22 header in file list/builder.txt +++ /dev/null @@ -1,4 +0,0 @@ -project('header in file list', 'c') - -exe = executable('prog', 'prog.c', 'header.h') -add_test('basic', exe) diff --git a/test cases/22 header in file list/meson.build b/test cases/22 header in file list/meson.build new file mode 100644 index 000000000..09c302c69 --- /dev/null +++ b/test cases/22 header in file list/meson.build @@ -0,0 +1,4 @@ +project('header in file list', 'c') + +exe = executable('prog', 'prog.c', 'header.h') +add_test('basic', exe) diff --git a/test cases/23 global arg/builder.txt b/test cases/23 global arg/builder.txt deleted file mode 100644 index 7ab6d448a..000000000 --- a/test cases/23 global arg/builder.txt +++ /dev/null @@ -1,11 +0,0 @@ -project('global arg test', 'cxx', 'c') - -add_global_arguments('-DMYTHING', language : 'c') -add_global_arguments('-DMYCXXTHING', language : 'cxx') - -exe1 = executable('prog', 'prog.c') -exe2 = executable('prog2', 'prog.cc') - -add_test('prog1', exe1) -add_test('prog2', exe2) - diff --git a/test cases/23 global arg/meson.build b/test cases/23 global arg/meson.build new file mode 100644 index 000000000..7ab6d448a --- /dev/null +++ b/test cases/23 global arg/meson.build @@ -0,0 +1,11 @@ +project('global arg test', 'cxx', 'c') + +add_global_arguments('-DMYTHING', language : 'c') +add_global_arguments('-DMYCXXTHING', language : 'cxx') + +exe1 = executable('prog', 'prog.c') +exe2 = executable('prog2', 'prog.cc') + +add_test('prog1', exe1) +add_test('prog2', exe2) + diff --git a/test cases/24 target arg/builder.txt b/test cases/24 target arg/builder.txt deleted file mode 100644 index a9ba17b4e..000000000 --- a/test cases/24 target arg/builder.txt +++ /dev/null @@ -1,7 +0,0 @@ -project('local arg test', 'cxx', 'c') - -exe1 = executable('prog', 'prog.cc', 'func.c', \ -c_args : '-DCTHING', \ -cxx_args : '-DCXXTHING') - -add_test('prog1', exe1) diff --git a/test cases/24 target arg/meson.build b/test cases/24 target arg/meson.build new file mode 100644 index 000000000..a9ba17b4e --- /dev/null +++ b/test cases/24 target arg/meson.build @@ -0,0 +1,7 @@ +project('local arg test', 'cxx', 'c') + +exe1 = executable('prog', 'prog.cc', 'func.c', \ +c_args : '-DCTHING', \ +cxx_args : '-DCXXTHING') + +add_test('prog1', exe1) diff --git a/test cases/25 numbers/builder.txt b/test cases/25 numbers/builder.txt deleted file mode 100644 index ea965b031..000000000 --- a/test cases/25 numbers/builder.txt +++ /dev/null @@ -1,7 +0,0 @@ -project('numbers', 'c') - -if host.pointer_size() == 64 - add_global_arguments('-DIS64', language : 'c') -endif - -add_test('sizetest', executable('prog', 'prog.c')) diff --git a/test cases/25 numbers/meson.build b/test cases/25 numbers/meson.build new file mode 100644 index 000000000..ea965b031 --- /dev/null +++ b/test cases/25 numbers/meson.build @@ -0,0 +1,7 @@ +project('numbers', 'c') + +if host.pointer_size() == 64 + add_global_arguments('-DIS64', language : 'c') +endif + +add_test('sizetest', executable('prog', 'prog.c')) diff --git a/test cases/26 endian/builder.txt b/test cases/26 endian/builder.txt deleted file mode 100644 index 54bdda264..000000000 --- a/test cases/26 endian/builder.txt +++ /dev/null @@ -1,7 +0,0 @@ -project('endian check', 'c') - -if host.is_big_endian() - add_global_arguments('c', '-DIS_BE') -endif - -add_test('endiantest', executable('prog', 'prog.c')) diff --git a/test cases/26 endian/meson.build b/test cases/26 endian/meson.build new file mode 100644 index 000000000..54bdda264 --- /dev/null +++ b/test cases/26 endian/meson.build @@ -0,0 +1,7 @@ +project('endian check', 'c') + +if host.is_big_endian() + add_global_arguments('c', '-DIS_BE') +endif + +add_test('endiantest', executable('prog', 'prog.c')) diff --git a/test cases/27 library versions/builder.txt b/test cases/27 library versions/builder.txt deleted file mode 100644 index cebcd64c6..000000000 --- a/test cases/27 library versions/builder.txt +++ /dev/null @@ -1,6 +0,0 @@ -project('library versions', 'c') - -lib = shared_library('somelib', 'lib.c', \ -version : '1.2.3', \ -soversion : '0', \ -install : true) diff --git a/test cases/27 library versions/meson.build b/test cases/27 library versions/meson.build new file mode 100644 index 000000000..cebcd64c6 --- /dev/null +++ b/test cases/27 library versions/meson.build @@ -0,0 +1,6 @@ +project('library versions', 'c') + +lib = shared_library('somelib', 'lib.c', \ +version : '1.2.3', \ +soversion : '0', \ +install : true) diff --git a/test cases/28 config subdir/builder.txt b/test cases/28 config subdir/builder.txt deleted file mode 100644 index 25f53dbfd..000000000 --- a/test cases/28 config subdir/builder.txt +++ /dev/null @@ -1,6 +0,0 @@ -project('subdirconfig', 'c') - -inc = include_directories('include') - -subdir('include') -subdir('src') diff --git a/test cases/28 config subdir/include/builder.txt b/test cases/28 config subdir/include/builder.txt deleted file mode 100644 index 8fb3282ed..000000000 --- a/test cases/28 config subdir/include/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -number = '0' -configure_file('config.h.in', 'config.h') diff --git a/test cases/28 config subdir/include/meson.build b/test cases/28 config subdir/include/meson.build new file mode 100644 index 000000000..8fb3282ed --- /dev/null +++ b/test cases/28 config subdir/include/meson.build @@ -0,0 +1,2 @@ +number = '0' +configure_file('config.h.in', 'config.h') diff --git a/test cases/28 config subdir/meson.build b/test cases/28 config subdir/meson.build new file mode 100644 index 000000000..25f53dbfd --- /dev/null +++ b/test cases/28 config subdir/meson.build @@ -0,0 +1,6 @@ +project('subdirconfig', 'c') + +inc = include_directories('include') + +subdir('include') +subdir('src') diff --git a/test cases/28 config subdir/src/builder.txt b/test cases/28 config subdir/src/builder.txt deleted file mode 100644 index 9908c5801..000000000 --- a/test cases/28 config subdir/src/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -exe = executable('prog', 'prog.c', include_dirs : inc) -add_test('subdir config', exe) diff --git a/test cases/28 config subdir/src/meson.build b/test cases/28 config subdir/src/meson.build new file mode 100644 index 000000000..9908c5801 --- /dev/null +++ b/test cases/28 config subdir/src/meson.build @@ -0,0 +1,2 @@ +exe = executable('prog', 'prog.c', include_dirs : inc) +add_test('subdir config', exe) diff --git a/test cases/29 external dep/builder.txt b/test cases/29 external dep/builder.txt deleted file mode 100644 index 6f6069886..000000000 --- a/test cases/29 external dep/builder.txt +++ /dev/null @@ -1,8 +0,0 @@ -project('external dependency', 'c') - -# Zlib is probably on all dev machines. - -dep = find_dep('zlib', required : true) -exe = executable('zlibprog', 'prog.c', deps : dep) - -add_test('zlibtest', exe) diff --git a/test cases/29 external dep/meson.build b/test cases/29 external dep/meson.build new file mode 100644 index 000000000..6f6069886 --- /dev/null +++ b/test cases/29 external dep/meson.build @@ -0,0 +1,8 @@ +project('external dependency', 'c') + +# Zlib is probably on all dev machines. + +dep = find_dep('zlib', required : true) +exe = executable('zlibprog', 'prog.c', deps : dep) + +add_test('zlibtest', exe) diff --git a/test cases/3 static/builder.txt b/test cases/3 static/builder.txt deleted file mode 100644 index fd33e1c3e..000000000 --- a/test cases/3 static/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -project('static library test', 'c') -lib = static_library('mylib', 'libfile.c') diff --git a/test cases/3 static/meson.build b/test cases/3 static/meson.build new file mode 100644 index 000000000..fd33e1c3e --- /dev/null +++ b/test cases/3 static/meson.build @@ -0,0 +1,2 @@ +project('static library test', 'c') +lib = static_library('mylib', 'libfile.c') diff --git a/test cases/4 shared/builder.txt b/test cases/4 shared/builder.txt deleted file mode 100644 index a148272f2..000000000 --- a/test cases/4 shared/builder.txt +++ /dev/null @@ -1,2 +0,0 @@ -project('shared library test', 'c') -lib = shared_library('mylib', 'libfile.c') diff --git a/test cases/4 shared/meson.build b/test cases/4 shared/meson.build new file mode 100644 index 000000000..a148272f2 --- /dev/null +++ b/test cases/4 shared/meson.build @@ -0,0 +1,2 @@ +project('shared library test', 'c') +lib = shared_library('mylib', 'libfile.c') diff --git a/test cases/5 linkstatic/builder.txt b/test cases/5 linkstatic/builder.txt deleted file mode 100644 index 8c8aebcfa..000000000 --- a/test cases/5 linkstatic/builder.txt +++ /dev/null @@ -1,5 +0,0 @@ -project('static library linking test', 'c') -lib = static_library('mylib', 'libfile.c') -exe = executable('prog', 'main.c', link_with : lib) - -add_test('runtest', exe) diff --git a/test cases/5 linkstatic/meson.build b/test cases/5 linkstatic/meson.build new file mode 100644 index 000000000..8c8aebcfa --- /dev/null +++ b/test cases/5 linkstatic/meson.build @@ -0,0 +1,5 @@ +project('static library linking test', 'c') +lib = static_library('mylib', 'libfile.c') +exe = executable('prog', 'main.c', link_with : lib) + +add_test('runtest', exe) diff --git a/test cases/6 linkshared/builder.txt b/test cases/6 linkshared/builder.txt deleted file mode 100644 index 4dcda7232..000000000 --- a/test cases/6 linkshared/builder.txt +++ /dev/null @@ -1,5 +0,0 @@ -project('shared library linking test', 'c') -lib = shared_library('mylib', 'libfile.c', install : true) -exe = executable('prog', 'main.c', link_with : lib, install : true) - -add_test('runtest', exe) diff --git a/test cases/6 linkshared/meson.build b/test cases/6 linkshared/meson.build new file mode 100644 index 000000000..4dcda7232 --- /dev/null +++ b/test cases/6 linkshared/meson.build @@ -0,0 +1,5 @@ +project('shared library linking test', 'c') +lib = shared_library('mylib', 'libfile.c', install : true) +exe = executable('prog', 'main.c', link_with : lib, install : true) + +add_test('runtest', exe) diff --git a/test cases/7 mixed/builder.txt b/test cases/7 mixed/builder.txt deleted file mode 100644 index 3e3250898..000000000 --- a/test cases/7 mixed/builder.txt +++ /dev/null @@ -1,3 +0,0 @@ -project('mixed C and C++', 'c', 'cxx') -exe = executable('prog', 'main.cc', 'func.c') -add_test('mixtest', exe) diff --git a/test cases/7 mixed/meson.build b/test cases/7 mixed/meson.build new file mode 100644 index 000000000..3e3250898 --- /dev/null +++ b/test cases/7 mixed/meson.build @@ -0,0 +1,3 @@ +project('mixed C and C++', 'c', 'cxx') +exe = executable('prog', 'main.cc', 'func.c') +add_test('mixtest', exe) diff --git a/test cases/8 install/builder.txt b/test cases/8 install/builder.txt deleted file mode 100644 index 677a2eeaa..000000000 --- a/test cases/8 install/builder.txt +++ /dev/null @@ -1,5 +0,0 @@ -project('install test', 'c') - -stlib = static_library('stat', 'stat.c', install : true) -shlib = shared_library('shar', 'shar.c', install : true) -exe = executable('prog', 'prog.c', install : true) diff --git a/test cases/8 install/meson.build b/test cases/8 install/meson.build new file mode 100644 index 000000000..677a2eeaa --- /dev/null +++ b/test cases/8 install/meson.build @@ -0,0 +1,5 @@ +project('install test', 'c') + +stlib = static_library('stat', 'stat.c', install : true) +shlib = shared_library('shar', 'shar.c', install : true) +exe = executable('prog', 'prog.c', install : true) diff --git a/test cases/9 header install/builder.txt b/test cases/9 header install/builder.txt deleted file mode 100644 index 6e54489a3..000000000 --- a/test cases/9 header install/builder.txt +++ /dev/null @@ -1,4 +0,0 @@ -project('header install', 'c') - -h1 = headers('rootdir.h') -h2 = headers('subdir.h', subdir : 'subdir') diff --git a/test cases/9 header install/meson.build b/test cases/9 header install/meson.build new file mode 100644 index 000000000..6e54489a3 --- /dev/null +++ b/test cases/9 header install/meson.build @@ -0,0 +1,4 @@ +project('header install', 'c') + +h1 = headers('rootdir.h') +h2 = headers('subdir.h', subdir : 'subdir') -- cgit v1.2.3