70 Commits

Author SHA1 Message Date
Colomban Wendling
8099fddd92 Remove leftover references to SVN
Closes #856.
2016-01-09 19:59:09 +01:00
Colomban Wendling
ad354b7477 Post release version bump
Say hello to Geany 1.27 "Rezer"!
2015-11-15 14:53:01 +01:00
Colomban Wendling
a50306cab3 Post release version bump
Say hello to Geany 1.26 "Rosset"!
2015-07-12 19:48:50 +02:00
Colomban Wendling
3bd7c80776 Replace references to GTK2 with GTK+
This allows to be GTK version agnostic, not to single out GTK3 builds.
2015-07-10 22:58:48 +02:00
Thomas Martitz
9224c3c391 win32: run geany.nsi.in through automake to replace @GTK_VERSION@ variable
This automatically keeps the installer's idea of Gtk version with the one
used to compile geany in sync.

Traditionally we use the bundles from gtk.org to compile geany, and this
is also used for the installer. With msys2, we can use precompiled
msys2 binaries. These exist for GTK3 as well so we can actually provide a
GTK3 based installer. The installer naturually should reflect this.
Msys2's GTK2 is also newer.

Use the new script gtk-bundle-from-msys2.sh to extract the precompiled
GTK binaries from msys2 / pacman for packing the installer (can also be
used to make a zip for sharing).

mkdir gtk; cd gtk; ../scripts/gtk-bundle-from-msys.sh [-c] [-z] [-2 | -3]

waf is also adapted to process geany.nsi.in. This implies geany.nsi is now
under _build_, not in the root anymore.
2015-07-05 18:28:09 +02:00
Matthew Brush
3a8ef62794 Fix GLib version number missed in last bump (oops) 2015-06-19 17:12:53 -07:00
Colomban Wendling
723f4302e0 autotools: Avoid building non-shared versions of the object files
libtool apparently builds every object twice by default when shared and
static objects need to be build differently.  As we never use the
statically linked objects, avoid building them at all.
2015-04-17 15:11:00 +02:00
Matthew Brush
bdc082cb77 Bump min. version of GTK2 to 2.24 and GLib to 2.28
Note: This is mostly search and replace. I've only tested with my
GTK+ 2.24.20 and not at all the Waf build system.
2015-04-12 18:05:28 -07:00
Colomban Wendling
a264b7ab77 Properly initialize Libtool 2015-03-10 23:10:06 +01:00
Matthew Brush
eb36500ac4 Improve Autotools build system for libgeany
Checks if the compiler supports -fvisibility and the linker supports
-dynamic-list arguments and use them instead of hardcoding. The new
geany-lib.m4 also accomodates future use of Libtool versioning.
2015-03-10 23:10:06 +01:00
Matthew Brush
d33758da92 Move Geany's core into a library (libgeany)
This will allow plugins to link against the core when accessing API
functions, now that the macro/struct/funcptr stuff is gone.

Also convert the helper libraries into Libtool helper libraries as
linking a shared library against static libraries is (apparently) not
portable.
2015-03-10 23:09:46 +01:00
Matthew Brush
056e7cb4c8 Change to GEANY_EXPORT_SYMBOL for callback functions
This allows them to be dynamically exported when -fvisibility=hidden
is applied.

TODO: remove the CFLAGS hack in configure.ac
2015-03-10 22:06:47 +01:00
Matthew Brush
a40ab0a4d9 Explicitly list symbols to dynamically export
Uses a Python script to generate a listing used by the linker to
determine which symbols to dynamically export. This provides finer
grained control of which symbols are dynamically exported, limiting
only to the ones needed for GtkBuilder signal connections.

The build system integration could probably be done a little cleaner.
2015-03-10 22:06:18 +01:00
Jiří Techet
18d517bd95 Use gtk-mac-integration so app bundle can be created on OS X
This patch adds the gtk-mac-integration library and uses it to
adjust various paths in Geany to point it inside the app bundle
if Geany runs from inside the bundle.

