Commit graph

36 commits

Author SHA1 Message Date
Bertrand Lorentz 9a72bb67ff build: Post-release version bump to 2.99.4
Better late than never.
2014-08-10 19:52:32 +02:00
Bertrand Lorentz fe0be81892 build: Require GLib 2.32 or above
GLib 2.32 has been released in March 2012, so we can now require it a
build and run time. This allows us to remove GLib 2.31 conditionals,
mark the Thread.Init as obsolete, and remove all references to
libgthread.

Please note that the API exposed in glib and gio is still from 2.28, but
we will have some API additions in the future. First example is the next
commit, which brings GBytes, an addition in GLib 2.32.
2014-08-10 18:20:01 +02:00
Bertrand Lorentz c9c2d099ba Update the Windows installer infrastructure for GTK+ 3
Port the current installer infrastructure from the gtk-sharp-2-12
branch, adapting it as needed. Credits go to Duncan Mak for
maintaining the 2.12 installer in the past few years.

When building on Windows, if the WiX toolset is available, the msi is
generated automatically at the end of the build.
2014-05-24 17:30:18 +02:00
Bertrand Lorentz a6c9634748 build: Fix opaquetest build on Windows
Create 2 makefile variable to facilitate build on Windows:
GENERATED_SOURCES_FILES to match files created by the code generator,
and GENERATED_SOURCES_OPTION for the corresponding option to be passed
to the compiler.

Also adapt the makefile for the valtest sample to use these variables.
2014-05-24 17:25:39 +02:00
Andrés G. Aragoneses 3495ca286d configure: use canonical paths when comparing prefixes
A user reported in the mailing list [1] to be advised to use
`/usr/lib64/pkgconfig/../..` as a prefix. This path is too
convoluted, could give problems, and also shouldn't be the
one to be compared against the prefix flag used, so use
readlink -m to follow '..' subfolders to transform it, in
this example, to simply `/usr`

[1] http://lists.ximian.com/pipermail/gtk-sharp-list/2014-May/011436.html
2014-05-24 16:19:10 +02:00
Bertrand Lorentz f719b82ede build: Tell libtoolize to put its m4 files in the m4 directory
Also have git ignore that m4 directory, as its content is generated by
autogen.sh.
2014-05-24 15:40:26 +02:00
Marcin Kolny dee590926a build: Add a pkg-config file for gdk-sharp-3.0
This allows consumers to specifically require gdk-sharp-3.0 without
having to pull in the full gtk-sharp-3.0.

Closes issue #101.

Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
2014-04-21 21:36:57 +02:00
Stephan Sundermann a74534e835 generator: Create a directory for each namespace
When dealing with several namespaces there might be classes with the same name
(especially Global which is autogenerated in g-i based bindings). On generation
the file would be overriden by the last occurence in the xml. To encounter
this every namespace has it's own directory now. This also improves structure
a lot when dealing with big libraries.

Also do the necessary adaption for the build and the csproj files.
2014-03-01 21:16:54 +01:00
Bertrand Lorentz 8885fa98af build: Fix references to AssemblyInfo.cs in makefiles on Windows
On Windows with MinGW, csc.exe is confused by paths like
"../AssemblyInfo.cs", so we need some trickery to have something that
works on both Linux and Windows.

This isn't pretty, but it's the best solution I could find right now.
The other approach would have been to go back to copying AssemblyInfo.cs
around, but that has it's own set of issues.
2014-02-23 19:17:05 +01:00
Bertrand Lorentz 398dc4aaf7 build: Tell .NET compiler to target the generated assemblies to 32-bit
The default value for the "platform" parameter is anycpu, which allows
the runtime to use the 64-bit mode on x86_64. This means that any
P/Invoke will only work with 64-bit native libraries.

The recommended version of native Windows binaries provided by the GTK+
project are 32-bit, so a Gtk# app running on 64-bit Windows will fail to
load them, causing a BadImageFormatException at runtime.

