# Copyright (c) 2004 Michael Stevens # Use, modification and distribution are subject to the # Boost Software License, Version 1.0. (See accompanying file # LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) # Bring in rules for testing import testing ; # Define features to test: # Value types: USE_FLOAT USE_DOUBLE USE_STD_COMPLEX # Proxies: USE_RANGE USE_SLICE # Storage types: USE_BOUNDED_ARRAY USE_UNBOUNDED_ARRAY # Vector types: USE_STD_VECTOR USE_BOUNDED_VECTOR # Matrix types: USE_MATRIX USE_BOUNDED_MATRIX USE_VECTOR_OF_VECTOR # Adaptors: USE_ADAPTOR UBLAS_TESTSET = [ modules.peek : UBLAS_TESTSET ] ; UBLAS_TESTSET ?= BOOST_UBLAS_NO_EXCEPTIONS USE_DOUBLE USE_STD_COMPLEX USE_RANGE USE_SLICE USE_UNBOUNDED_ARRAY USE_STD_VECTOR USE_BOUNDED_VECTOR USE_MATRIX ; # Sparse storage: USE_MAP_ARRAY USE_STD_MAP # Sparse vectors: USE_SPARSE_VECTOR USE_COMPRESSED_VECTOR USE_COORDINATE_VECTOR # Sparse matrices: USE_SPARSE_MATRIX USE_COMPRESSED_MATRIX USE_COORDINATE_MATRIX USE_SPARSE_VECTOR_OF_SPARSE_VECTOR USE_GENERALIZED_VECTOR_OF_VECTOR UBLAS_TESTSET_SPARSE = [ modules.peek : UBLAS_TESTSET_SPARSE ] ; UBLAS_TESTSET_SPARSE ?= BOOST_UBLAS_NO_EXCEPTIONS USE_DOUBLE USE_STD_COMPLEX # USE_RANGE USE_SLICE # Too complex for regression testing USE_UNBOUNDED_ARRAY USE_STD_MAP USE_SPARSE_VECTOR USE_COMPRESSED_VECTOR USE_COORDINATE_VECTOR USE_SPARSE_MATRIX USE_COMPRESSED_MATRIX USE_COORDINATE_MATRIX ; # Settings propogated to individual project targets, but not test-suite project : requirements ; test-suite numeric/uBLAS : [ run test1/test1.cpp test1/test11.cpp test1/test12.cpp test1/test13.cpp : # args : # input files : # requirements $(UBLAS_TESTSET) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] [ run test2/test2.cpp test2/test21.cpp test2/test22.cpp test2/test23.cpp : : : $(UBLAS_TESTSET) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] [ run test3/test3.cpp test3/test31.cpp test3/test32.cpp test3/test33.cpp : : : $(UBLAS_TESTSET_SPARSE) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] [ run test4/test4.cpp test4/test42.cpp test4/test43.cpp : : : $(UBLAS_TESTSET) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] [ run test5/test5.cpp test5/test52.cpp test5/test53.cpp : : : $(UBLAS_TESTSET) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] [ run test6/test6.cpp test6/test62.cpp test6/test63.cpp : : : $(UBLAS_TESTSET) vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" ] # Test7 checks uBLAS operation with interval types. # This causes too much compiler badness. Issues need to be addressed for VC7.1 VC8 CW9 and Intel 8 (windows) # [ run test7/test7.cpp # test7/test71.cpp # test7/test72.cpp # test7/test73.cpp # : : : # BOOST_UBLAS_USE_INTERVAL # $(UBLAS_TESTSET) # vacpp:"BOOST_UBLAS_NO_ELEMENT_PROXIES" # ] [ run test/placement_new.cpp ] [ compile concepts.cpp : # requirements EXTERNAL intel-linux:"-Xc" darwin:"-fabi-version=0" ] ;