GtkSharp/glib/Makefile.am

136 lines
3.8 KiB
Text
Raw Normal View History

SUBDIRS = glue
TARGET = $(ASSEMBLY)
ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = glib-sharp
noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config $(POLICY_ASSEMBLIES)
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = glib-sharp-2.0.pc
gapidir = $(datadir)/gapi-2.0
gapi_DATA = glib-api.xml
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk AssemblyInfo.cs $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
DISTCLEANFILES = $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
references =
sources = \
Argv.cs \
Boxed.cs \
CDeclCallbackAttribute.cs \
ClassInitializerAttribute.cs \
ConnectBeforeAttribute.cs \
DefaultSignalHandlerAttribute.cs \
DelegateWrapper.cs \
* generator/Parameters.cs (Parameters.Validate): If the parameters end with "callback, gpointer, GDestroyNotify", then mark the callback as having "notified" Scope. (Parameters.IsHidden): Hide user_data and GDestroyNotify after a callback. (Parameter.Scope): make this settable (Parameter.IsDestroyNotify): new test * generator/MethodBody.cs (Initialize): Handle "notified" callback scope (using a GCHandle and GLib.DestroyHelper.NotifyHandler) * generator/CallbackGen.cs (GenWrapper): Add a static "GetManagedDelegate" method to the wrapper type, to translate a native delegate back to its corresponding managed delegate. (FromNative): use GetManagedDelegate. * generator/ReturnValue.cs (Validate): We handle callback return values now * generator/SymbolTable.cs: marshal GDestroyNotify as GLib.DestroyNotify * glib/DestroyNotify.cs: Moved from gtk * gtk/Gtk.metadata: globally change GtkDestroyNotify to GDestroyNotify, but then change back the ones that are exposed in the API. Un-hide lots of methods we can correctly autogenerate now. * gtk/DestroyHelper.cs: moved to glib * gtk/*.custom: remove methods that are autogenerated now, add Obsolete wrappers where needed, replace Gtk.DestroyHelper usage with GLib.DestroyHelper. * gdk/Gdk.metadata: * gnome/Gnome.metadata: Turn Gdk.Drawable.SetData and Gnome.IconList.SetIconDataFull's GDestroyNotify args into gpointers so the generated API stays the same as it used to be. * rsvg/Handle.custom: implement deprecated SetSizeCallback * sample/GtkDemo/DemoIconView.cs (CreateSort): update for API changes svn path=/trunk/gtk-sharp/; revision=44020
2005-05-04 11:47:25 +00:00
DestroyNotify.cs \
EnumWrapper.cs \
ExceptionManager.cs \
FileUtils.cs \
Format.cs \
GException.cs \
GInterfaceAdapter.cs \
GInterfaceAttribute.cs \
Global.cs \
GString.cs \
* parser/gapi2xml.pl: make note of _get_type methods for enums * */*-api.xml: Regen, adding gtype="..." to many enum types * generator/EnumGen.cs (Generate): if the enum has the "gtype" property, add a GTypeAttribute pointing to an internal FooGType class whose GType property can be used to get the enum's GType. * generator/ObjectGen.cs: s/ObjectManager.RegisterType/GType.Register/ * glib/GTypeAttribute.cs: attribute for indicating a property that will return the GType of a type (particularly for enums, which can't have GType properties added to them). * glib/GType.cs: renamed from Type.cs to match the type name (public static readonly GType ...): add a few missing types. (Register): moved from ObjectManager.RegisterType (LookupGType): moved from TypeConverter.LookupType and extended to handle GTypeAttribute. Also, fix mappings for sbyte/byte/char, and return specific GTypes for Object subclasses rather than always returning GType.Object. [Fixes #74699] (LookupType): moved from ObjectWrapper.LookupType (ToString): return the type name * glib/Object.cs (RegisterGType): s/ObjectManager.Register/GType.Register/ (LookupGType): Make this protected internal so GType can access it. * glib/ObjectManager.cs (RegisterType): deprecate in favor of GType.Register. (LookupType): moved to GType * glib/TypeConverter.cs (LookupType): now a deprecated wrapper around GType.LookupGType. * glib/Value.cs: Use GType casts rather than TypeConverter * gtk/NodeStore.cs (ScanType): * gtk/ListStore.custom (ListStore): * gtk/TreeStore.custom (TreeStore): Use (GType) cast rather than TypeConverter. Remove the error check and exception, since the cast never returns GType.Invalid. (The check probably predates GLib.ManagedValue.) * gnome/PanelAppletFactory.cs (Register): Use a GType cast rather than GLib.Object.LookupGType (which is no longer accessible after an mcs bugfix) * sample/GtkDemo/DemoIconView.cs (CreateStore): use the Type[] constructor rather than the GType[] constructor, since it translates typeof(Gdk.Pixbuf) correctly now. svn path=/trunk/gtk-sharp/; revision=44038
2005-05-04 16:54:24 +00:00
GType.cs \
GTypeAttribute.cs \
Idle.cs \
IgnoreClassInitializersAttribute.cs \
InitiallyUnowned.cs \
IOChannel.cs \
IWrapper.cs \
ListBase.cs \
List.cs \
Log.cs \
MainContext.cs \
MainLoop.cs \
ManagedValue.cs \
Markup.cs \
Marshaller.cs \
MissingIntPtrCtorException.cs \
NotifyHandler.cs \
Object.cs \
ObjectManager.cs \
Opaque.cs \
ParamSpec.cs \
PropertyAttribute.cs \
PtrArray.cs \
Signal.cs \
SignalArgs.cs \
SignalAttribute.cs \
SignalCallback.cs \
SignalClosure.cs \
SList.cs \
Source.cs \
Spawn.cs \
Thread.cs \
Timeout.cs \
ToggleRef.cs \
TypeConverter.cs \
TypeFundamentals.cs \
TypeInitializerAttribute.cs \
UnwrappedObject.cs \
ValueArray.cs \
Value.cs
build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs
dist_sources = $(sources)
EXTRA_DIST = \
$(dist_sources) \
$(ASSEMBLY).config.in \
glib-sharp-2.0.pc.in \
glib-api.xml
gtk-sharp.snk: $(top_srcdir)/gtk-sharp.snk
cp $(top_srcdir)/gtk-sharp.snk .
AssemblyInfo.cs: $(top_builddir)/AssemblyInfo.cs
cp $(top_builddir)/AssemblyInfo.cs .
if PLATFORM_WIN32
GAPI_CDECL_INSERT=$(top_srcdir)/gapi-cdecl-insert --keyfile=gtk-sharp.snk $(ASSEMBLY)
else
GAPI_CDECL_INSERT=
endif
$(ASSEMBLY): $(build_sources) gtk-sharp.snk AssemblyInfo.cs
@rm -f $(ASSEMBLY).mdb
$(CSC) $(CSFLAGS) -unsafe -nowarn:0169,0612,0618 -out:$(ASSEMBLY) -target:library $(references) $(build_sources)
$(GAPI_CDECL_INSERT)
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config gtk-sharp.snk
@for i in $(POLICY_VERSIONS); do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:gtk-sharp.snk; \
done
install-data-local:
@if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi
uninstall-local:
@if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi