aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build/buildfile4
-rw-r--r--build/cxx/module.cxx8
-rw-r--r--build/cxx/rule.cxx8
3 files changed, 9 insertions, 11 deletions
diff --git a/build/buildfile b/build/buildfile
index 9ea95d5..7d3a32a 100644
--- a/build/buildfile
+++ b/build/buildfile
@@ -1,3 +1,5 @@
+import libs += libbutl
+
config = config/{operation module utility}
bin = bin/{target rule module}
cxx = cxx/{target rule module}
@@ -5,7 +7,7 @@ cxx = cxx/{target rule module}
exe{b}: cxx{b algorithm name operation spec scope variable target \
prerequisite rule file module context search diagnostics token lexer \
parser process timestamp path path-io utility filesystem dump options \
- $config $bin $cxx}
+ $config $bin $cxx} $libs
#@@ TODO
#
diff --git a/build/cxx/module.cxx b/build/cxx/module.cxx
index a511757..6efc1ed 100644
--- a/build/cxx/module.cxx
+++ b/build/cxx/module.cxx
@@ -4,8 +4,7 @@
#include <build/cxx/module>
-#include <istream>
-#include <ext/stdio_filebuf.h>
+#include <butl/fdstream>
#include <build/path>
#include <build/scope>
@@ -17,6 +16,7 @@
#include <build/config/utility>
using namespace std;
+using namespace butl;
namespace build
{
@@ -68,9 +68,7 @@ namespace build
try
{
process pr (args, false, false, true);
-
- __gnu_cxx::stdio_filebuf<char> fb (pr.in_ofd, ios_base::in);
- istream is (&fb);
+ ifdstream is (pr.in_ofd);
bool r (getline (is, ver));
diff --git a/build/cxx/rule.cxx b/build/cxx/rule.cxx
index 9248777..f63c92a 100644
--- a/build/cxx/rule.cxx
+++ b/build/cxx/rule.cxx
@@ -9,9 +9,8 @@
#include <cstddef> // size_t
#include <cstdlib> // exit
#include <utility> // move()
-#include <istream>
-#include <ext/stdio_filebuf.h>
+#include <butl/fdstream>
#include <build/scope>
#include <build/variable>
@@ -26,6 +25,7 @@
#include <build/cxx/target>
using namespace std;
+using namespace butl;
namespace build
{
@@ -279,9 +279,7 @@ namespace build
try
{
process pr (args.data (), false, false, true);
-
- __gnu_cxx::stdio_filebuf<char> fb (pr.in_ofd, ios_base::in);
- istream is (&fb);
+ ifdstream is (pr.in_ofd);
for (bool first (true); !is.eof (); )
{