Using "-platform:x86" instructs the csc compiler to set a flag in the
generated assembly that instructs the runtime to use only 32-bit mode.

Please note that there are 64-bit GTK+ Windows binaries, but they are
marked as experimental, and we probably don't want explore this right
now.

Also pass the "nologo" parameter so that it doesn't output several
useless line when it is invoked.
2014-02-23 17:53:07 +01:00
Bertrand Lorentz a531510431 build: Rework handling of missing C# compiler in configure.ac
Only print the error in one place. Also add some comments.
2014-02-23 17:32:11 +01:00
Bertrand Lorentz bfc89a1555 build: Only check the mono prefix when using mono
This avoids strange message at the end of configure with .Net
2014-02-23 16:59:50 +01:00
Bertrand Lorentz 84993d237f build: Remove obsolete gcc flag when building on Windows
The -mno-cygwin parameter has been obsolete for quite some time. It is
now gone in recent gcc version, causing an error when you try to use it.

My understanding that gcc now does the right thing automatically.
2014-02-23 16:41:07 +01:00
Bertrand Lorentz 49295c119b build: Only build gui-thread-check profiler module on mono
The profiler module will only work with mono, so we don't need to build
it on Windows with the .Net framework.
2014-02-23 16:18:28 +01:00
Bertrand Lorentz 3ea36f5746 build: Post-release version bump to 2.99.3 2013-12-04 22:28:23 +01:00
Andrés G. Aragoneses efdf6463bb Simplify instructions about choosing the installation prefix
Clarify the README thanks to the use of pkg-config, and add a
configure-time warning so people notice about the problem without having
to read the README.
2013-11-02 15:33:31 +01:00
Bertrand Lorentz 2d83fb3073 Move the fixup tool from the parser to the generator folder
The parser will be going away at some point in the future, but we
will still need the fixup step. And the fixup step is really more
of a preliminary step for the generator anyway.
2013-10-13 17:04:56 +02:00
Bertrand Lorentz 62f0285177 build: Post-release version bump to 2.99.2 2013-10-09 16:40:02 +02:00
Bertrand Lorentz 6352e7d2db build: Update and remove some obsolete automake macro calls 2013-08-18 18:32:21 +02:00
Bertrand Lorentz 00aaa79ec1 build: Output a message when configure checks if we're on Windows 2013-03-29 18:30:12 +01:00
Andres G. Aragoneses 88bb31bfa7 glib: Use GTHREAD preprocessor flag with old versions of glib
We switch the logic from DISABLE_GTHREAD_CHECK to ENABLE_GTHREAD_INIT
to make the define clearer, and so that it is actually needed when using
older versions of glib, not newer.

Signed-off-by: Bertrand Lorentz <bertrand.lorentz@gmail.com>
2013-03-24 11:37:22 +01:00
Bertrand Lorentz 135e4cd258 build: Belated post-release version bump to 2.99.1 2012-11-04 18:25:40 +01:00
Andres G. Aragoneses 38770b8917 gui-thread-check: Merge config/build infrastructure with gtk-sharp 2012-11-04 00:32:09 +00:00
Bertrand Lorentz 496992cb25 build: Remove GDK_BACKEND variable in configure.ac
It isn't used anymore, and GTK+ can now be compiled with several
backends.
2012-10-14 16:20:47 +02:00
Bertrand Lorentz 5934e35e2d build: Update some macro calls in configure.ac 2012-10-14 16:10:30 +02:00
Bertrand Lorentz e02738bad6 build: Remove BUILD_GTK_CFLAGS and BUILD_GTK_LIBS variables
They're not used anywhere anymore.
2012-10-14 15:10:31 +02:00
Bertrand Lorentz 477710bd1e build: Fix API version for cairo and don't hardcode it
Cairo has a different API version that was hardcoded. Define it in a new
variable in configure.ac and use it in AssemblyInfo and Makefile.am.

