summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2009-03-10 17:02:03 -0400
committerJohn Wiegley <johnw@newartisans.com>2009-03-10 17:02:03 -0400
commit110f0b8023a8d6acdbfebff5d3c5521e52f3ac3b (patch)
tree01bccaaec7b9cd5b4c924bdf6ae3e5f3eff406e0
parent4f62bb17c1d6e88d903e1a20015b0f71d5f96cc4 (diff)
downloadfork-ledger-110f0b8023a8d6acdbfebff5d3c5521e52f3ac3b.tar.gz
fork-ledger-110f0b8023a8d6acdbfebff5d3c5521e52f3ac3b.tar.bz2
fork-ledger-110f0b8023a8d6acdbfebff5d3c5521e52f3ac3b.zip
Enabled use of pre-compiled headers by default
-rwxr-xr-xacprep56
-rw-r--r--src/account.cc2
-rw-r--r--src/accum.cc2
-rw-r--r--src/amount.cc2
-rw-r--r--src/balance.cc2
-rw-r--r--src/chain.cc2
-rw-r--r--src/commodity.cc2
-rw-r--r--src/compare.cc2
-rw-r--r--src/derive.cc2
-rw-r--r--src/emacs.cc2
-rw-r--r--src/error.cc2
-rw-r--r--src/expr.cc2
-rw-r--r--src/filters.cc2
-rw-r--r--src/format.cc2
-rw-r--r--src/generate.cc2
-rw-r--r--src/global.cc2
-rw-r--r--src/interactive.cc2
-rw-r--r--src/item.cc2
-rw-r--r--src/iterators.cc2
-rw-r--r--src/journal.cc2
-rw-r--r--src/main.cc2
-rw-r--r--src/mask.cc2
-rw-r--r--src/op.cc2
-rw-r--r--src/option.cc2
-rw-r--r--src/output.cc2
-rw-r--r--src/parser.cc2
-rw-r--r--src/post.cc2
-rw-r--r--src/precmd.cc2
-rw-r--r--src/predicate.cc2
-rw-r--r--src/py_amount.cc2
-rw-r--r--src/py_balance.cc2
-rw-r--r--src/py_chain.cc2
-rw-r--r--src/py_commodity.cc2
-rw-r--r--src/py_expr.cc2
-rw-r--r--src/py_flags.cc2
-rw-r--r--src/py_format.cc2
-rw-r--r--src/py_global.cc2
-rw-r--r--src/py_item.cc2
-rw-r--r--src/py_journal.cc2
-rw-r--r--src/py_post.cc2
-rw-r--r--src/py_report.cc2
-rw-r--r--src/py_scope.cc2
-rw-r--r--src/py_session.cc2
-rw-r--r--src/py_timelog.cc2
-rw-r--r--src/py_times.cc2
-rw-r--r--src/py_utils.cc2
-rw-r--r--src/py_value.cc2
-rw-r--r--src/py_xact.cc2
-rw-r--r--src/pyinterp.cc2
-rw-r--r--src/pyledger.cc2
-rw-r--r--src/quotes.cc2
-rw-r--r--src/report.cc2
-rw-r--r--src/scope.cc2
-rw-r--r--src/session.cc2
-rw-r--r--src/stats.cc2
-rw-r--r--src/stream.cc2
-rw-r--r--src/textual.cc2
-rw-r--r--src/timelog.cc2
-rw-r--r--src/times.cc2
-rw-r--r--src/token.cc2
-rw-r--r--src/utils.cc2
-rw-r--r--src/utils.h2
-rw-r--r--src/value.cc2
-rw-r--r--src/xact.cc2
-rw-r--r--test/UnitTests.cc3
-rw-r--r--test/unit/t_amount.cc2
-rw-r--r--test/unit/t_balance.cc2
-rw-r--r--test/unit/t_commodity.cc2
-rw-r--r--test/unit/t_expr.cc2
-rw-r--r--test/unit/t_times.cc2
-rw-r--r--test/unit/t_utils.cc2
71 files changed, 170 insertions, 27 deletions
diff --git a/acprep b/acprep
index e542de1e..a2295dc8 100755
--- a/acprep
+++ b/acprep
@@ -657,34 +657,14 @@ class PrepareBuild(CommandLineApp):
def setup_for_johnw(self):
# jww (2009-03-09): Some peculiarities specific to my system
if exists('/usr/local/stow/cppunit/include'):
- self.sys_include_dirs.append('/usr/local/stow/cppunit/include')
- self.sys_library_dirs.append('/usr/local/stow/cppunit/lib')
-
- self.option_pch()
- self.option_warn()
+ self.sys_include_dirs.insert(0, '/usr/local/stow/cppunit/include')
+ self.sys_library_dirs.insert(0, '/usr/local/stow/cppunit/lib')
if '-march=native' in self.configure_args:
self.CXXFLAGS.remove('-march=native')
self.CXXFLAGS.append('-march=nocona')
self.CXXFLAGS.append('-msse3')
- # g++ 4.0.1 cannot use PCH headers on OS X 10.5, so we must use a
- # newer version. However, it also means I can't use GLIBCXX_DEBUG.
- if '--enable-pch' not in self.configure_args and \
- exists('/opt/local/bin/g++-mp-4.4'):
- self.envvars['CC'] = '/opt/local/bin/gcc-mp-4.4'
- self.envvars['CXX'] = '/opt/local/bin/g++-mp-4.4'
- self.envvars['LD'] = '/opt/local/bin/g++-mp-4.4'
- elif '--enable-pch' not in self.configure_args and \
- exists('/opt/local/bin/g++-mp-4.3'):
- self.envvars['CC'] = '/opt/local/bin/gcc-mp-4.3'
- self.envvars['CXX'] = '/opt/local/bin/g++-mp-4.3'
- self.envvars['LD'] = '/opt/local/bin/g++-mp-4.3'
- elif exists('/usr/bin/g++-4.2'):
- self.envvars['CC'] = '/usr/bin/gcc-4.2'
- self.envvars['CXX'] = '/usr/bin/g++-4.2'
- self.envvars['LD'] = '/usr/bin/g++-4.2'
-
def setup_for_system(self):
self.setup_system_directories()
@@ -692,6 +672,11 @@ class PrepareBuild(CommandLineApp):
self.log.debug('System type is => ' + system)
+ # These options are global defaults at the moment
+ self.option_warn()
+ if not self.no_pch:
+ self.option_pch()
+
if system == 'Linux':
arch = self.get_stdout('uname', '-m')
if arch == 'x86_64':
@@ -712,8 +697,29 @@ class PrepareBuild(CommandLineApp):
self.setup_for_johnw()
+ # g++ 4.0.1 cannot use PCH headers on OS X 10.5, so we must use a
+ # newer version.
+ if exists('/opt/local/bin/g++-mp-4.4'):
+ self.envvars['CC'] = '/opt/local/bin/gcc-mp-4.4'
+ self.envvars['CXX'] = '/opt/local/bin/g++-mp-4.4'
+ self.envvars['LD'] = '/opt/local/bin/g++-mp-4.4'
+ elif exists('/opt/local/bin/g++-mp-4.3'):
+ self.envvars['CC'] = '/opt/local/bin/gcc-mp-4.3'
+ self.envvars['CXX'] = '/opt/local/bin/g++-mp-4.3'
+ self.envvars['LD'] = '/opt/local/bin/g++-mp-4.3'
+ elif exists('/usr/bin/g++-4.2'):
+ self.envvars['CC'] = '/usr/bin/gcc-4.2'
+ self.envvars['CXX'] = '/usr/bin/g++-4.2'
+ self.envvars['LD'] = '/usr/bin/g++-4.2'
+
+ if '--enable-pch' in self.configure_args:
+ self.options.use_glibcxx_debug = False
+ else:
+ self.option_no_pch()
+
if '--enable-pch' not in self.configure_args and \
- exists('/opt/local/bin/ccache') or exists('/usr/local/bin/ccache'):
+ exists('/opt/local/bin/ccache') or \
+ exists('/usr/local/bin/ccache'):
self.envvars['CC'] = 'ccache ' + self.envvars['CC']
self.envvars['CXX'] = 'ccache ' + self.envvars['CXX']
self.envvars['LD'] = 'ccache ' + self.envvars['LD']
@@ -887,8 +893,8 @@ class PrepareBuild(CommandLineApp):
self.sys_include_dirs.remove('/usr/local/stow/cppunit/include')
self.sys_library_dirs.remove('/usr/local/stow/cppunit/lib')
- self.sys_include_dirs.append('/usr/local/stow/cppunit-debug/include')
- self.sys_library_dirs.append('/usr/local/stow/cppunit-debug/lib')
+ self.sys_include_dirs.insert(0, '/usr/local/stow/cppunit-debug/include')
+ self.sys_library_dirs.insert(0, '/usr/local/stow/cppunit-debug/lib')
if exists('/usr/local/lib/libboost_regex-xgcc40-d-1_38.a'):
self.envvars['BOOST_HOME'] = '/usr/local'
diff --git a/src/account.cc b/src/account.cc
index 24849a72..711e815e 100644
--- a/src/account.cc
+++ b/src/account.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "account.h"
#include "post.h"
#include "xact.h"
diff --git a/src/accum.cc b/src/accum.cc
index d1de4965..d01d0e52 100644
--- a/src/accum.cc
+++ b/src/accum.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "utils.h"
namespace ledger {
diff --git a/src/amount.cc b/src/amount.cc
index 65dccb84..7c9a6931 100644
--- a/src/amount.cc
+++ b/src/amount.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "amount.h"
#include "commodity.h"
diff --git a/src/balance.cc b/src/balance.cc
index 366eb7a7..864926cf 100644
--- a/src/balance.cc
+++ b/src/balance.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "balance.h"
#include "commodity.h"
#include "unistring.h" // for justify()
diff --git a/src/chain.cc b/src/chain.cc
index e3bf2443..7b9083f0 100644
--- a/src/chain.cc
+++ b/src/chain.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "chain.h"
#include "predicate.h"
#include "filters.h"
diff --git a/src/commodity.cc b/src/commodity.cc
index 9e6865ab..22c92862 100644
--- a/src/commodity.cc
+++ b/src/commodity.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "amount.h"
#include "commodity.h"
diff --git a/src/compare.cc b/src/compare.cc
index d2d30d36..cca22691 100644
--- a/src/compare.cc
+++ b/src/compare.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "compare.h"
#include "op.h"
#include "post.h"
diff --git a/src/derive.cc b/src/derive.cc
index 4c85e1fb..84fe4fba 100644
--- a/src/derive.cc
+++ b/src/derive.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "derive.h"
#include "xact.h"
#include "post.h"
diff --git a/src/emacs.cc b/src/emacs.cc
index 64dee55d..4486b67a 100644
--- a/src/emacs.cc
+++ b/src/emacs.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "emacs.h"
#include "xact.h"
#include "post.h"
diff --git a/src/error.cc b/src/error.cc
index 8f78334a..9a654ccc 100644
--- a/src/error.cc
+++ b/src/error.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "utils.h"
namespace ledger {
diff --git a/src/expr.cc b/src/expr.cc
index 2b14e962..89214d51 100644
--- a/src/expr.cc
+++ b/src/expr.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "expr.h"
#include "parser.h"
diff --git a/src/filters.cc b/src/filters.cc
index f8736667..d0e345ae 100644
--- a/src/filters.cc
+++ b/src/filters.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "filters.h"
#include "iterators.h"
#include "journal.h"
diff --git a/src/format.cc b/src/format.cc
index 131ba9e2..4066cabd 100644
--- a/src/format.cc
+++ b/src/format.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "format.h"
#include "scope.h"
#include "unistring.h"
diff --git a/src/generate.cc b/src/generate.cc
index 958fc5dd..8796f0bf 100644
--- a/src/generate.cc
+++ b/src/generate.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "generate.h"
#include "session.h"
diff --git a/src/global.cc b/src/global.cc
index 509ceb5e..3b491c0e 100644
--- a/src/global.cc
+++ b/src/global.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "global.h"
#if defined(HAVE_BOOST_PYTHON)
#include "pyinterp.h"
diff --git a/src/interactive.cc b/src/interactive.cc
index a1d2933f..528ef9f2 100644
--- a/src/interactive.cc
+++ b/src/interactive.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "interactive.h"
namespace ledger {
diff --git a/src/item.cc b/src/item.cc
index 032a84cf..0f9b1dc8 100644
--- a/src/item.cc
+++ b/src/item.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "item.h"
namespace ledger {
diff --git a/src/iterators.cc b/src/iterators.cc
index 6a022772..9b07ace3 100644
--- a/src/iterators.cc
+++ b/src/iterators.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "iterators.h"
#include "journal.h"
#include "compare.h"
diff --git a/src/journal.cc b/src/journal.cc
index ded5d54f..fdb49e24 100644
--- a/src/journal.cc
+++ b/src/journal.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "journal.h"
#include "xact.h"
#include "account.h"
diff --git a/src/main.cc b/src/main.cc
index c203a2de..c9a922af 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "global.h" // This is where the meat of main() is, which
// was moved there for the sake of clarity here
#include "session.h"
diff --git a/src/mask.cc b/src/mask.cc
index bf45e6f5..135f6669 100644
--- a/src/mask.cc
+++ b/src/mask.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "mask.h"
namespace ledger {
diff --git a/src/op.cc b/src/op.cc
index 6327f16d..f80d444a 100644
--- a/src/op.cc
+++ b/src/op.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "op.h"
#include "scope.h"
#include "commodity.h"
diff --git a/src/option.cc b/src/option.cc
index a0701533..7d5b272d 100644
--- a/src/option.cc
+++ b/src/option.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "option.h"
namespace ledger {
diff --git a/src/output.cc b/src/output.cc
index b10dcff6..3e9b1abd 100644
--- a/src/output.cc
+++ b/src/output.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "output.h"
#include "xact.h"
#include "post.h"
diff --git a/src/parser.cc b/src/parser.cc
index 4b0c1b54..39004758 100644
--- a/src/parser.cc
+++ b/src/parser.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "parser.h"
namespace ledger {
diff --git a/src/post.cc b/src/post.cc
index 2c303a87..3a0f3cc4 100644
--- a/src/post.cc
+++ b/src/post.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "post.h"
#include "xact.h"
#include "account.h"
diff --git a/src/precmd.cc b/src/precmd.cc
index 3ed179f4..ef04cb79 100644
--- a/src/precmd.cc
+++ b/src/precmd.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "precmd.h"
#include "xact.h"
#include "post.h"
diff --git a/src/predicate.cc b/src/predicate.cc
index 49249482..ce71a180 100644
--- a/src/predicate.cc
+++ b/src/predicate.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "predicate.h"
namespace ledger {
diff --git a/src/py_amount.cc b/src/py_amount.cc
index 171cb586..a5a34a0b 100644
--- a/src/py_amount.cc
+++ b/src/py_amount.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
#include "pyutils.h"
#include "pyfstream.h"
diff --git a/src/py_balance.cc b/src/py_balance.cc
index 1e0834b8..086b7b12 100644
--- a/src/py_balance.cc
+++ b/src/py_balance.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_chain.cc b/src/py_chain.cc
index 7cc4bab4..7dac7fc6 100644
--- a/src/py_chain.cc
+++ b/src/py_chain.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_commodity.cc b/src/py_commodity.cc
index 592116df..4932df97 100644
--- a/src/py_commodity.cc
+++ b/src/py_commodity.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
#include "commodity.h"
diff --git a/src/py_expr.cc b/src/py_expr.cc
index 61ce4007..cad2c0fa 100644
--- a/src/py_expr.cc
+++ b/src/py_expr.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_flags.cc b/src/py_flags.cc
index b683fefb..647be111 100644
--- a/src/py_flags.cc
+++ b/src/py_flags.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_format.cc b/src/py_format.cc
index 8b061ddd..d4825b42 100644
--- a/src/py_format.cc
+++ b/src/py_format.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_global.cc b/src/py_global.cc
index af07ed7f..936e3fab 100644
--- a/src/py_global.cc
+++ b/src/py_global.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_item.cc b/src/py_item.cc
index 94483a10..0e1fe0f9 100644
--- a/src/py_item.cc
+++ b/src/py_item.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_journal.cc b/src/py_journal.cc
index ea006516..65eca838 100644
--- a/src/py_journal.cc
+++ b/src/py_journal.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_post.cc b/src/py_post.cc
index 2d4fcfb8..b1d62464 100644
--- a/src/py_post.cc
+++ b/src/py_post.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_report.cc b/src/py_report.cc
index 7683f46c..aa70f5f1 100644
--- a/src/py_report.cc
+++ b/src/py_report.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_scope.cc b/src/py_scope.cc
index 1bcb323a..cc85030c 100644
--- a/src/py_scope.cc
+++ b/src/py_scope.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_session.cc b/src/py_session.cc
index 7b025aab..7d9c28f9 100644
--- a/src/py_session.cc
+++ b/src/py_session.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_timelog.cc b/src/py_timelog.cc
index fc25c3e0..afb19266 100644
--- a/src/py_timelog.cc
+++ b/src/py_timelog.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/py_times.cc b/src/py_times.cc
index 45e7391d..4d6519ed 100644
--- a/src/py_times.cc
+++ b/src/py_times.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
#include "pyutils.h"
diff --git a/src/py_utils.cc b/src/py_utils.cc
index c211c507..cf98c5fe 100644
--- a/src/py_utils.cc
+++ b/src/py_utils.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
#include "pyutils.h"
#include "pyfstream.h"
diff --git a/src/py_value.cc b/src/py_value.cc
index 42d455d7..c7847d00 100644
--- a/src/py_value.cc
+++ b/src/py_value.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
#include "pyutils.h"
#include "commodity.h"
diff --git a/src/py_xact.cc b/src/py_xact.cc
index cc1887f9..b152e272 100644
--- a/src/py_xact.cc
+++ b/src/py_xact.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/pyinterp.cc b/src/pyinterp.cc
index 596271b8..a163175f 100644
--- a/src/pyinterp.cc
+++ b/src/pyinterp.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
namespace ledger {
diff --git a/src/pyledger.cc b/src/pyledger.cc
index b7f88a8e..cf7e1527 100644
--- a/src/pyledger.cc
+++ b/src/pyledger.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "pyinterp.h"
using namespace boost::python;
diff --git a/src/quotes.cc b/src/quotes.cc
index 90e3d70e..5dbbc962 100644
--- a/src/quotes.cc
+++ b/src/quotes.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "quotes.h"
namespace ledger {
diff --git a/src/report.cc b/src/report.cc
index 76546528..be1e47ee 100644
--- a/src/report.cc
+++ b/src/report.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "report.h"
#include "session.h"
#include "unistring.h" // jww (2009-03-04): really??
diff --git a/src/scope.cc b/src/scope.cc
index 4e3a9ab2..92d123ee 100644
--- a/src/scope.cc
+++ b/src/scope.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "scope.h"
namespace ledger {
diff --git a/src/session.cc b/src/session.cc
index e171ff4d..bbc196df 100644
--- a/src/session.cc
+++ b/src/session.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "session.h"
#include "commodity.h"
#include "xact.h"
diff --git a/src/stats.cc b/src/stats.cc
index 5a99579c..5bb97fd1 100644
--- a/src/stats.cc
+++ b/src/stats.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "derive.h"
#include "xact.h"
#include "post.h"
diff --git a/src/stream.cc b/src/stream.cc
index 283ac7e7..c7fd58fa 100644
--- a/src/stream.cc
+++ b/src/stream.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "stream.h"
namespace ledger {
diff --git a/src/textual.cc b/src/textual.cc
index 3652176a..8f7388a2 100644
--- a/src/textual.cc
+++ b/src/textual.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "journal.h"
#include "xact.h"
#include "post.h"
diff --git a/src/timelog.cc b/src/timelog.cc
index decc65bd..f7b79b9a 100644
--- a/src/timelog.cc
+++ b/src/timelog.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "timelog.h"
#include "xact.h"
#include "post.h"
diff --git a/src/times.cc b/src/times.cc
index 147106db..d83b6baa 100644
--- a/src/times.cc
+++ b/src/times.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "times.h"
namespace ledger {
diff --git a/src/token.cc b/src/token.cc
index deaa777e..b7c19ceb 100644
--- a/src/token.cc
+++ b/src/token.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "token.h"
#include "parser.h"
diff --git a/src/utils.cc b/src/utils.cc
index 14f89d84..f2449daf 100644
--- a/src/utils.cc
+++ b/src/utils.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "times.h"
/**********************************************************************
diff --git a/src/utils.h b/src/utils.h
index 667cd6e8..462cef52 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -44,8 +44,6 @@
#ifndef _UTILS_H
#define _UTILS_H
-#include <system.hh>
-
/**
* @name Default values
*/
diff --git a/src/value.cc b/src/value.cc
index 2797eb0c..53e2bdeb 100644
--- a/src/value.cc
+++ b/src/value.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "value.h"
#include "commodity.h"
#include "unistring.h"
diff --git a/src/xact.cc b/src/xact.cc
index 0ad223a1..9e5322fa 100644
--- a/src/xact.cc
+++ b/src/xact.cc
@@ -29,6 +29,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <system.hh>
+
#include "xact.h"
#include "post.h"
#include "account.h"
diff --git a/test/UnitTests.cc b/test/UnitTests.cc
index 16e7e520..2c5c0406 100644
--- a/test/UnitTests.cc
+++ b/test/UnitTests.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include <cppunit/CompilerOutputter.h>
#include <cppunit/TestResult.h>
#include <cppunit/TestResultCollector.h>
@@ -8,6 +10,7 @@
#include <cppunit/extensions/TestFactoryRegistry.h>
#include "UnitTests.h"
+
#include "utils.h"
// Create the CppUnit registry
diff --git a/test/unit/t_amount.cc b/test/unit/t_amount.cc
index 05505fda..8aa67137 100644
--- a/test/unit/t_amount.cc
+++ b/test/unit/t_amount.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_amount.h"
#include "amount.h"
diff --git a/test/unit/t_balance.cc b/test/unit/t_balance.cc
index 50694612..335d1a52 100644
--- a/test/unit/t_balance.cc
+++ b/test/unit/t_balance.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_balance.h"
#include "utils.h"
diff --git a/test/unit/t_commodity.cc b/test/unit/t_commodity.cc
index 969b14c2..de46211c 100644
--- a/test/unit/t_commodity.cc
+++ b/test/unit/t_commodity.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_commodity.h"
#include "amount.h"
diff --git a/test/unit/t_expr.cc b/test/unit/t_expr.cc
index b0bad813..49d7dd23 100644
--- a/test/unit/t_expr.cc
+++ b/test/unit/t_expr.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_expr.h"
#include "expr.h"
diff --git a/test/unit/t_times.cc b/test/unit/t_times.cc
index 9f97be35..b1dffac8 100644
--- a/test/unit/t_times.cc
+++ b/test/unit/t_times.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_times.h"
#include "utils.h"
diff --git a/test/unit/t_utils.cc b/test/unit/t_utils.cc
index c6861dd1..6c63359c 100644
--- a/test/unit/t_utils.cc
+++ b/test/unit/t_utils.cc
@@ -1,3 +1,5 @@
+#include <system.hh>
+
#include "t_utils.h"
CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(UtilitiesTestCase, "util");