aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buildMinGW.conf47
-rw-r--r--src/fstring.h10
2 files changed, 57 insertions, 0 deletions
diff --git a/buildMinGW.conf b/buildMinGW.conf
new file mode 100644
index 0000000..03c9b38
--- /dev/null
+++ b/buildMinGW.conf
@@ -0,0 +1,47 @@
1# Build config file for libbu++
2#
3# Copyright (C) 2007-2008 Xagasoft, All rights reserved.
4#
5# This file is part of the libbu++ library and is released under the
6# terms of the license contained in the file LICENSE.
7
8default action: check group "lnhdrs", check "libbu++win.a"
9"tests" action: check group "lnhdrs", check group "tests"
10"all" action: check group "lnhdrs", check targets()
11
12set "CXXFLAGS" += "-ggdb -Wall"
13
14filesIn("src") filter regexp("^src/(.*)\\.h$", "bu/{re:1}.h"):
15 rule "hln",
16 group "lnhdrs",
17 target file,
18 input "src/{re:1}.h"
19
20"libbu++win.a":
21 rule "lib",
22 target file,
23 set "CXXFLAGS" += "-I.",
24 #input filesIn("src") filter regexp("^.*\\.cpp$")
25 input ["src/list.cpp", "src/exceptionbase.cpp", "src/exceptions.cpp", "src/fstring.cpp", "src/file.cpp", "src/hash.cpp", "src/sptr.cpp", "src/tafnode.cpp", "src/tafreader.cpp", "src/tafwriter.cpp", "src/stdstream.cpp", "src/stream.cpp", "src/archive.cpp", "src/archival.cpp"]
26
27rule "exe":
28 matches regexp("(.*)\\.win_o$"),
29 aggregate toString(" "),
30 perform command("wine c:/MinGW/bin/mingw32-g++.exe -o {target} {match} {LDFLAGS}")
31
32rule "lib":
33 matches regexp("(.*)\\.win_o$"),
34 aggregate toString(" "),
35 perform command("wine c:/MinGW/bin/ar.exe cr {target} {match}")
36
37rule "cpp":
38 matches regexp("(.*)\\.cpp$"),
39 produces "{re:1}.win_o",
40 requires commandToList("wine c:/MinGW/bin/mingw32-g++.exe -M {CXXFLAGS} {match}", "make"),
41 perform command("wine c:/MinGW/bin/mingw32-g++.exe {CXXFLAGS} -c -o {target} {match}")
42
43rule "hln":
44 matches regexp("src/(.*)\\.h"),
45 produces "bu/{re:1}.h",
46 perform command("ln -s ../src/{re:1}.h {target}")
47
diff --git a/src/fstring.h b/src/fstring.h
index 93216a1..31b55d2 100644
--- a/src/fstring.h
+++ b/src/fstring.h
@@ -11,7 +11,11 @@
11#include <stdint.h> 11#include <stdint.h>
12#include <string> 12#include <string>
13#include <memory> 13#include <memory>
14
15#ifndef WIN32
14#include <wordexp.h> 16#include <wordexp.h>
17#endif
18
15#include "bu/archival.h" 19#include "bu/archival.h"
16#include "bu/archive.h" 20#include "bu/archive.h"
17#include "bu/hash.h" 21#include "bu/hash.h"
@@ -531,6 +535,7 @@ namespace Bu
531 { 535 {
532 flatten(); 536 flatten();
533 537
538#ifndef WIN32
534 wordexp_t result; 539 wordexp_t result;
535 540
536 /* Expand the string for the program to run. */ 541 /* Expand the string for the program to run. */
@@ -550,6 +555,7 @@ namespace Bu
550 default: /* Some other error. */ 555 default: /* Some other error. */
551 return; 556 return;
552 } 557 }
558#endif
553 } 559 }
554 560
555 /** 561 /**
@@ -1061,4 +1067,8 @@ namespace Bu
1061#include <ostream> 1067#include <ostream>
1062std::basic_ostream<char>& operator<< (std::basic_ostream<char> &os, const Bu::FString &val ); 1068std::basic_ostream<char>& operator<< (std::basic_ostream<char> &os, const Bu::FString &val );
1063 1069
1070#ifndef VALTEST
1071#undef cpy
1072#endif
1073
1064#endif 1074#endif