| # Copyright (C) 2004 Toon Knapen |
| # |
| # Use, modification and distribution is subject to the Boost Software |
| # License Version 1.0. (See accompanying file LICENSE_1_0.txt or |
| # http://www.boost.org/LICENSE_1_0.txt) |
| |
| # |
| # This file contains common settings for all fortran tools |
| # |
| |
| import "class" : new ; |
| import feature : feature ; |
| |
| import type ; |
| import generators ; |
| import common ; |
| |
| type.register FORTRAN : f F for f77 ; |
| type.register FORTRAN90 : f90 F90 ; |
| |
| feature fortran : : free ; |
| feature fortran90 : : free ; |
| |
| class fortran-compiling-generator : generator |
| { |
| rule __init__ ( id : source-types + : target-types + : requirements * : optional-properties * ) |
| { |
| generator.__init__ $(id) : $(source-types) : $(target-types) : $(requirements) : $(optional-properties) ; |
| } |
| } |
| |
| rule register-fortran-compiler ( id : source-types + : target-types + : requirements * : optional-properties * ) |
| { |
| local g = [ new fortran-compiling-generator $(id) : $(source-types) : $(target-types) : $(requirements) : $(optional-properties) ] ; |
| generators.register $(g) ; |
| } |
| |
| class fortran90-compiling-generator : generator |
| { |
| rule __init__ ( id : source-types + : target-types + : requirements * : optional-properties * ) |
| { |
| generator.__init__ $(id) : $(source-types) : $(target-types) : $(requirements) : $(optional-properties) ; |
| } |
| } |
| |
| rule register-fortran90-compiler ( id : source-types + : target-types + : requirements * : optional-properties * ) |
| { |
| local g = [ new fortran90-compiling-generator $(id) : $(source-types) : $(target-types) : $(requirements) : $(optional-properties) ] ; |
| generators.register $(g) ; |
| } |
| |
| # FIXME: this is ugly, should find a better way (we'd want client code to |
| # register all generators as "generator.some-rule", not with "some-module.some-rule".) |
| IMPORT $(__name__) : register-fortran-compiler : : generators.register-fortran-compiler ; |
| IMPORT $(__name__) : register-fortran90-compiler : : generators.register-fortran90-compiler ; |