This fixes make distcheck, as the cairo-sharp.dll assembly was not
getting uninstalled from the GAC.
2012-07-02 13:56:06 -04:00
Andres G. Aragoneses b008a626f8 glib: don't modify Makefile.am
The new -define flag DISABLE_GTHREAD_CHECK can be added at configure time to already existing $CSFLAGS, as Mike Kestner pointed out.
2012-05-04 22:20:14 +01:00
Andres G. Aragoneses 3862bc75ec glib: do not call g_thread_ functions in GLib >= 2.31
Based on downstream patch by by Christopher James Halse Rogers <raof@ubuntu.com>
Should fix BXC#2329 reported by Sergey Litvinov.
2012-05-03 23:45:07 +01:00
Bertrand Lorentz d17d94f07e gdk: Kill libgdksharpglue
The only remaining bits in gdk/glue were 2 obsolete functions, which
were not really used.

Also clean up Device.custom to remove obsolete bits, including
references to libgdksharpglue.
2011-07-03 16:44:16 +02:00
Mike Kestner 3ed7e0901e Update to Gtk+ 3.0.0 API.
* configure.ac: require gtk+-3.0.0 and glib-2.28.0
* gdk/gdk-api.raw: reparse
* gdk/gdk-symbols.xml: add alias for Window (XID) to gulong
* gtk/Plug.custom: update custom ctors to ulong XID versions.
* gtk/gtk-api.raw: reparse
* gtk/gtk-sharp.dll.config.in: change dllname remap to match 3.0.0 so.
* sources/.gitignore: fix glib and gtk+ dirs
* sources/Makefile.am: update to gtk+ 3.0.0
* sources/sources.xml: update to gtk+ 3.0.0
2011-02-12 15:30:20 -06:00
Mike Kestner f6d11d67b6 Cairo# 1.10.0 assembly.
* configure.ac: drop cairo conditionality
* cairo/AssemblyInfo.cs: set version to 1.10.0.0
* cairo/Makefile.am: unconditional build and add Region.cs
* cairo/cairo-api.xml: initial type exposure.
* pango/Makefile.am: use cairo-sharp.dll and cairo-api.xml
* pango/Pango.metadata: drop explicit symbol additions.
* gdk/Gdk.metadata: drop explicit symbol additions.
* gdk/Makefile.am: use cairo-sharp.dll and cairo-api.xml
* gtk/Makefile.am: use cairo-sharp.dll and cairo-api.xml
* sample/Makefile.am: use cairo-sharp.dll
* sample/GtkDemo/Makefile.am: use cairo-sharp.dll

This is an initial stab at a 1.10 binding.  It will probably take
more based on the number of errors still coming out of the Gdk
build.
2011-01-30 17:00:03 -06:00
Mike Kestner 364b2fc08a Add --debug to mono invocations in maintainer mode.
* configure.ac: add --debug to RUNTIME in maintainer mode.
2011-01-09 11:24:16 -06:00
Mike Kestner d995295ea5 Bump version and glib/gtk+ deps.
* configure.ac: depend on glib-2.27.90 and gtk+-2.99.0.  Change vertsion
to 2.99.0.
2011-01-08 08:48:10 -06:00
Mike Kestner ea7c52bbf9 Kill libglibsharpglue.
* configure.ac: remove glib/glue/Makefile expansion
* glib/Makefile.am: remove glue SUBDIR
* glib/Thread.cs: move to non-glue supported check
* glib/glue: kill
2011-01-07 21:22:35 -06:00
Mike Kestner fe2d4c311a Flatten the bootstrap and remove glade-sharp
2010-11-21  Mike Kestner  <mkestner@novell.com>

	* removed the glade dir from the build since libglade is
	no longer supported in gnome3.  removed the gapi2-compat stuff
	since it doesn't make much sense now.  Removed the bootstrap
	mechanism since we are unlikely to be releasing multiple API
	versions from the same tree going forward.  The build is now a
	straight autogen.sh like most autotools projects.
2010-11-21 21:18:06 -06:00
Renamed from configure.in.in (Browse further)