Commit Graph

203 Commits

Author SHA1 Message Date
Potuz
e3e1464a01 Bug 794617 - Can't compile with -DWITH_GNUCASH=NO due to scm-gnome-utils
Pricedb.go doesn't need gnc-gnome-utils and we don't need WebKit or
gwenhywfar-gtk3 if we have no GUI.
2018-06-07 14:17:49 -07:00
John Ralls
a97f9faf91 Revert "Merge Keve Mueller's 'xea-fixes' into maint"
This reverts commit eb67baba5b, reversing
changes made to 0064dafbad.

Keve Mueller's xea-fixes branch was made from master, so merging it into
maint effectively merged master onto maint, not something we want to do.
2018-06-04 13:46:23 -07:00
John Ralls
eb67baba5b Merge Keve Mueller's 'xea-fixes' into maint 2018-06-03 10:26:52 -07:00
Ryan Schmidt
075021a88d
Fix build on case-sensitive filesystems 2018-05-26 11:45:45 -05:00
Geert Janssens
61071b9f6d Merge branch 'maint' 2018-05-12 14:10:38 +02:00
Geert Janssens
2e53d64726 Work around gtk warnings with gcc 8.0 2018-05-09 22:18:29 +02:00
Geert Janssens
1f3cf845c4 Work around a conflict between gcc 8.0 and swig 3.0
The swig 3.0 generated python wrappers trigger a warning converted into an error issued
by gcc 8.0 for using strncpy as follows:
strncpy(buff, "swig_ptr: ", 10);
The reason is this call will truncate the trailing null byte from the string.
This appears to have been fixed in swig master already but that's not released yet
so let disable the warning when compiling the swig wrappers until it is.
2018-05-09 22:18:29 +02:00
Geert Janssens
52ac539d23 Merge branch 'maint' into master
Handle conflict between version number reset and lowercasing all commands
2018-05-04 10:25:38 +02:00
Geert Janssens
a9f35ed7ae Lowercase cmake commands
A huge bikeshed fest but it distracted me enough to do it anyway.
2018-05-03 23:18:15 +02:00
John Ralls
6be7e82b9f Restore version in CMakeLists.txt.
Didn't raise a conflict in the merge for some reason.
2018-04-29 11:50:17 -07:00
John Ralls
6645d93f9a Release GnuCash 3.1 2018-04-28 14:33:04 -07:00
Di Mang
cf24f9830b
Remove GNUCASH_MICRO_VERSION from VERSION...
and remove of variable CPACK_PACKAGE_VERSION_PATCH
2018-04-04 23:11:13 +02:00
John Ralls
c6858e3e01 Release GnuCash 3.0 2018-04-01 13:22:49 -07:00
John Ralls
042476f4b4 Compile our own gwen-gtk3 if the supplied one is 4.20.0.
This is a bit brittle because it depends on Martin Preuss applying our
patch (already applied to borrowed/gwen-gtk3) before releasing 4.20.1,
but creating a proper test for the changes proved to be too difficult.
2018-04-01 10:25:57 -07:00
John Ralls
dc6d86efdb Convert to a two-digit version number. 2018-03-31 18:00:15 -07:00
John Ralls
dfb5de91ff Release 2.7.8. 2018-03-25 12:37:11 -07:00
John Ralls
6cce41b0d1 Actually change CMakeLists.txt for the release. 2018-03-18 13:27:21 -07:00
luc14n0
a893a632e9 Add COMPILE_GSCHEMAS to allow disabling gschemas compilation 2018-03-18 12:30:13 -07:00
Julian Wollrath
a43b115a45 Bug 791831 - Add python3 support
This switches swig to use python 3 specific features when generating the
bindings, switches the build over to python 3 and makes the neccesary
python 2 to 3 conversions in the bindings and tests.
2018-03-17 15:10:00 -07:00
John Ralls
85ec07ec30 Revert "Add COMPILE_SCHEMA to allow disabling gschema compilation"
This reverts commit 6b46299e8d, which was
pushed by mistake.
2018-03-17 14:56:37 -07:00
luc14n0
6b46299e8d Add COMPILE_SCHEMA to allow disabling gschema compilation 2018-03-17 00:14:25 -03:00
John Ralls
4a8c2645b4 Release 2.7.6 2018-03-11 22:23:32 -07:00
John Ralls
8c9855a6bb Pass GTEST_ROOT and GMOCK_ROOT through to distcheck.
So that they don't have to be exported in the environment if they're needed.
2018-03-11 10:38:05 -07:00
John Ralls
10b7cbc257 Fix boost linking problem on Unbuntu 14. 2018-03-09 16:24:16 -08:00
Guy Taylor
41d79f4ef3 Fix CPack package version number
Currently running "ninja-build package" produces a file with and incorrect
version number. This patch passes the CMake version variables into CPack to get
the correct filename.

