Commit Graph

28 Commits

Author SHA1 Message Date
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