It adds the utils_resource_dir() utility function to return
correct directories for various kinds of resources for all supported
operating systems. Using this function the patch adjusts all Geany
resource, plugin, icon, doc, and locale paths.
2015-03-04 12:40:27 +01:00
Thomas Martitz
cc6602c2b6 autotools: Install to $prefix/data on win32
setup_paths() sets app->datadir to $prefix/win32. With mingw-via-autotools,
it installed data to $prefix/share/geany (like on Linux). With this change
data is installed to $prefix/data ($datarootdir is not changed).

This fixes geany startup after make install with autotools.

Linux:
pkgdatadir = ${datarootdir}/geany
GEANY_DATA_DIR = /path/to/prefix/share/geany

Win32:
pkgdatadir = ${prefix}/data
GEANY_DATA_DIR = /path/to/prefix/data
2015-02-25 09:23:12 +01:00
Colomban Wendling
1dc09597b2 Fix check for fnmatch and remove strict dependency on it for Windows
Strict dependency on fnmatch was removed in 52076d19e8fe7ab41ebc92928e.

We still have an optional dependency on it from CTags, but I don't
think we use this code, and anyways the checks we had for the optional
path to be taken were incorrect, so it was never actually used.

So, drop the dependency on libibrety for Windows builds, and fix the
remaining checks for an optional fnmatch so if it is found it can
actually be used.
2014-11-09 17:40:03 +01:00
Matthew Brush
87f5781258 Improve Docutils (and friends) support in Autotools
* Add `--enable-html-docs` and `--enable-pdf-docs` arguments
  (off by default)
* Add `RST2HTML`, `RST2LATEX` and `PDFLATEX` to override path to these
  tools.
* Add HTML and PDF doc status messages to configure summary
2014-04-27 18:04:39 -07:00
Matthew Brush
595b445984 Improve Doxygen support in Autotools build system
* Add `m4/geany-doxygen.m4` file
* Support `DOXYGEN` environment variable setting which Doxygen to use
* Support `--enable-api-docs` to activate building Doxygen docs
    (off by default)
2014-04-26 23:29:43 -07:00
Colomban Wendling
451d58a2dd Cleanup data files installation
Don't use wildcards to select files to install, nor manually perform
the installation when Automake could do it for us.

Using wildcards makes it hard to know what will really be installed,
and may results in installing files not part of the distribution.
2014-04-15 14:43:25 +02:00
Colomban Wendling
24f2363fb7 Post release version bump
Say hello to Geany 1.25 "Veed"!
2014-04-13 19:33:23 +02:00
Colomban Wendling
dec7b939fb Autotools: always put object files in the source file's directory
Enable Automake option "subdir-object" to put all object files next to
their source file rather than in the directory containing the Makefile.

This is quite expected, and will be the future behavior of Automake in
all cases, so enabling it now avoids future unexpected change.
2013-12-17 15:42:34 +01:00
Colomban Wendling
0592b4410c Autotools: enable Automake warnings 2013-12-17 15:41:22 +01:00
Colomban Wendling
ef331759b0 If we write C99, we better make sure we compile as such 2013-10-20 15:19:56 +02:00
Colomban Wendling
82f82ed372 Use GLib's portable version gethostname(): g_get_host_name()
Drop our own portability layer and use GLib's one instead (which
actually does exactly the same as our own).

Thanks to Matthew for spotting this.
2013-08-18 00:52:48 +02:00
Colomban Wendling
f0e590022b Fix the test suite with Automake < 1.13
The test suite uses a LOG_COMPILER, which requires the parallel-tests
Automake test driver which is the default only since version 1.13, so
explicitly enable it so it is used by earlier versions too.

Moreover, the parallel-tests test diver was introduced by Automake
1.11, as was the option, so we need to depend on it too.  It was
released 2009-05-17, which is 2 months after GTK 2.16, the minimum GTK
version we depend on (2009-03-13).  If this is a problem, we could
also rework the Automake test layout to use the older and a little
deprecated serial-tests test driver that is the historical one.
2013-07-12 15:39:57 +02:00
Colomban Wendling
c1deb7457f Add a test infrastructure for tag parsers 2013-06-23 15:08:27 +02:00
Colomban Wendling
35cc441b74 Merge branch 'gtk3-support'
Conflicts:
	src/ui_utils.c
