1240116Smarcel// Copyright (c) 2009 The NetBSD Foundation, Inc.
2240116Smarcel// All rights reserved.
3240116Smarcel//
4240116Smarcel// Redistribution and use in source and binary forms, with or without
5240116Smarcel// modification, are permitted provided that the following conditions
6240116Smarcel// are met:
7240116Smarcel// 1. Redistributions of source code must retain the above copyright
8240116Smarcel//    notice, this list of conditions and the following disclaimer.
9240116Smarcel// 2. Redistributions in binary form must reproduce the above copyright
10240116Smarcel//    notice, this list of conditions and the following disclaimer in the
11240116Smarcel//    documentation and/or other materials provided with the distribution.
12240116Smarcel//
13240116Smarcel// THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND
14240116Smarcel// CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
15240116Smarcel// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
16240116Smarcel// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17240116Smarcel// IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY
18240116Smarcel// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19240116Smarcel// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
20240116Smarcel// GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
21240116Smarcel// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
22240116Smarcel// IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
23240116Smarcel// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
24240116Smarcel// IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25240116Smarcel
26273929Sjmmv#if !defined(ATF_CXX_BUILD_HPP)
27273929Sjmmv#define ATF_CXX_BUILD_HPP
28240116Smarcel
29240116Smarcel#include <string>
30240116Smarcel
31240116Smarcelnamespace atf {
32240116Smarcel
33240116Smarcelnamespace process {
34240116Smarcelclass argv_array;
35240116Smarcel} // namespace process
36240116Smarcel
37240116Smarcelnamespace build {
38240116Smarcel
39240116Smarcel// ------------------------------------------------------------------------
40240116Smarcel// Free functions.
41240116Smarcel// ------------------------------------------------------------------------
42240116Smarcel
43240116Smarcelprocess::argv_array c_o(const std::string&, const std::string&,
44240116Smarcel                        const process::argv_array&);
45240116Smarcelprocess::argv_array cpp(const std::string&, const std::string&,
46240116Smarcel                        const process::argv_array&);
47240116Smarcelprocess::argv_array cxx_o(const std::string&, const std::string&,
48240116Smarcel                          const process::argv_array&);
49240116Smarcel
50240116Smarcel} // namespace build
51240116Smarcel} // namespace atf
52240116Smarcel
53273929Sjmmv#endif // !defined(ATF_CXX_BUILD_HPP)
54