Old "gnucash-0.1.1-Linux.tar.gz" new "gnucash-2.7.5-Linux.tar.gz"
2018-03-05 15:38:41 +00:00
Geert Janssens
b71c346ef5 Fix typo: should read 'older version of gettext' rather than 'older version of gnucash' 2018-02-28 16:48:49 +01:00
Geert Janssens
02c69a7933 Handle situation where gettext 0.19.6 is not available
By default we require gettext 0.19.6 as this is needed to generate a translated version of gnucash.desktop and gnucash.appdata.xml.
However this version is not available on some platforms (most notably our own ubuntu 14.04LTS travis instance).
By setting ALLOW_OLD_GETTEXT=ON, the build configuration falls back to generating untranslated versions of said files instead.
2018-02-27 22:38:27 +01:00
Geert Janssens
ba799feb2a Drop intltool in favour or using modern gettext
This requires at least gettext 0.19.6, and will break our ubuntu 14.04LTS test instance on Travis.
The next commit will work around this.
2018-02-27 22:30:06 +01:00
John Ralls
749beb197d Release GnuCash 2.7.5 2018-02-24 15:41:20 -08:00
Christopher Lam
578e9860d0 Add optional testing group for srfi-64
This adds an optional group to CMakeLists for
systems with SRFI-64 included.
2018-02-23 18:19:59 +08:00
John Ralls
f4965ae2ac Move direct check dependencies to the originating CMakeLists.txt.
Removing transitive dependencies from being declared direct.
2018-02-18 22:16:27 -08:00
John Ralls
ae6d2a2340 ADD_DEFINITIONS is obsolete for setting C/CXXFLAGS.
And setting -O0 in a debug build is unnecessary, that's the default.
2018-02-13 16:47:20 -08:00
John Ralls
da0df1c48d Bug 792883 - cmake: no way to turn off -Werror
Prepend settings to CMAKE_C_FLAGS and CMAKE_CXX_FLAGS so that values
supplied on the command line can override the fixed settings.
2018-02-13 14:11:44 -08:00
John Ralls
0912a5eaa1 Don't force-set Boost_USE_STATIC_LIBS or Boost_USE_STATIC_RUNTIME.
If you need to do that for your build pass the values in on the cmake
command line.

As for all of the noise about Boost's install name if APPLE, just fix it
with the install name tool. There are instructions at the boost module
in gnucash.modules.
2018-02-12 14:00:09 -08:00
John Ralls
c9a17236b9 Release 2.7.4 2018-02-03 08:44:34 -08:00
John Ralls
e6edb9d8e7 [MacOS]Conditionally set -Wno-unused-local-typedef and -Wno-unknown-attributes.
These flags aren't defined until Xcode8.
2018-02-03 08:07:15 -08:00
Geert Janssens
d345624c55 Fix project name, which also determines a number of default paths
It should be all lowercase to be consistent
2018-02-01 14:32:26 +01:00
Geert Janssens
ff24970f5f Add GENERATE_SWIG_WRAPPERS option to control the generation of swig wrappers independently of whether we're building from git
The swig wrappers don't really depend on git (but rather on swig) and there can be
situations the builder wants to generate the wrappers also from a tar ball.
2018-01-31 16:16:59 +01:00
Geert Janssens
1805972646 Revert "Allow user to override BUILDING_FROM_VCS"
This reverts commit ec9d5feba1.

