GtkSharp/glib/Makefile.am
Martin Kupec a76f60df81 Add possibility to pick glib type name for custom classes
This patch adds TypeName attribute which can be used on custom class
derived from GLib.Object in order to set GLib type name of the class.
2015-10-29 12:25:16 -05:00

142 lines
4 KiB
Makefile

SUBDIRS =
SNK = $(top_srcdir)/gtk-sharp.snk
TARGET = $(ASSEMBLY)
ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = glib-sharp
ASSEMBLY_NAME_VERSION = $(ASSEMBLY_NAME),Version=$(API_VERSION)
noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config $(POLICY_ASSEMBLIES)
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = glib-sharp-3.0.pc
gapidir = $(datadir)/gapi-3.0
gapi_DATA = glib-api.xml
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
DISTCLEANFILES = $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
references =
# TODO: auto-generate at compile time the following classes:
# Cond, Date, DateTime, Mutex, PollFD, RecMutex, (half)Source,
# SourceCallbackFuncs, SourceDummyMarshal, SourceFunc,
# SourceFuncNative, SourceFuncs, TimeVal, TimeZone
# (to do that, we need to fill missing pieces in glib's
# gobject-introspection metadata upstream)
sources = \
Argv.cs \
Bytes.cs \
ConnectBeforeAttribute.cs \
Cond.cs \
Date.cs \
DateTime.cs \
DefaultSignalHandlerAttribute.cs \
DestroyNotify.cs \
ExceptionManager.cs \
FileUtils.cs \
GException.cs \
GInterfaceAdapter.cs \
GInterfaceAttribute.cs \
GLibSynchronizationContext.cs \
Global.cs \
GString.cs \
GType.cs \
GTypeAttribute.cs \
Idle.cs \
InitiallyUnowned.cs \
IOChannel.cs \
IWrapper.cs \
KeyFile.cs \
ListBase.cs \
List.cs \
Log.cs \
MainContext.cs \
MainLoop.cs \
ManagedValue.cs \
Markup.cs \
Marshaller.cs \
MissingIntPtrCtorException.cs \
Mutex.cs \
NotifyHandler.cs \
Object.cs \
ObjectManager.cs \
Opaque.cs \
ParamSpec.cs \
PollFD.cs \
Priority.cs \
PropertyAttribute.cs \
PtrArray.cs \
RecMutex.cs \
Signal.cs \
SignalArgs.cs \
SignalAttribute.cs \
SignalClosure.cs \
SList.cs \
Source.cs \
SourceFunc.cs \
SourceFuncs.cs \
SourceDummyMarshal.cs \
GLibSharp.SourceFuncNative.cs \
GLibSharp.SourceDummyMarshalNative.cs \
SourceCallbackFuncs.cs \
Spawn.cs \
Thread.cs \
Timeout.cs \
TimeVal.cs \
TimeZone.cs \
ToggleRef.cs \
TypeFundamentals.cs \
TypeInitializerAttribute.cs \
TypeNameAttribute.cs \
ValueArray.cs \
Value.cs \
Variant.cs \
VariantType.cs
build_sources = $(addprefix $(srcdir)/, $(sources))
dist_sources = $(sources)
EXTRA_DIST = \
$(dist_sources) \
$(ASSEMBLY).config.in \
glib-sharp-3.0.pc.in \
glib-api.xml
$(ASSEMBLY): $(build_sources) $(SNK)
@rm -f $(ASSEMBLY).mdb
$(CSC) $(CSFLAGS) -keyfile:$(SNK) -unsafe -out:$(ASSEMBLY) -target:library $(references) $(build_sources) $(top_builddir)$(ASSEMBLYINFO)
policy.%.config: $(top_builddir)/policy.config
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$*/" $(top_builddir)/policy.config > $@
$(POLICY_ASSEMBLIES) : policy.%.$(ASSEMBLY): policy.%.config $(SNK)
$(AL) -link:policy.$*.config -out:$@ -keyfile:$(SNK)
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_VERSION) $(GACUTIL_FLAGS)"; \
"$(GACUTIL)" -u $(ASSEMBLY_NAME_VERSION) $(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