2013-03-10 17:20:25 +01:00
Colomban Wendling
7e3a235436 Post release version bump
Say welcome to Geany 1.24 "Sakai"!
2013-03-10 17:00:01 +01:00
Colomban Wendling
8ece89096d Merge branch 'master' into gtk3-support 2013-01-29 15:29:10 +01:00
Colomban Wendling
dabae1f94f Replace images embedded in the sources with proper themable icons
Additionally, provide SVG versions of the icons as well as them
rendered at the various icons sizes.
2013-01-01 19:10:48 +01:00
Colomban Wendling
f735e6800b Add GTK3 version of our custom styles
Although GTK3 still have gtk_rc_parse_string(), it doesn't work anymore
for our overrides, so register proper CSS for them.
2012-10-09 13:25:12 +02:00
Colomban Wendling
484cc3adac Add configure flag --enable-gtk3 to build against GTK 3.x 2012-10-08 20:08:06 +02:00
Nick Treleaven
c72dce06a5 Merge remote-tracking branch 'origin/master' into tm/tree-refactoring
Conflicts:
	makefile.win32
	src/makefile.win32
2012-07-04 12:15:53 +01:00
Colomban Wendling
e9d61aa7e5 Post release version bump 2012-06-18 19:16:05 +02:00
Colomban Wendling
d69a153bb4 Refactor tagmanager source files architecture
Split ctags and tagmanager sources, as follows:

tagmanager/ctags: the parsers, more or less upstream CTags;
tagmanager/mio: local MIO library copy;
tagmanager/src: actual tagmanager sources.
2012-05-08 23:01:23 +02:00
Colomban Wendling
5f0963d470 List package dependencies only in configure.ac
This prevents from having to update both configure.ac and geany.pc.in
every time our dependencies (e.g. GTK version) change.
2012-04-12 18:41:53 +02:00
Colomban Wendling
7b2f0fe5ae Explicitly depend on GModule
GIO used to bring GModule, but it became a private dependency since
GIO 2.31.  So, add explicit checks for GModule so we still build with
GLib/GIO >= 2.31.

Closes #3483388.
2012-04-02 15:05:23 +02:00
Nick Treleaven
6de8f97cb3 Remove GNU regex now we have GRegex 2012-01-02 18:03:21 +00:00
Matthew Brush
a23e999b7b Bump GTK+ version to 2.16 2011-10-28 10:25:58 -07:00
Colomban Wendling
5762981165 Revert adding reStructuredText extension to README
This reverts commits fbf77f586d65e319ecc1da11e98dcd932dd88b28 and
3816e40190c2f5331992f795f297669a399803fb.

While having the .rst extension helps GitHub formatting the file, the
renaming broke both Autotools and Waf build systems.
2011-10-10 16:51:31 +02:00
Colomban Wendling
3816e40190 Fix Autotools failure requiring README (oops)
Automake requires README to exist by default, but it was renamed to
README.rst recently.  Thus, change Automake strictness to `foreign'
for README to be optional, and distribute README.rst explicitly.

Although `foreign' strictness don't require any of the README, INSTALL,
COPYING, etc. files, it still includes them if available, so the
distribution still includes them.
2011-10-10 01:47:27 +02:00
Colomban Wendling
d06e9f4575 Remove $Id$ and $Date$ SVN keywords 2011-10-09 22:57:35 +02:00
Colomban Wendling
7c7bf88263 Move configure check for The Force to its own file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6010 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:46:09 +00:00
Colomban Wendling
974bb4c254 Reorder configure.ac a bit
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6009 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:45:49 +00:00
Colomban Wendling
93a349005f Auto-generate final configure summary
Add and use macros to generate final configure summary rather than
hard-code it.  This allows for the status to be registered from where
they comes rather than all in the end.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6008 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:45:33 +00:00
Colomban Wendling
c955de3ffc Move various tricky configure logic to their own file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6007 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:45:08 +00:00
Colomban Wendling
f1bce08535 Move configure logic for MinGW, socket and VTE to their own files
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6006 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:44:48 +00:00
Colomban Wendling
574d5ce336 Move configure logic for i18n to its own file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6005 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:44:25 +00:00
Colomban Wendling
ff3ad0e642 Move configure logic for enabling plugins to its own file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6004 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:44:06 +00:00
Colomban Wendling
c7b57e24e2 Move configure logic for internal GNU regex usage to its own file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@6003 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-10-06 00:43:46 +00:00