From a7dec876aae2f4f1aa77ce26ff443de2aa9235ca Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 7 Dec 2009 17:43:28 -0500 Subject: Add mono xml api file --- sources/app-indicator.sources.xml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 sources/app-indicator.sources.xml diff --git a/sources/app-indicator.sources.xml b/sources/app-indicator.sources.xml new file mode 100644 index 0000000..3ba4c05 --- /dev/null +++ b/sources/app-indicator.sources.xml @@ -0,0 +1,12 @@ + + + + + + app-indicator-enum-types.h.in + app-indicator-enum-types.c.in + + + + + -- cgit v1.2.3 From e945be8427993928c3753849e87011f6a93b3a1e Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 7 Dec 2009 19:03:41 -0500 Subject: Make build work --- sources/app-indicator.sources.xml | 4 ++-- sources/libappindicator-api.metadata | 8 ++++++++ 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 sources/libappindicator-api.metadata diff --git a/sources/app-indicator.sources.xml b/sources/app-indicator.sources.xml index 3ba4c05..d2568c5 100644 --- a/sources/app-indicator.sources.xml +++ b/sources/app-indicator.sources.xml @@ -1,6 +1,6 @@ - - + + app-indicator-enum-types.h.in diff --git a/sources/libappindicator-api.metadata b/sources/libappindicator-api.metadata new file mode 100644 index 0000000..a86a375 --- /dev/null +++ b/sources/libappindicator-api.metadata @@ -0,0 +1,8 @@ + + + ApplicationIndicator + NewAttentionIcon + NewStatus + ConnectionChanged + NewIcon + -- cgit v1.2.3 From 633509804d73121082eaa5f02c361d3f8df510b2 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 7 Dec 2009 19:10:16 -0500 Subject: Ensure names are nice and pretty --- sources/libappindicator-api.metadata | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sources/libappindicator-api.metadata b/sources/libappindicator-api.metadata index a86a375..36c69e1 100644 --- a/sources/libappindicator-api.metadata +++ b/sources/libappindicator-api.metadata @@ -5,4 +5,11 @@ NewStatus ConnectionChanged NewIcon + ID + Category + Status + IconName + AttentionIconName + Menu + Connected -- cgit v1.2.3 From dc33785e02e846dc061b06a349a1d6033e333d35 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 7 Dec 2009 19:11:11 -0500 Subject: Add script to automate building (someone should do this without autofoo) --- sources/build-mono-bindings.sh | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100755 sources/build-mono-bindings.sh diff --git a/sources/build-mono-bindings.sh b/sources/build-mono-bindings.sh new file mode 100755 index 0000000..bca765e --- /dev/null +++ b/sources/build-mono-bindings.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +gapi2-parser app-indicator.sources.xml + +cp libappindicator-api.raw libappindicator-api.xml + +gapi2-fixup --api=libappindicator-api.xml --metadata=libappindicator-api.metadata + +gapi2-codegen --outdir=generated `pkg-config --cflags gtk-sharp-2.0` --generate libappindicator-api.xml + +gmcs -pkg:gtk-sharp-2.0 -target:library -out:AppIndicator.dll generated/*.cs -- cgit v1.2.3 From 6d3743ef998358604fc37a3e1759257cd1061523 Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Fri, 11 Dec 2009 10:28:06 -0600 Subject: Build for Mono bindings --- Makefile.am | 1 + configure.ac | 54 +++++++++++++++++++++++++++++++- sources/Makefile.am | 39 +++++++++++++++++++++++ sources/appindicator-sharp.dll.config.in | 7 +++++ sources/appindicator-sharp.pc.in | 12 +++++++ sources/build-mono-bindings.sh | 11 ------- 6 files changed, 112 insertions(+), 12 deletions(-) create mode 100644 sources/Makefile.am create mode 100644 sources/appindicator-sharp.dll.config.in create mode 100644 sources/appindicator-sharp.pc.in delete mode 100755 sources/build-mono-bindings.sh diff --git a/Makefile.am b/Makefile.am index 33f9f3e..14ff7f7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,6 @@ SUBDIRS = data \ src \ + sources \ example \ tests diff --git a/configure.ac b/configure.ac index 1b5e120..bf4aff8 100644 --- a/configure.ac +++ b/configure.ac @@ -26,7 +26,7 @@ AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal]) PKG_PROG_PKG_CONFIG ########################### -# Dependencies +# Dependencies ########################### GTK_REQUIRED_VERSION=2.12 @@ -40,6 +40,55 @@ PKG_CHECK_MODULES(INDICATOR, gtk+-2.0 >= $GTK_REQUIRED_VERSION AC_SUBST(INDICATOR_CFLAGS) AC_SUBST(INDICATOR_LIBS) +########################### +# Check for Mono support +########################### +MONO_REQUIRED_VERSION=1.0 +PKG_CHECK_MODULES(MONO_DEPENDENCY, mono >= $MONO_REQUIRED_VERSION, has_mono=true, has_mono=false) + +AC_PATH_PROG(AL, al, no) +if test "x$AL" = "xno" ; then + AC_MSG_ERROR([No al tool found. You need to install Mono.]) +fi + +if test "x$has_mono" = "xtrue" ; then + GENERATED_SOURCES=generated/*.cs + AC_PATH_PROG(RUNTIME, mono, no) + + if test "x$RUNTIME" != "no" ; then + RUNTIME=mono + fi + + AC_PATH_PROG(CSC, gmcs, no) + LIB_PREFIX=.so + LIB_SUFFIX= +fi + +if test "x$CSC" = "xno" ; then + AC_MSG_ERROR([No Mono compiler found.]) +fi + +AC_SUBST(RUNTIME) +AC_SUBST(CSC) +AC_SUBST(LIB_PREFIX) +AC_SUBST(LIB_SUFFIX) +AC_SUBST(GENERATED_SOURCES) + +GLIB_SHARP_REQ_VERSION=2.12.1 +GTK_SHARP_REQ_VERSION=2.12 +PKG_CHECK_MODULES(GTK_SHARP, gtk-sharp-2.0 >= $GTK_SHARP_REQ_VERSION) +AC_SUBST(GTK_SHARP_LIBS) +AC_SUBST(GTK_SHARP_CFLAGS) + +PKG_CHECK_MODULES(GAPI, gapi-2.0 >= $GLIB_SHARP_REQ_VERSION) +AC_PATH_PROG(GAPI_PARSER, gapi2-parser, no) +AC_SUBST(GAPI_PARSER) +AC_PATH_PROG(GAPI_CODEGEN, gapi2-codegen, no) +AC_SUBST(GAPI_CODEGEN) +AC_PATH_PROG(GAPI_FIXUP, gapi2-fixup, no) +AC_SUBST(GAPI_FIXUP) + + ########################### # Check to see if we're local ########################### @@ -79,6 +128,9 @@ AC_SUBST(DBUSSERVICEDIR) AC_OUTPUT([ Makefile src/Makefile +sources/Makefile +sources/appindicator-sharp.dll.config +sources/appindicator-sharp.pc data/Makefile tests/Makefile example/Makefile diff --git a/sources/Makefile.am b/sources/Makefile.am new file mode 100644 index 0000000..23e8214 --- /dev/null +++ b/sources/Makefile.am @@ -0,0 +1,39 @@ +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = appindicator-sharp.pc + +API = libappindicator-api.xml +RAW_API = libappindicator-api.raw +METADATA = libappindicator-api.metadata +ASSEMBLY_NAME = appindicator-sharp +ASSEMBLY = appindicator-sharp.dll +TARGET = $(ASSEMBLY) $(ASSEMBLY).config +assemblydir = $(libdir)/appindicator-sharp +assembly_DATA = $(TARGET) +CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) +DISTCLEANFILES = $(ASSEMBLY).config +EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp.pc.in appindicator-sharp.dll.config.in + +references = $(GTK_SHARP_LIBS) + +$(RAW_API): app-indicator.sources.xml + $(GAPI_PARSER) app-indicator.sources.xml + +$(API): $(METADATA) $(RAW_API) + cp $(srcdir)/$(RAW_API) $(API) + chmod u+w $(API) + @if test -n '$(METADATA)'; then \ + echo "$(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA)"; \ + $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \ + fi + +api_includes = $(GTK_SHARP_FLAGS) + +generated-stamp: $(API) + rm -f generated/* && \ + $(GAPI_CODEGEN) --generate $(API) $(api_includes) \ + --outdir=generated --assembly-name=$(ASSEMBLY_NAME) \ + && touch generated-stamp + +$(ASSEMBLY): generated-stamp + @rm -f $(ASSEMBLY).mdb + $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) \ No newline at end of file diff --git a/sources/appindicator-sharp.dll.config.in b/sources/appindicator-sharp.dll.config.in new file mode 100644 index 0000000..c8caa80 --- /dev/null +++ b/sources/appindicator-sharp.dll.config.in @@ -0,0 +1,7 @@ + + + + + + + diff --git a/sources/appindicator-sharp.pc.in b/sources/appindicator-sharp.pc.in new file mode 100644 index 0000000..be5595a --- /dev/null +++ b/sources/appindicator-sharp.pc.in @@ -0,0 +1,12 @@ +prefix=${pcfiledir}/../.. +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +assemblies_dir=${libdir}/appindicator-sharp + +Name: appindicator +Description: application indicators for .NET +Version: @VERSION@ +Libraries: ${assemblies_dir}/appindicator-sharp.dll ${assemblies_dir}/appindicator-sharp.dll.config +Requires: gtk-sharp-2.0 +Cflags: +Libs: -r:${assemblies_dir}/appindicator-sharp.dll diff --git a/sources/build-mono-bindings.sh b/sources/build-mono-bindings.sh deleted file mode 100755 index bca765e..0000000 --- a/sources/build-mono-bindings.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash - -gapi2-parser app-indicator.sources.xml - -cp libappindicator-api.raw libappindicator-api.xml - -gapi2-fixup --api=libappindicator-api.xml --metadata=libappindicator-api.metadata - -gapi2-codegen --outdir=generated `pkg-config --cflags gtk-sharp-2.0` --generate libappindicator-api.xml - -gmcs -pkg:gtk-sharp-2.0 -target:library -out:AppIndicator.dll generated/*.cs -- cgit v1.2.3 From 88a109e2f9513a4560419f0892971967636224b1 Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Fri, 11 Dec 2009 10:31:49 -0600 Subject: Move to bindings/mono --- Makefile.am | 11 ++++---- bindings/mono/Makefile.am | 39 ++++++++++++++++++++++++++ bindings/mono/app-indicator.sources.xml | 12 ++++++++ bindings/mono/appindicator-sharp.dll.config.in | 7 +++++ bindings/mono/appindicator-sharp.pc.in | 12 ++++++++ bindings/mono/libappindicator-api.metadata | 15 ++++++++++ configure.ac | 7 +++-- sources/Makefile.am | 39 -------------------------- sources/app-indicator.sources.xml | 12 -------- sources/appindicator-sharp.dll.config.in | 7 ----- sources/appindicator-sharp.pc.in | 12 -------- sources/libappindicator-api.metadata | 15 ---------- 12 files changed, 95 insertions(+), 93 deletions(-) create mode 100644 bindings/mono/Makefile.am create mode 100644 bindings/mono/app-indicator.sources.xml create mode 100644 bindings/mono/appindicator-sharp.dll.config.in create mode 100644 bindings/mono/appindicator-sharp.pc.in create mode 100644 bindings/mono/libappindicator-api.metadata delete mode 100644 sources/Makefile.am delete mode 100644 sources/app-indicator.sources.xml delete mode 100644 sources/appindicator-sharp.dll.config.in delete mode 100644 sources/appindicator-sharp.pc.in delete mode 100644 sources/libappindicator-api.metadata diff --git a/Makefile.am b/Makefile.am index 14ff7f7..aee7109 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,8 +1,9 @@ -SUBDIRS = data \ - src \ - sources \ - example \ - tests +SUBDIRS = \ + data \ + src \ + bindings \ + example \ + tests DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am new file mode 100644 index 0000000..23e8214 --- /dev/null +++ b/bindings/mono/Makefile.am @@ -0,0 +1,39 @@ +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = appindicator-sharp.pc + +API = libappindicator-api.xml +RAW_API = libappindicator-api.raw +METADATA = libappindicator-api.metadata +ASSEMBLY_NAME = appindicator-sharp +ASSEMBLY = appindicator-sharp.dll +TARGET = $(ASSEMBLY) $(ASSEMBLY).config +assemblydir = $(libdir)/appindicator-sharp +assembly_DATA = $(TARGET) +CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) +DISTCLEANFILES = $(ASSEMBLY).config +EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp.pc.in appindicator-sharp.dll.config.in + +references = $(GTK_SHARP_LIBS) + +$(RAW_API): app-indicator.sources.xml + $(GAPI_PARSER) app-indicator.sources.xml + +$(API): $(METADATA) $(RAW_API) + cp $(srcdir)/$(RAW_API) $(API) + chmod u+w $(API) + @if test -n '$(METADATA)'; then \ + echo "$(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA)"; \ + $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \ + fi + +api_includes = $(GTK_SHARP_FLAGS) + +generated-stamp: $(API) + rm -f generated/* && \ + $(GAPI_CODEGEN) --generate $(API) $(api_includes) \ + --outdir=generated --assembly-name=$(ASSEMBLY_NAME) \ + && touch generated-stamp + +$(ASSEMBLY): generated-stamp + @rm -f $(ASSEMBLY).mdb + $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) \ No newline at end of file diff --git a/bindings/mono/app-indicator.sources.xml b/bindings/mono/app-indicator.sources.xml new file mode 100644 index 0000000..8ee8758 --- /dev/null +++ b/bindings/mono/app-indicator.sources.xml @@ -0,0 +1,12 @@ + + + + + + app-indicator-enum-types.h.in + app-indicator-enum-types.c.in + + + + + diff --git a/bindings/mono/appindicator-sharp.dll.config.in b/bindings/mono/appindicator-sharp.dll.config.in new file mode 100644 index 0000000..c8caa80 --- /dev/null +++ b/bindings/mono/appindicator-sharp.dll.config.in @@ -0,0 +1,7 @@ + + + + + + + diff --git a/bindings/mono/appindicator-sharp.pc.in b/bindings/mono/appindicator-sharp.pc.in new file mode 100644 index 0000000..be5595a --- /dev/null +++ b/bindings/mono/appindicator-sharp.pc.in @@ -0,0 +1,12 @@ +prefix=${pcfiledir}/../.. +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +assemblies_dir=${libdir}/appindicator-sharp + +Name: appindicator +Description: application indicators for .NET +Version: @VERSION@ +Libraries: ${assemblies_dir}/appindicator-sharp.dll ${assemblies_dir}/appindicator-sharp.dll.config +Requires: gtk-sharp-2.0 +Cflags: +Libs: -r:${assemblies_dir}/appindicator-sharp.dll diff --git a/bindings/mono/libappindicator-api.metadata b/bindings/mono/libappindicator-api.metadata new file mode 100644 index 0000000..36c69e1 --- /dev/null +++ b/bindings/mono/libappindicator-api.metadata @@ -0,0 +1,15 @@ + + + ApplicationIndicator + NewAttentionIcon + NewStatus + ConnectionChanged + NewIcon + ID + Category + Status + IconName + AttentionIconName + Menu + Connected + diff --git a/configure.ac b/configure.ac index bf4aff8..8044d24 100644 --- a/configure.ac +++ b/configure.ac @@ -128,9 +128,10 @@ AC_SUBST(DBUSSERVICEDIR) AC_OUTPUT([ Makefile src/Makefile -sources/Makefile -sources/appindicator-sharp.dll.config -sources/appindicator-sharp.pc +bindings/Makefile +bindings/mono/Makefile +bindings/mono/appindicator-sharp.dll.config +bindings/mono/appindicator-sharp.pc data/Makefile tests/Makefile example/Makefile diff --git a/sources/Makefile.am b/sources/Makefile.am deleted file mode 100644 index 23e8214..0000000 --- a/sources/Makefile.am +++ /dev/null @@ -1,39 +0,0 @@ -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = appindicator-sharp.pc - -API = libappindicator-api.xml -RAW_API = libappindicator-api.raw -METADATA = libappindicator-api.metadata -ASSEMBLY_NAME = appindicator-sharp -ASSEMBLY = appindicator-sharp.dll -TARGET = $(ASSEMBLY) $(ASSEMBLY).config -assemblydir = $(libdir)/appindicator-sharp -assembly_DATA = $(TARGET) -CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) -DISTCLEANFILES = $(ASSEMBLY).config -EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp.pc.in appindicator-sharp.dll.config.in - -references = $(GTK_SHARP_LIBS) - -$(RAW_API): app-indicator.sources.xml - $(GAPI_PARSER) app-indicator.sources.xml - -$(API): $(METADATA) $(RAW_API) - cp $(srcdir)/$(RAW_API) $(API) - chmod u+w $(API) - @if test -n '$(METADATA)'; then \ - echo "$(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA)"; \ - $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \ - fi - -api_includes = $(GTK_SHARP_FLAGS) - -generated-stamp: $(API) - rm -f generated/* && \ - $(GAPI_CODEGEN) --generate $(API) $(api_includes) \ - --outdir=generated --assembly-name=$(ASSEMBLY_NAME) \ - && touch generated-stamp - -$(ASSEMBLY): generated-stamp - @rm -f $(ASSEMBLY).mdb - $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) \ No newline at end of file diff --git a/sources/app-indicator.sources.xml b/sources/app-indicator.sources.xml deleted file mode 100644 index d2568c5..0000000 --- a/sources/app-indicator.sources.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - app-indicator-enum-types.h.in - app-indicator-enum-types.c.in - - - - - diff --git a/sources/appindicator-sharp.dll.config.in b/sources/appindicator-sharp.dll.config.in deleted file mode 100644 index c8caa80..0000000 --- a/sources/appindicator-sharp.dll.config.in +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/sources/appindicator-sharp.pc.in b/sources/appindicator-sharp.pc.in deleted file mode 100644 index be5595a..0000000 --- a/sources/appindicator-sharp.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix=${pcfiledir}/../.. -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -assemblies_dir=${libdir}/appindicator-sharp - -Name: appindicator -Description: application indicators for .NET -Version: @VERSION@ -Libraries: ${assemblies_dir}/appindicator-sharp.dll ${assemblies_dir}/appindicator-sharp.dll.config -Requires: gtk-sharp-2.0 -Cflags: -Libs: -r:${assemblies_dir}/appindicator-sharp.dll diff --git a/sources/libappindicator-api.metadata b/sources/libappindicator-api.metadata deleted file mode 100644 index 36c69e1..0000000 --- a/sources/libappindicator-api.metadata +++ /dev/null @@ -1,15 +0,0 @@ - - - ApplicationIndicator - NewAttentionIcon - NewStatus - ConnectionChanged - NewIcon - ID - Category - Status - IconName - AttentionIconName - Menu - Connected - -- cgit v1.2.3 From 5fe114ea67dd850e36c7903ea5a6c28d693f3dc3 Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Fri, 11 Dec 2009 10:32:56 -0600 Subject: Add missing Makefile.am --- bindings/Makefile.am | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 bindings/Makefile.am diff --git a/bindings/Makefile.am b/bindings/Makefile.am new file mode 100644 index 0000000..bee9b1d --- /dev/null +++ b/bindings/Makefile.am @@ -0,0 +1,2 @@ +SUBDIRS = \ + mono -- cgit v1.2.3 From 7783eb689c166151cec3ab3219d02587a3b0463f Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Fri, 11 Dec 2009 11:00:29 -0600 Subject: Move appindicator-sharp.pc to appindicator-sharp-0.1.pc --- bindings/mono/Makefile.am | 6 +++--- bindings/mono/appindicator-sharp-0.1.pc.in | 12 ++++++++++++ bindings/mono/appindicator-sharp.pc.in | 12 ------------ configure.ac | 2 +- 4 files changed, 16 insertions(+), 16 deletions(-) create mode 100644 bindings/mono/appindicator-sharp-0.1.pc.in delete mode 100644 bindings/mono/appindicator-sharp.pc.in diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index 23e8214..7cabf18 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -1,5 +1,5 @@ pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = appindicator-sharp.pc +pkgconfig_DATA = appindicator-sharp-0.1.pc API = libappindicator-api.xml RAW_API = libappindicator-api.raw @@ -11,7 +11,7 @@ assemblydir = $(libdir)/appindicator-sharp assembly_DATA = $(TARGET) CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) DISTCLEANFILES = $(ASSEMBLY).config -EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp.pc.in appindicator-sharp.dll.config.in +EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp-0.1.pc.in appindicator-sharp.dll.config.in references = $(GTK_SHARP_LIBS) @@ -36,4 +36,4 @@ generated-stamp: $(API) $(ASSEMBLY): generated-stamp @rm -f $(ASSEMBLY).mdb - $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) \ No newline at end of file + $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) diff --git a/bindings/mono/appindicator-sharp-0.1.pc.in b/bindings/mono/appindicator-sharp-0.1.pc.in new file mode 100644 index 0000000..16872ae --- /dev/null +++ b/bindings/mono/appindicator-sharp-0.1.pc.in @@ -0,0 +1,12 @@ +prefix=${pcfiledir}/../.. +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +assemblies_dir=${libdir}/appindicator-sharp-0.1 + +Name: appindicator-sharp +Description: application indicators for .NET +Version: @VERSION@ +Libraries: ${assemblies_dir}/appindicator-sharp.dll ${assemblies_dir}/appindicator-sharp.dll.config +Requires: gtk-sharp-2.0 +Cflags: +Libs: -r:${assemblies_dir}/appindicator-sharp.dll diff --git a/bindings/mono/appindicator-sharp.pc.in b/bindings/mono/appindicator-sharp.pc.in deleted file mode 100644 index be5595a..0000000 --- a/bindings/mono/appindicator-sharp.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix=${pcfiledir}/../.. -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -assemblies_dir=${libdir}/appindicator-sharp - -Name: appindicator -Description: application indicators for .NET -Version: @VERSION@ -Libraries: ${assemblies_dir}/appindicator-sharp.dll ${assemblies_dir}/appindicator-sharp.dll.config -Requires: gtk-sharp-2.0 -Cflags: -Libs: -r:${assemblies_dir}/appindicator-sharp.dll diff --git a/configure.ac b/configure.ac index 456ca87..fc1381c 100644 --- a/configure.ac +++ b/configure.ac @@ -140,7 +140,7 @@ src/libappindicator/appindicator-0.1.pc bindings/Makefile bindings/mono/Makefile bindings/mono/appindicator-sharp.dll.config -bindings/mono/appindicator-sharp.pc +bindings/mono/appindicator-sharp-0.1.pc data/Makefile tests/Makefile example/Makefile -- cgit v1.2.3 From ed4810839b0bd16af47201bae84524088b9ef178 Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Fri, 11 Dec 2009 11:24:30 -0600 Subject: Fix distcheck --- bindings/mono/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index 7cabf18..a8444ea 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -11,7 +11,7 @@ assemblydir = $(libdir)/appindicator-sharp assembly_DATA = $(TARGET) CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) DISTCLEANFILES = $(ASSEMBLY).config -EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp-0.1.pc.in appindicator-sharp.dll.config.in +EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp-0.1.pc.in appindicator-sharp.dll.config.in app-indicator.sources.xml references = $(GTK_SHARP_LIBS) -- cgit v1.2.3 From f7ba47b1042091f3181a7dd7ae21e10b03780455 Mon Sep 17 00:00:00 2001 From: "Neil J. Patel" Date: Fri, 11 Dec 2009 20:08:27 -0600 Subject: Stealing a bunch of Neil's python binding code. --- python/Makefile.am | 39 +++++++++++++ python/__init__.py | 27 +++++++++ python/appindicator-arg-types.py | 27 +++++++++ python/appindicator.defs | 121 +++++++++++++++++++++++++++++++++++++++ python/appindicator.override | 65 +++++++++++++++++++++ python/appindicatormodule.c | 49 ++++++++++++++++ 6 files changed, 328 insertions(+) create mode 100644 python/Makefile.am create mode 100644 python/__init__.py create mode 100644 python/appindicator-arg-types.py create mode 100644 python/appindicator.defs create mode 100644 python/appindicator.override create mode 100644 python/appindicatormodule.c diff --git a/python/Makefile.am b/python/Makefile.am new file mode 100644 index 0000000..6d19723 --- /dev/null +++ b/python/Makefile.am @@ -0,0 +1,39 @@ +defsdir = $(datadir)/pygtk/2.0/defs +defs_DATA = appindicator.defs + +#CFLAGS = -Wall -Werror +INCLUDES = \ + -DG_LOG_DOMAIN=\"appindicator-python\" \ + -DDATADIR=\"$(datadir)\" \ + -DLIBDIR=\"$(libdir)\" \ + $(APPINDICATOR_PYTHON_CFLAGS) \ + $(PYTHON_INCLUDES) + +pkgpythondir = $(pyexecdir) +pkgpyexecdir = $(pyexecdir) + +pkgappindicatordir = $(pkgpythondir)/appindicator +pkgappindicator_PYTHON = __init__.py + +appindicatordir = $(pkgpyexecdir)/appindicator +appindicator_LTLIBRARIES = _appindicator.la + +_appindicator_la_LDFLAGS = -module -avoid-version -export-symbols-regex init_appindicator -lpyglib-2.0-python2.6 +_appindicator_la_LIBADD = $(APPINDICATOR_PYTHON_LIBS) +_appindicator_la_SOURCES = appindicatormodule.c +nodist__appindicator_la_SOURCES = appindicator.c + +CLEANFILES = appindicator.c +EXTRA_DIST = appindicator.override appindicator-arg-types.py $(defs_DATA) +appindicator.c: $(defs_DATA) appindicator.override + +%.c: %.defs + (cd $(srcdir) \ + && $(PYGTK_CODEGEN) \ + --register $(PYGTK_DEFSDIR)/gtk-types.defs \ + --register $(PYGTK_DEFSDIR)/gdk-types.defs \ + --load-types appindicator-arg-types.py \ + --override $*.override \ + --prefix py$* $*.defs) > gen-$*.c \ + && cp gen-$*.c $*.c \ + && rm -f gen-$*.c diff --git a/python/__init__.py b/python/__init__.py new file mode 100644 index 0000000..20e2140 --- /dev/null +++ b/python/__init__.py @@ -0,0 +1,27 @@ +# Python bindings for libappindicator. +# +# Copyright 2009 Canonical Ltd. +# +# Authors: +# Eitan Isaacson +# Neil Jagdish Patel +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of either or both of the following licenses: +# +# 1) the GNU Lesser General Public License version 3, as published by the +# Free Software Foundation; and/or +# 2) the GNU Lesser General Public License version 2.1, as published by +# the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranties of +# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the applicable version of the GNU Lesser General Public +# License for more details. +# +# You should have received a copy of both the GNU Lesser General Public +# License version 3 and version 2.1 along with this program. If not, see +# + +from _appindicator import * diff --git a/python/appindicator-arg-types.py b/python/appindicator-arg-types.py new file mode 100644 index 0000000..9d74aa0 --- /dev/null +++ b/python/appindicator-arg-types.py @@ -0,0 +1,27 @@ +# Python bindings for libappindicator. +# +# Copyright 2009 Canonical Ltd. +# +# Authors: +# Eitan Isaacson +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of either or both of the following licenses: +# +# 1) the GNU Lesser General Public License version 3, as published by the +# Free Software Foundation; and/or +# 2) the GNU Lesser General Public License version 2.1, as published by +# the Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranties of +# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the applicable version of the GNU Lesser General Public +# License for more details. +# +# You should have received a copy of both the GNU Lesser General Public +# License version 3 and version 2.1 along with this program. If not, see +# + +import argtypes + diff --git a/python/appindicator.defs b/python/appindicator.defs new file mode 100644 index 0000000..0349b64 --- /dev/null +++ b/python/appindicator.defs @@ -0,0 +1,121 @@ +;; -*- scheme -*- +; object definitions ... +(define-object Indicator + (in-module "App") + (parent "GObject") + (c-name "AppIndicator") + (gtype-id "APP_TYPE_INDICATOR") +) + +;; Enumerations and flags ... + +(define-enum IndicatorCategory + (in-module "App") + (c-name "AppIndicatorCategory") + (gtype-id "APP_INDICATOR_TYPE_INDICATOR_CATEGORY") + (values + '("application-status" "APP_INDICATOR_CATEGORY_APPLICATION_STATUS") + '("communications" "APP_INDICATOR_CATEGORY_COMMUNICATIONS") + '("system-services" "APP_INDICATOR_CATEGORY_SYSTEM_SERVICES") + '("hardware" "APP_INDICATOR_CATEGORY_HARDWARE") + '("other" "APP_INDICATOR_CATEGORY_OTHER") + ) +) + +(define-enum IndicatorStatus + (in-module "App") + (c-name "AppIndicatorStatus") + (gtype-id "APP_INDICATOR_TYPE_INDICATOR_STATUS") + (values + '("passive" "APP_INDICATOR_STATUS_PASSIVE") + '("active" "APP_INDICATOR_STATUS_ACTIVE") + '("attention" "APP_INDICATOR_STATUS_ATTENTION") + ) +) + + +;; From app-indicator.h + +(define-function app_indicator_get_type + (c-name "app_indicator_get_type") + (return-type "GType") +) + +(define-function app_indicator_new + (c-name "app_indicator_new") + (is-constructor-of "AppIndicator") + (return-type "AppIndicator*") + (parameters + '("const-gchar*" "id") + '("const-gchar*" "icon_name") + '("AppIndicatorCategory" "category") + ) +) + +(define-method set_status + (of-object "AppIndicator") + (c-name "app_indicator_set_status") + (return-type "none") + (parameters + '("AppIndicatorStatus" "status") + ) +) + +(define-method set_attention_icon + (of-object "AppIndicator") + (c-name "app_indicator_set_attention_icon") + (return-type "none") + (parameters + '("const-gchar*" "icon_name") + ) +) + +(define-method set_menu + (of-object "AppIndicator") + (c-name "app_indicator_set_menu") + (return-type "none") + (parameters + '("GtkMenu*" "menu") + ) +) + +(define-method set_icon + (of-object "AppIndicator") + (c-name "app_indicator_set_icon") + (return-type "none") + (parameters + '("const-gchar*" "icon_name") + ) +) + +(define-method get_id + (of-object "AppIndicator") + (c-name "app_indicator_get_id") + (return-type "const-gchar*") +) + +(define-method get_category + (of-object "AppIndicator") + (c-name "app_indicator_get_category") + (return-type "AppIndicatorCategory") +) + +(define-method get_status + (of-object "AppIndicator") + (c-name "app_indicator_get_status") + (return-type "AppIndicatorStatus") +) + +(define-method get_icon + (of-object "AppIndicator") + (c-name "app_indicator_get_icon") + (return-type "const-gchar*") +) + +(define-method get_attention_icon + (of-object "AppIndicator") + (c-name "app_indicator_get_attention_icon") + (return-type "const-gchar*") +) + + diff --git a/python/appindicator.override b/python/appindicator.override new file mode 100644 index 0000000..fc99ddf --- /dev/null +++ b/python/appindicator.override @@ -0,0 +1,65 @@ +/* +Python bindings for libappindicator. + +Copyright 2009 Canonical Ltd. + +Authors: + Eitan Isaacson (original) + Neil Jagdish Patel + +This program is free software: you can redistribute it and/or modify it +under the terms of either or both of the following licenses: + +1) the GNU Lesser General Public License version 3, as published by the +Free Software Foundation; and/or +2) the GNU Lesser General Public License version 2.1, as published by +the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR +PURPOSE. See the applicable version of the GNU Lesser General Public +License for more details. + +You should have received a copy of both the GNU Lesser General Public +License version 3 and version 2.1 along with this program. If not, see + +*/ +%% +headers +#include +#include +#include +#include +#include "pygobject.h" +#include "pyglib.h" +#include + +typedef PyObject* (*to_pyobject_func) (gpointer data); + +#define APP_TYPE_INDICATOR APP_INDICATOR_TYPE + +void +_appindicator_add_constants(PyObject *module, const gchar *strip_prefix) +{ +#ifdef VERSION + PyModule_AddStringConstant(module, "__version__", VERSION); +#endif + pyg_enum_add(module, + "IndicatorCategory", + strip_prefix, + APP_INDICATOR_TYPE_INDICATOR_CATEGORY); + + pyg_enum_add(module, + "IndicatorStatus", + strip_prefix, + APP_INDICATOR_TYPE_INDICATOR_STATUS); + + if (PyErr_Occurred()) + PyErr_Print(); +} +%% +modulename appindicator +%% +import gobject.GObject as PyGObject_Type +import gtk.Menu as PyGtkMenu_Type diff --git a/python/appindicatormodule.c b/python/appindicatormodule.c new file mode 100644 index 0000000..b66639c --- /dev/null +++ b/python/appindicatormodule.c @@ -0,0 +1,49 @@ +/* +Python bindings for libappindicator. + +Copyright 2009 Canonical Ltd. + +Authors: + Eitan Isaacson + Neil Jagdish Patel + +This program is free software: you can redistribute it and/or modify it +under the terms of either or both of the following licenses: + +1) the GNU Lesser General Public License version 3, as published by the +Free Software Foundation; and/or +2) the GNU Lesser General Public License version 2.1, as published by +the Free Software Foundation. + +This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranties of +MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR +PURPOSE. See the applicable version of the GNU Lesser General Public +License for more details. + +You should have received a copy of both the GNU Lesser General Public +License version 3 and version 2.1 along with this program. If not, see + +*/ +#include + +void pyappindicator_register_classes (PyObject *d); +extern PyMethodDef pyappindicator_functions[]; + +DL_EXPORT(void) +init_appindicator(void) +{ + PyObject *m, *d; + + init_pygobject (); + + m = Py_InitModule ("_appindicator", pyappindicator_functions); + d = PyModule_GetDict (m); + + pyappindicator_register_classes (d); + + _appindicator_add_constants (m, "APP_INDICATOR_"); + if (PyErr_Occurred ()) { + Py_FatalError ("can't initialise module appindicator"); + } +} -- cgit v1.2.3 From a602f4287ef14e95cbaea78c8c676c247a6226fe Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 11 Dec 2009 20:23:37 -0600 Subject: Adding the Python build system into the indicator-application one. --- Makefile.am | 9 ++- acinclude.m4 | 247 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.ac | 30 ++++++++ 3 files changed, 282 insertions(+), 4 deletions(-) create mode 100644 acinclude.m4 diff --git a/Makefile.am b/Makefile.am index d05078e..a142f73 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,8 +1,9 @@ SUBDIRS = data \ - src \ - example \ - tests \ - docs + src \ + python \ + example \ + tests \ + docs EXTRA_DIST = \ gtk-doc.make \ diff --git a/acinclude.m4 b/acinclude.m4 new file mode 100644 index 0000000..3e98bd3 --- /dev/null +++ b/acinclude.m4 @@ -0,0 +1,247 @@ +## ------------------------ +## Python file handling +## From Andrew Dalke +## Updated by James Henstridge +## ------------------------ + +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 +# Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) + +# Adds support for distributing Python modules and packages. To +# install modules, copy them to $(pythondir), using the python_PYTHON +# automake variable. To install a package with the same name as the +# automake package, install to $(pkgpythondir), or use the +# pkgpython_PYTHON automake variable. + +# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as +# locations to install python extension modules (shared libraries). +# Another macro is required to find the appropriate flags to compile +# extension modules. + +# If your package is configured with a different prefix to python, +# users will have to add the install directory to the PYTHONPATH +# environment variable, or create a .pth file (see the python +# documentation for details). + +# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will +# cause an error if the version of python installed on the system +# doesn't meet the requirement. MINIMUM-VERSION should consist of +# numbers and dots only. + +AC_DEFUN([AM_PATH_PYTHON], + [ + dnl Find a Python interpreter. Python versions prior to 1.5 are not + dnl supported because the default installation locations changed from + dnl $prefix/lib/site-python in 1.4 to $prefix/lib/python1.5/site-packages + dnl in 1.5. + m4_define([_AM_PYTHON_INTERPRETER_LIST], + [python python2 python2.4 python2.3 python2.2 dnl +python2.1 python2.0 python1.6 python1.5]) + + m4_if([$1],[],[ + dnl No version check is needed. + # Find any Python interpreter. + if test -z "$PYTHON"; then + PYTHON=: + AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST) + fi + am_display_PYTHON=python + ], [ + dnl A version check is needed. + if test -n "$PYTHON"; then + # If the user set $PYTHON, use it and don't search something else. + AC_MSG_CHECKING([whether $PYTHON version >= $1]) + AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], + [AC_MSG_RESULT(yes)], + [AC_MSG_ERROR(too old)]) + am_display_PYTHON=$PYTHON + else + # Otherwise, try each interpreter until we find one that satisfies + # VERSION. + AC_CACHE_CHECK([for a Python interpreter with version >= $1], + [am_cv_pathless_PYTHON],[ + for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do + test "$am_cv_pathless_PYTHON" = none && break + AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) + done]) + # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. + if test "$am_cv_pathless_PYTHON" = none; then + PYTHON=: + else + AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) + fi + am_display_PYTHON=$am_cv_pathless_PYTHON + fi + ]) + + if test "$PYTHON" = :; then + dnl Run any user-specified action, or abort. + m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) + else + + dnl Query Python for its version number. Getting [:3] seems to be + dnl the best way to do this; it's what "site.py" does in the standard + dnl library. + + AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], + [am_cv_python_version=`$PYTHON -c "import sys; print sys.version[[:3]]"`]) + AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) + + dnl Use the values of $prefix and $exec_prefix for the corresponding + dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made + dnl distinct variables so they can be overridden if need be. However, + dnl general consensus is that you shouldn't need this ability. + + AC_SUBST([PYTHON_PREFIX], ['${prefix}']) + AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) + + dnl At times (like when building shared libraries) you may want + dnl to know which OS platform Python thinks this is. + + AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], + [am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`]) + AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) + + + dnl Set up 4 directories: + + dnl pythondir -- where to install python scripts. This is the + dnl site-packages directory, not the python standard library + dnl directory like in previous automake betas. This behavior + dnl is more consistent with lispdir.m4 for example. + dnl Query distutils for this directory. distutils does not exist in + dnl Python 1.5, so we fall back to the hardcoded directory if it + dnl doesn't work. + AC_CACHE_CHECK([for $am_display_PYTHON script directory], + [am_cv_python_pythondir], + [am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null || + echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`]) + AC_SUBST([pythondir], [$am_cv_python_pythondir]) + + dnl pkgpythondir -- $PACKAGE directory under pythondir. Was + dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is + dnl more consistent with the rest of automake. + + AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) + + dnl pyexecdir -- directory for installing python extension modules + dnl (shared libraries) + dnl Query distutils for this directory. distutils does not exist in + dnl Python 1.5, so we fall back to the hardcoded directory if it + dnl doesn't work. + AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], + [am_cv_python_pyexecdir], + [am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null || + echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`]) + AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) + + dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) + + AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) + + dnl Run any user-specified action. + $2 + fi + +]) + + +# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) +# --------------------------------------------------------------------------- +# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. +# Run ACTION-IF-FALSE otherwise. +# This test uses sys.hexversion instead of the string equivalent (first +# word of sys.version), in order to cope with versions such as 2.2c1. +# hexversion has been introduced in Python 1.5.2; it's probably not +# worth to support older versions (1.5.1 was released on October 31, 1998). +AC_DEFUN([AM_PYTHON_CHECK_VERSION], + [prog="import sys, string +# split strings by '.' and convert to numeric. Append some zeros +# because we need at least 4 digits for the hex conversion. +minver = map(int, string.split('$2', '.')) + [[0, 0, 0]] +minverhex = 0 +for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[[i]] +sys.exit(sys.hexversion < minverhex)" + AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) +python.m4 + + +## this one is commonly used with AM_PATH_PYTHONDIR ... +dnl AM_CHECK_PYMOD(MODNAME [,SYMBOL [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]]) +dnl Check if a module containing a given symbol is visible to python. +AC_DEFUN([AM_CHECK_PYMOD], +[AC_REQUIRE([AM_PATH_PYTHON]) +py_mod_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'` +AC_MSG_CHECKING(for ifelse([$2],[],,[$2 in ])python module $1) +AC_CACHE_VAL(py_cv_mod_$py_mod_var, [ +ifelse([$2],[], [prog=" +import sys +try: + import $1 +except ImportError: + sys.exit(1) +except: + sys.exit(0) +sys.exit(0)"], [prog=" +import $1 +$1.$2"]) +if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC + then + eval "py_cv_mod_$py_mod_var=yes" + else + eval "py_cv_mod_$py_mod_var=no" + fi +]) +py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"` +if test "x$py_val" != xno; then + AC_MSG_RESULT(yes) + ifelse([$3], [],, [$3 +])dnl +else + AC_MSG_RESULT(no) + ifelse([$4], [],, [$4 +])dnl +fi +]) + +dnl a macro to check for ability to create python extensions +dnl AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE]) +dnl function also defines PYTHON_INCLUDES +AC_DEFUN([AM_CHECK_PYTHON_HEADERS], +[AC_REQUIRE([AM_PATH_PYTHON]) +AC_MSG_CHECKING(for headers required to compile python extensions) +dnl deduce PYTHON_INCLUDES +py_prefix=`$PYTHON -c "import sys; print sys.prefix"` +py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"` +PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}" +if test "$py_prefix" != "$py_exec_prefix"; then + PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}" +fi +AC_SUBST(PYTHON_INCLUDES) +dnl check if the headers exist: +save_CPPFLAGS="$CPPFLAGS" +CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES" +AC_TRY_CPP([#include ],dnl +[AC_MSG_RESULT(found) +$1],dnl +[AC_MSG_RESULT(not found) +$2]) +CPPFLAGS="$save_CPPFLAGS" +]) diff --git a/configure.ac b/configure.ac index 33d296c..4fa8675 100644 --- a/configure.ac +++ b/configure.ac @@ -79,6 +79,35 @@ else fi AC_SUBST(DBUSSERVICEDIR) +########################### +# Python +########################### + +PYGTK_REQUIRED=2.14.0 +APPAPPINDICATOR_REQUIRED=0.0.2 +PYGOBJECT_REQUIRED=0.22 + +AM_PATH_PYTHON(2.3.5) +AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)]) + +PKG_CHECK_MODULES(APPINDICATOR_PYTHON, + [ + pygtk-2.0 >= $PYGTK_REQUIRED + pygobject-2.0 >= $PYGOBJECT_REQUIRED + ]) +AC_SUBST(APPINDICATOR_PYTHON_CFLAGS) +AC_SUBST(APPINDICATOR_PYTHON_LIBS) + +AC_MSG_CHECKING(for pygtk defs) +PYGTK_DEFSDIR=`$PKG_CONFIG --variable=defsdir pygtk-2.0` +AC_SUBST(PYGTK_DEFSDIR) +AC_MSG_RESULT($PYGTK_DEFSDIR) + +AC_MSG_CHECKING(for pygtk codegen) +PYGTK_CODEGEN="$PYTHON `$PKG_CONFIG --variable=codegendir pygtk-2.0`/codegen.py" +AC_SUBST(PYGTK_CODEGEN) +AC_MSG_RESULT($PYGTK_CODEGEN) + ########################### # Files ########################### @@ -87,6 +116,7 @@ AC_OUTPUT([ Makefile src/Makefile src/libappindicator/appindicator-0.1.pc +python/Makefile data/Makefile tests/Makefile example/Makefile -- cgit v1.2.3 From a3a42b9358ebb5c005ecd5b375340ff8daba1f3d Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 11 Dec 2009 20:29:28 -0600 Subject: Fixing the build system to link everything all happy like. --- configure.ac | 6 +++--- python/Makefile.am | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/configure.ac b/configure.ac index 4fa8675..ad85399 100644 --- a/configure.ac +++ b/configure.ac @@ -84,7 +84,6 @@ AC_SUBST(DBUSSERVICEDIR) ########################### PYGTK_REQUIRED=2.14.0 -APPAPPINDICATOR_REQUIRED=0.0.2 PYGOBJECT_REQUIRED=0.22 AM_PATH_PYTHON(2.3.5) @@ -92,8 +91,9 @@ AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)]) PKG_CHECK_MODULES(APPINDICATOR_PYTHON, [ - pygtk-2.0 >= $PYGTK_REQUIRED - pygobject-2.0 >= $PYGOBJECT_REQUIRED + pygtk-2.0 >= $PYGTK_REQUIRED + gtk+-2.0 >= $GTK_REQUIRED_VERSION + pygobject-2.0 >= $PYGOBJECT_REQUIRED ]) AC_SUBST(APPINDICATOR_PYTHON_CFLAGS) AC_SUBST(APPINDICATOR_PYTHON_LIBS) diff --git a/python/Makefile.am b/python/Makefile.am index 6d19723..0b606db 100644 --- a/python/Makefile.am +++ b/python/Makefile.am @@ -3,6 +3,7 @@ defs_DATA = appindicator.defs #CFLAGS = -Wall -Werror INCLUDES = \ + -I$(top_srcdir)/src \ -DG_LOG_DOMAIN=\"appindicator-python\" \ -DDATADIR=\"$(datadir)\" \ -DLIBDIR=\"$(libdir)\" \ @@ -19,7 +20,7 @@ appindicatordir = $(pkgpyexecdir)/appindicator appindicator_LTLIBRARIES = _appindicator.la _appindicator_la_LDFLAGS = -module -avoid-version -export-symbols-regex init_appindicator -lpyglib-2.0-python2.6 -_appindicator_la_LIBADD = $(APPINDICATOR_PYTHON_LIBS) +_appindicator_la_LIBADD = $(APPINDICATOR_PYTHON_LIBS) -L$(top_builddir)/src/.libs -lappindicator _appindicator_la_SOURCES = appindicatormodule.c nodist__appindicator_la_SOURCES = appindicator.c -- cgit v1.2.3 From 59526b689303cde25721d0a1fdcafdb371fdddba Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Sat, 12 Dec 2009 12:20:52 -0600 Subject: Initial stab at setting up test/example fu --- bindings/mono/Makefile.am | 14 ++++- bindings/mono/TestIndicator.cs | 82 +++++++++++++++++++++++++++++ bindings/mono/examples/IndicatorExample.cs | 36 +++++++++++++ bindings/mono/examples/Makefile.am | 12 +++++ bindings/mono/examples/indicator-example.in | 2 + configure.ac | 4 ++ 6 files changed, 149 insertions(+), 1 deletion(-) create mode 100644 bindings/mono/TestIndicator.cs create mode 100644 bindings/mono/examples/IndicatorExample.cs create mode 100644 bindings/mono/examples/Makefile.am create mode 100755 bindings/mono/examples/indicator-example.in diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index a8444ea..ef03f7e 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -1,6 +1,10 @@ +SUBDIRS = . examples + pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = appindicator-sharp-0.1.pc +TEST = AppIndicator.Test.dll + API = libappindicator-api.xml RAW_API = libappindicator-api.raw METADATA = libappindicator-api.metadata @@ -9,11 +13,14 @@ ASSEMBLY = appindicator-sharp.dll TARGET = $(ASSEMBLY) $(ASSEMBLY).config assemblydir = $(libdir)/appindicator-sharp assembly_DATA = $(TARGET) -CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) +CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) $(TEST) DISTCLEANFILES = $(ASSEMBLY).config EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp-0.1.pc.in appindicator-sharp.dll.config.in app-indicator.sources.xml +TEST_SOURCES = TestIndicator.cs + references = $(GTK_SHARP_LIBS) +test_references = $(GTK_SHARP_LIBS) $(NUNIT_LIBS) -r:$(ASSEMBLY) $(RAW_API): app-indicator.sources.xml $(GAPI_PARSER) app-indicator.sources.xml @@ -37,3 +44,8 @@ generated-stamp: $(API) $(ASSEMBLY): generated-stamp @rm -f $(ASSEMBLY).mdb $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) + +$(TEST): $(ASSEMBLY) + $(CSC) -out:$(TEST) -target:library $(test_references) $(TEST_SOURCES) + +all: $(TEST) diff --git a/bindings/mono/TestIndicator.cs b/bindings/mono/TestIndicator.cs new file mode 100644 index 0000000..3127342 --- /dev/null +++ b/bindings/mono/TestIndicator.cs @@ -0,0 +1,82 @@ +/* + * Copyright 2009 Canonical Ltd. + * + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 3, as published + * by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranties of + * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program. If not, see . + * + * Authors: + * Cody Russell + */ + +using System; +using GLib; +using Gtk; +using AppIndicator; + +using NUnit.Framework; + +namespace Ayatana.AppIndicator.Test +{ + [TestFixture] + public class IndicatorTest + { + ApplicationIndicator indicator; + + private void Update () + { + while (MainContext.Pending ()) + MainContext.Iteration(true); + } + + [SetUp] + public void Init () + { + Application.Init (); + + Console.WriteLine ("Init()"); + + indicator = new ApplicationIndicator ("my-id", "my-name", Category.ApplicationStatus); + + Console.WriteLine ("Created indicator"); + + Update(); + } + + [Test] + public void TestProperties () + { + Console.WriteLine ("TestProperties()"); + + Assert.AreNotSame (indicator, null); + + Assert.AreEqual (indicator.IconName, "my-name"); + Assert.AreEqual (indicator.ID, "my-id"); + Assert.AreEqual (indicator.Status, Category.ApplicationStatus); + + Console.WriteLine ("End.."); + } + + [Test] + public void TestSetProperties () + { + Console.WriteLine ("TestSetProperties"); + + indicator.Status = Status.Attention; + indicator.AttentionIconName = "my-attention-name"; + + Assert.AreEqual (indicator.Status, Status.Attention); + Assert.AreEqual (indicator.AttentionIconName, "my-attention-name"); + + Console.WriteLine ("End.."); + } + } +} \ No newline at end of file diff --git a/bindings/mono/examples/IndicatorExample.cs b/bindings/mono/examples/IndicatorExample.cs new file mode 100644 index 0000000..0cb72a1 --- /dev/null +++ b/bindings/mono/examples/IndicatorExample.cs @@ -0,0 +1,36 @@ +using Gtk; +using AppIndicator; + +public class IndicatorExample +{ + public static void Main () + { + Application.Init (); + + Window win = new Window ("Test"); + win.Resize (200, 200); + + Label label = new Label (); + label.Text = "Hello, world!"; + + win.Add (label); + + ApplicationIndicator indicator = new ApplicationIndicator ("my-id", + "my-name", + Category.ApplicationStatus); + + indicator.Status = Status.Attention; + + /* + Menu menu = new Menu (); + menu.Append (new MenuItem ("Foo")); + menu.Append (new MenuItem ("Bar")); + + indicator.Menu = menu; + */ + + win.ShowAll (); + + Application.Run (); + } +} \ No newline at end of file diff --git a/bindings/mono/examples/Makefile.am b/bindings/mono/examples/Makefile.am new file mode 100644 index 0000000..cb7f268 --- /dev/null +++ b/bindings/mono/examples/Makefile.am @@ -0,0 +1,12 @@ +ASSEMBLY = IndicatorExample.exe +CSFILES = IndicatorExample.cs +CLEANFILES = $(ASSEMBLY) + +EXTRA_DIST = $(CSFILES) + +references = $(GTK_SHARP_LIBS) -r:$(top_builddir)/bindings/mono/appindicator-sharp.dll + +$(ASSEMBLY): + $(CSC) $(CSFLAGS) -out:$(ASSEMBLY) -target:exe $(references) $(CSFILES) + +all: $(ASSEMBLY) \ No newline at end of file diff --git a/bindings/mono/examples/indicator-example.in b/bindings/mono/examples/indicator-example.in new file mode 100755 index 0000000..3eca155 --- /dev/null +++ b/bindings/mono/examples/indicator-example.in @@ -0,0 +1,2 @@ +#!/bin/sh +MONO_PATH=@top_builddir@/bindings/mono @top_builddir@/bindings/mono/examples/IndicatorExample.exe diff --git a/configure.ac b/configure.ac index fc1381c..ca1793a 100644 --- a/configure.ac +++ b/configure.ac @@ -96,6 +96,8 @@ AC_SUBST(GAPI_CODEGEN) AC_PATH_PROG(GAPI_FIXUP, gapi2-fixup, no) AC_SUBST(GAPI_FIXUP) +PKG_CHECK_MODULES(NUNIT, nunit-2.4 >= 2.4.7) +AC_SUBST(NUNIT_LIBS) ########################### # Check to see if we're local @@ -141,6 +143,8 @@ bindings/Makefile bindings/mono/Makefile bindings/mono/appindicator-sharp.dll.config bindings/mono/appindicator-sharp-0.1.pc +bindings/mono/examples/Makefile +bindings/mono/examples/indicator-example data/Makefile tests/Makefile example/Makefile -- cgit v1.2.3 From 40f3778a064695662c814fb02ba1722501c72e9a Mon Sep 17 00:00:00 2001 From: Cody Russell Date: Sat, 12 Dec 2009 12:27:20 -0600 Subject: Try to add SetMenu() --- bindings/mono/libappindicator-api.metadata | 1 + 1 file changed, 1 insertion(+) diff --git a/bindings/mono/libappindicator-api.metadata b/bindings/mono/libappindicator-api.metadata index 36c69e1..52a44f2 100644 --- a/bindings/mono/libappindicator-api.metadata +++ b/bindings/mono/libappindicator-api.metadata @@ -12,4 +12,5 @@ AttentionIconName Menu Connected + SetMenu -- cgit v1.2.3 From 3d0245f5d5bd66855d73288a0a9e1d863cb296c9 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 14 Dec 2009 10:20:17 -0500 Subject: Make build work right --- bindings/mono/Makefile.am | 2 +- bindings/mono/libappindicator-api.metadata | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index ef03f7e..67da2c1 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -33,7 +33,7 @@ $(API): $(METADATA) $(RAW_API) $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \ fi -api_includes = $(GTK_SHARP_FLAGS) +api_includes = `pkg-config --cflags gtk-sharp-2.0` generated-stamp: $(API) rm -f generated/* && \ diff --git a/bindings/mono/libappindicator-api.metadata b/bindings/mono/libappindicator-api.metadata index 52a44f2..ad0ebc0 100644 --- a/bindings/mono/libappindicator-api.metadata +++ b/bindings/mono/libappindicator-api.metadata @@ -11,6 +11,7 @@ IconName AttentionIconName Menu + GtkMenu* Connected SetMenu -- cgit v1.2.3 From 5e6e5ba6c2ad9b2919aa87da80cbbe8f4655d1c1 Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Mon, 14 Dec 2009 10:32:30 -0500 Subject: Nicer fix --- bindings/mono/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index 67da2c1..cfae87a 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -33,7 +33,7 @@ $(API): $(METADATA) $(RAW_API) $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \ fi -api_includes = `pkg-config --cflags gtk-sharp-2.0` +api_includes = $(GTK_SHARP_CFLAGS) generated-stamp: $(API) rm -f generated/* && \ -- cgit v1.2.3 From 04e218db5fd996ebb04503949ff73584b73c80a9 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 14 Dec 2009 09:59:12 -0600 Subject: Adding the test files to dist and making sure we find them in the right directory. --- bindings/mono/Makefile.am | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index cfae87a..b03cde8 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -15,7 +15,13 @@ assemblydir = $(libdir)/appindicator-sharp assembly_DATA = $(TARGET) CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) $(TEST) DISTCLEANFILES = $(ASSEMBLY).config -EXTRA_DIST = $(RAW_API) $(METADATA) appindicator-sharp-0.1.pc.in appindicator-sharp.dll.config.in app-indicator.sources.xml +EXTRA_DIST = \ + $(RAW_API) \ + $(METADATA) \ + appindicator-sharp-0.1.pc.in \ + appindicator-sharp.dll.config.in \ + app-indicator.sources.xml \ + $(TEST_SOURCES) TEST_SOURCES = TestIndicator.cs @@ -43,9 +49,9 @@ generated-stamp: $(API) $(ASSEMBLY): generated-stamp @rm -f $(ASSEMBLY).mdb - $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(GENERATED_SOURCES) + $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(builddir)/$(GENERATED_SOURCES) -$(TEST): $(ASSEMBLY) - $(CSC) -out:$(TEST) -target:library $(test_references) $(TEST_SOURCES) +$(TEST): $(ASSEMBLY) $(TEST_SOURCES) + $(CSC) -out:$(TEST) -target:library $(test_references) $(srcdir)/$(TEST_SOURCES) all: $(TEST) -- cgit v1.2.3 From bb6fa61d8ddc76486533f01ffa645e7894705f6c Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Mon, 14 Dec 2009 09:59:29 -0600 Subject: Looking for the assembly files in the right location. --- bindings/mono/examples/Makefile.am | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/mono/examples/Makefile.am b/bindings/mono/examples/Makefile.am index cb7f268..b929492 100644 --- a/bindings/mono/examples/Makefile.am +++ b/bindings/mono/examples/Makefile.am @@ -6,7 +6,7 @@ EXTRA_DIST = $(CSFILES) references = $(GTK_SHARP_LIBS) -r:$(top_builddir)/bindings/mono/appindicator-sharp.dll -$(ASSEMBLY): - $(CSC) $(CSFLAGS) -out:$(ASSEMBLY) -target:exe $(references) $(CSFILES) +$(ASSEMBLY): $(CSFILES) Makefile.am + $(CSC) $(CSFLAGS) -out:$(ASSEMBLY) -target:exe $(references) $(srcdir)/$(CSFILES) -all: $(ASSEMBLY) \ No newline at end of file +all: $(ASSEMBLY) -- cgit v1.2.3 From c66e720d0d59050fecb263cc2f7daa7c2ac88f09 Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Mon, 14 Dec 2009 11:28:24 -0500 Subject: use path to find includes --- python/appindicator.override | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/appindicator.override b/python/appindicator.override index fc99ddf..a01a9a6 100644 --- a/python/appindicator.override +++ b/python/appindicator.override @@ -28,8 +28,8 @@ License version 3 and version 2.1 along with this program. If not, see %% headers #include -#include -#include +#include "../src/libappindicator/app-indicator.h" +#include "../src/libappindicator/app-indicator-enum-types.h" #include #include "pygobject.h" #include "pyglib.h" -- cgit v1.2.3 From 251da6dc9c3ce7e84e83d734bb08cc42c6db2480 Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Wed, 16 Dec 2009 14:29:18 -0500 Subject: exclude the path in subst replace in the dbus-binding-tool command --- src/Makefile.am | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index ee4b7a7..f101d12 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -107,14 +107,14 @@ DBUS_SPECS = \ %-client.h: %.xml dbus-binding-tool \ - --prefix=_$(subst -,_,$(<:.xml=))_client \ + --prefix=_$(notdir $(subst -,_,$(<:.xml=)))_client \ --mode=glib-client \ --output=$@ \ $< %-server.h: %.xml dbus-binding-tool \ - --prefix=_$(subst -,_,$(<:.xml=))_server \ + --prefix=_$(notdir $(subst -,_,$(<:.xml=)))_server \ --mode=glib-server \ --output=$@ \ $< -- cgit v1.2.3 From 799618727018cfad6ba6f8f5af3f1da8e626fe65 Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Wed, 16 Dec 2009 16:15:30 -0500 Subject: Reference the correct dll --- bindings/mono/appindicator-sharp.dll.config.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/mono/appindicator-sharp.dll.config.in b/bindings/mono/appindicator-sharp.dll.config.in index c8caa80..d0e9e1e 100644 --- a/bindings/mono/appindicator-sharp.dll.config.in +++ b/bindings/mono/appindicator-sharp.dll.config.in @@ -1,5 +1,5 @@ - + -- cgit v1.2.3 From ceef246e043f028d06d89dba76e53d12785435df Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Wed, 16 Dec 2009 16:15:52 -0500 Subject: use more macros --- bindings/mono/appindicator-sharp-0.1.pc.in | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bindings/mono/appindicator-sharp-0.1.pc.in b/bindings/mono/appindicator-sharp-0.1.pc.in index 16872ae..33ff1d7 100644 --- a/bindings/mono/appindicator-sharp-0.1.pc.in +++ b/bindings/mono/appindicator-sharp-0.1.pc.in @@ -1,6 +1,6 @@ -prefix=${pcfiledir}/../.. -exec_prefix=${prefix} -libdir=${exec_prefix}/lib +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ assemblies_dir=${libdir}/appindicator-sharp-0.1 Name: appindicator-sharp -- cgit v1.2.3 From 8a26b8c15e726e090f7cab7afd366f764f2ab73c Mon Sep 17 00:00:00 2001 From: Ken VanDine Date: Wed, 16 Dec 2009 16:16:28 -0500 Subject: Use a versioned assemblydir --- bindings/mono/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index b03cde8..87f1e5a 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -11,7 +11,7 @@ METADATA = libappindicator-api.metadata ASSEMBLY_NAME = appindicator-sharp ASSEMBLY = appindicator-sharp.dll TARGET = $(ASSEMBLY) $(ASSEMBLY).config -assemblydir = $(libdir)/appindicator-sharp +assemblydir = $(libdir)/appindicator-sharp-0.1 assembly_DATA = $(TARGET) CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(RAW_API) $(TEST) DISTCLEANFILES = $(ASSEMBLY).config -- cgit v1.2.3