This doesn't do what I had in mind. I'll come up with a
better solution shortly.
2018-01-30 21:24:39 +01:00
Geert Janssens
ec9d5feba1 Allow user to override BUILDING_FROM_VCS 2018-01-30 19:21:39 +01:00
Geert Janssens
f319a8e2a4 Re-enable building a dist tarball from within distcheck 2018-01-29 19:46:44 +01:00
Geert Janssens
ec213360f3 Review which built files are really needed in the dist tarball
Several were only there because they used to be generated via autogen.sh
and hence had to be included because autogen.sh was not supposed to be run
in a tarball based build.
A few others aren't clear so I have left them in for now:
- gnucash.1 (man page)
- gnucash-design.info (because it's unclear what we want to do with that one)

These files should clearly be in the tarball:
- gnucash.pot -> for our translators
- ChangeLog -> can't be generated outside of a git repo
- gnc-vcs-info.h -> can't be generated outside of a git repo
- guile/python bindings -> to avoid a swig dependency when building from tarball
2018-01-29 19:46:44 +01:00
Geert Janssens
4317d8a8f6 Improve handling of generated distributable files
- the two dist_add_... macros now both take a list of file names
as argument so more files can be added at once to the dist tarball.
- dist_add_generated now creates the right target by itself. There's
  no need to pass one any more
- make the swig generated *.py module files explicit output files
- change a couple of custom_targets into custom_commands. The only
  reason they were defined as targets was to ensure they got built
  before the dist tarball. This is now properly handled by the
  dist_add_... macros.
- correctly handle dependency on swig-runtime.h (using OBJECT_DEPENDS
  was not the way to do it according to that property's help page)
2018-01-29 19:46:44 +01:00
Geert Janssens
3dff4e5211 Fix make dist on a clean checkout
cmake with unix makefiles fails to resolve dist dependencies
added from COPY_FROM_BUILD if these dependencies aren't built yet.

This commit replaces the COPY_FROM_BUILD based logic with two new functions
'dist_add_configured' and 'dist_add_generated' to indicate which files should
be included in the dist tarball. The latter also adds a target level dependency
to the dist tarball custom command. Hence the former should
be used for files that get generated during a cmake run while the latter
should be used for files generated as the result of a 'make/ninja-build' run
(like files for which an add_custom_command rule exists).

Note: this commit also temporarily disables the dist target when building
from a tarball (and hence it won't be tested in distcheck either). This
will be handled in a future commit.
2018-01-29 19:46:44 +01:00
Geert Janssens
1258a2adfd Make potfile generation a custom target, and make the dist target depend on it 2018-01-29 19:46:44 +01:00
Geert Janssens
b12a6cf4d2 Revert "Partially revert commit 85bfbd8e8258e"
This reverts commit b6aae75317.

I was mistaken. We still need po/make-gnucash-pot.sh.in, not
make-gnucash-potfiles.in...
2018-01-29 19:46:44 +01:00
John Ralls
83128e2f1d Fix Webkit1 configuration for Windows Builds. 2018-01-27 16:42:56 -08:00
Geert Janssens
b6aae75317 Partially revert commit 85bfbd8e82
make-gnucash-potfiles.in is still needed after all
2018-01-27 14:13:06 +01:00
Geert Janssens
85bfbd8e82 Some minor cleanups after the autotools removal
This includes removal of the now unused make-gnucash-potfiles.in,
checking for CMakeLists.txt rather than Makefile.am in gnc-vcs-info,
upating the HACKING file,
and generally updating references to autotools.

I have kept "Makefile.*" exclude patterns in our CMakeLists.txt files
because they may still be lingering in the source directory from
previous autogen.sh runs. At some point these should probably be
removed as well still, together with the gitignore references to them.
2018-01-26 18:22:48 +01:00
John Ralls
1fc46fe140 Fix some dependency-checking failures.
Thanks to Robert Merkel for reporting them.
* Build gnucash-design.info if makeinfo is available, but don't complain
  if it isn't.
* Fail Cmake if LibXSLT and xsltproc aren't found. Those are required to
  build the gschemas and GnuCash won't work without them.
* Fix the WebKit detection so that it isn't faked out into thinking it has
  WebKit2Gtk-4.0 when it's WebKit2Gtk-3.0 and cmake is run with a
  CMakeCache.txt present.
2018-01-23 16:04:28 -08:00