X-Git-Url: http://www.project-moonshot.org/gitweb/?p=moonshot-ui.git;a=blobdiff_plain;f=Makefile.am;h=11b5f48366337eec14a4342e15e97dbab3446205;hp=a8f83ebfca6a3abfd05ab37f9f1d77e906f96ec3;hb=HEAD;hpb=040f46856c5c2314056b7d27352029b6b2910e12 diff --git a/Makefile.am b/Makefile.am index a8f83eb..11b5f48 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,80 +1,131 @@ ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} - + SUBDIRS = po +moonshotsysconfdir=${sysconfdir}/moonshot lib_LTLIBRARIES = libmoonshot/libmoonshot.la bin_PROGRAMS = \ src/moonshot \ src/moonshot-webp +pkglibexec_SCRIPTS = moonshot-dbus-launch + +dist_pkgdata_DATA = webprovisioning/default-identity.msht +dist_moonshotsysconf_DATA=flatstore-users -AM_CFLAGS = +AM_CFLAGS = -g -O0 -Wall -AM_CPPFLAGS = \ +AM_CPPFLAGS = \ -include config.h \ -DLOCALEDIR=\""$(localedir)"\" \ - -I$(top_srcdir)/libmoonshot + -DMOONSHOT_LAUNCH_SCRIPT='"$(pkglibexecdir)/moonshot-dbus-launch"' \ + -DMOONSHOT_FLATSTORE_USERS='"$(moonshotsysconfdir)/flatstore-users"' \ + -I$(top_srcdir)/libmoonshot \ + -I$(top_builddir)/libmoonshot + + +if LOG4VALA +MOONSHOT_LOG_PKG= --pkg $(LOG4VALA_VERSION) -X -l$(LOG4VALA_VERSION) --define=USE_LOG4VALA +MOONSHOT_LOG_LIBS= -l$(LOG4VALA_VERSION) +else +MOONSHOT_LOG_PKG= +MOONSHOT_LOG_LIBS= +endif -AM_VALAFLAGS = \ - config.vapi \ - --pkg gio-2.0 +AM_VALAFLAGS = -g \ + config.vapi \ + --vapidir=$(top_srcdir)/vapi \ + --pkg gio-2.0 \ + $(MOONSHOT_LOG_PKG) libmoonshot_libmoonshot_la_CPPFLAGS = \ $(libmoonshot_CFLAGS) \ - $(AM_CPPFLAGS) + $(AM_CPPFLAGS) libmoonshot_libmoonshot_la_SOURCES = libmoonshot/libmoonshot-common.c libmoonshot_libmoonshot_la_LIBADD = $(libmoonshot_LIBS) +libmoonshot_libmoonshot_la_LDFLAGS = -no-undefined -version-info 1:0:0 include_HEADERS = libmoonshot/libmoonshot.h noinst_HEADERS = libmoonshot/libmoonshot-common.h src_moonshot_SOURCES = \ + src/moonshot-identity-manager-app.vala \ + src/moonshot-identity-management-view.vala \ + src/moonshot-local-flat-file-store.vala \ + src/moonshot-keyring-store.vala \ + src/moonshot-idcard-store.vala \ src/moonshot-id.vala \ - src/moonshot-add-dialog.vala \ + src/moonshot-identity-dialog.vala \ src/moonshot-idcard-widget.vala \ src/moonshot-custom-vbox.vala \ src/moonshot-identities-manager.vala \ src/moonshot-identity-request.vala \ - src/moonshot-server.vala \ - src/moonshot-window.vala \ + src/moonshot-server-linux.vala \ + src/moonshot-settings.vala \ src/moonshot-password-dialog.vala \ - src/moonshot-utils.vala + src/moonshot-provisioning-common.vala \ + src/moonshot-trust-anchor-dialog.vala \ + src/moonshot-utils.vala \ + src/moonshot-futils.c \ + src/moonshot-crypto-utils.c \ + src/moonshot-logger.vala \ + src/moonshot-warning-dialog.vala src_moonshot_webp_SOURCES = \ + src/moonshot-crypto-utils.c \ src/moonshot-webp-parser.vala \ - src/moonshot-id.vala + src/moonshot-provisioning-common.vala \ + src/moonshot-id.vala \ + src/moonshot-logger.vala -src_moonshot_VALAFLAGS = --pkg gdk-2.0 --pkg gtk+-2.0 $(AM_VALAFLAGS) -src_moonshot_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) + +src_moonshot_VALAFLAGS = --pkg $(GTK_VERSION) --pkg $(GEE_VERSION) $(AM_VALAFLAGS) +src_moonshot_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) src_moonshot_LDADD = $(moonshot_LIBS) +src_moonshot_LDFLAGS = -g -O0 $(MOONSHOT_LOG_LIBS) -src_moonshot_webp_VALAFLAGS = --vapidir=$(top_srcdir)/libmoonshot --pkg gdk-2.0 --pkg libmoonshot $(AM_VALAFLAGS) +src_moonshot_webp_VALAFLAGS = --vapidir=$(top_srcdir)/libmoonshot --pkg $(GEE_VERSION) --pkg libmoonshot $(AM_VALAFLAGS) src_moonshot_webp_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) src_moonshot_webp_LDADD = $(moonshot_LIBS) ${top_builddir}/libmoonshot/libmoonshot.la +src_moonshot_webp_LDFLAGS = $(MOONSHOT_LOG_LIBS) if OS_WIN32 -libmoonshot_libmoonshot_la_LDFLAGS = -no-undefined src_moonshot_CFLAGS = -mwindows -src_moonshot_webp_CFLAGS = -mwindows - +src_moonshot_webp_CFLAGS = -mconsole + AM_CPPFLAGS += -DOS_WIN32 AM_VALAFLAGS += --define=OS_WIN32 noinst_DATA = libmoonshot/libmoonshot.lib +# Build the MSVC lib. The sed hack fixes execution in the case that +# the MSVC toolchain isn't in the PATH. libmoonshot/libmoonshot.lib: libmoonshot/libmoonshot.def - "${MSVC_LIB}" -def:$< -out:$@ -machine:x86 + PATH="$(shell echo "${MSVC_LIB}" | sed -e s,/VC/bin/lib,/Common7/IDE,)":$$PATH "${MSVC_LIB}" -def:$< -out:$@ -machine:x86 endif +if OS_MACOS + +AM_CPPFLAGS += -DOS_MACOS $(MAC_CFLAGS) +AM_VALAFLAGS += --define=OS_MACOS --pkg gtk-mac-integration +moonshot_LIBS += $(MAC_LIBS) +src_moonshot_LDADD += $(MAC_LIBS) +endif + if OS_LINUX +AM_CPPFLAGS += -I/usr/include/gnome-keyring-1 +AM_VALAFLAGS += --pkg moonshot-gnome-keyring --define=GNOME_KEYRING +src_moonshot_LDFLAGS += -lgnome-keyring -lcrypto +src_moonshot_webp_LDFLAGS += -lgnome-keyring -lcrypto + ## Installing mime type data mimedir = $(datadir)/mime/packages mime_DATA = webprovisioning/moonshot.xml @@ -90,7 +141,7 @@ if IPC_MSRPC AM_CPPFLAGS += -Isrc AM_VALAFLAGS += \ - --pkg msrpc-1.0 \ + --pkg moonshot-msrpc --pkg msrpc-1.0 \ --define=IPC_MSRPC BUILT_SOURCES = libmoonshot/moonshot-msrpc.h \ @@ -108,8 +159,6 @@ libmoonshot/moonshot-msrpc_c.c: libmoonshot/moonshot-msrpc.h libmoonshot_libmoonshot_la_SOURCES += \ libmoonshot/libmoonshot-msrpc.c -src_moonshot_SOURCES += \ - src/moonshot-msrpc.vapi nodist_src_moonshot_SOURCES = \ libmoonshot/moonshot-msrpc_s.c @@ -123,23 +172,45 @@ if IPC_DBUS # DBus service file dbusservicedir = $(datadir)/dbus-1/services +if OS_MACOS +dbusservice_in_files = org.janet.Moonshot.service.mac +dbusservice_DATA = $(dbusservice_in_files:.service.mac=.service) +else dbusservice_in_files = org.janet.Moonshot.service.in dbusservice_DATA = $(dbusservice_in_files:.service.in=.service) +endif # Rule to make the service file with bindir expanded $(dbusservice_DATA): $(dbusservice_in_files) Makefile @sed -e "s|\@bindir\@|$(bindir)|" $< > $@ +libmoonshot_libmoonshot_la_SOURCES += libmoonshot/libmoonshot-dbus.c + +CLEANFILES = $(dbusservice_DATA) src_moonshot_vala.stamp src_moonshot_vala.stamp-t + +if IPC_DBUS_GLIB AM_VALAFLAGS += \ --pkg dbus-glib-1 \ + --define=IPC_DBUS_GLIB \ + --define=IPC_DBUS +AM_CPPFLAGS += -DIPC_DBUS_GLIB +else +AM_VALAFLAGS += \ + --pkg gio-2.0 \ + --define=IPC_GDBUS \ --define=IPC_DBUS - -libmoonshot_libmoonshot_la_SOURCES += libmoonshot/libmoonshot-dbus.c - -CLEANFILES = $(dbusservice_DATA) +endif +endif +if GIO_VAPI_USES_ARRAYS +AM_VALAFLAGS += --define=GIO_VAPI_USES_ARRAYS endif -EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) +EXTRA_DIST = webprovisioning/moonshot.xml $(dbusservice_in_files) \ + webprovisioning/complex-test.msht webprovisioning/sample.msht \ + README.webprovisioning README.windows \ + moonshot-dbus-launch \ + moonshot-ui.spec \ + vapi/moonshot-gnome-keyring.vapi libmoonshot/libmoonshot.vapi noinst_PROGRAMS = \ examples/client \ @@ -147,8 +218,8 @@ noinst_PROGRAMS = \ tests/basic examples_service_selection_SOURCES = examples/service-selection.c -examples_service_selection_CPPFLAGS = $(libmoonshot_CFLAGS) $(AM_CPPFLAGS) -examples_service_selection_LDADD = ${top_builddir}/libmoonshot/libmoonshot.la +examples_service_selection_CPPFLAGS = $(moonshot_CFLAGS) $(AM_CPPFLAGS) +examples_service_selection_LDADD = ${top_builddir}/libmoonshot/libmoonshot.la $(moonshot_LIBS) examples_client_SOURCES = examples/client.c examples_client_CPPFLAGS = $(libmoonshot_CFLAGS) $(AM_CPPFLAGS) @@ -172,15 +243,15 @@ if OS_WIN32 ## A couple of Windows-specific targets: ## 1. Icons. You must have gnome-icon-theme and gnome-icon-theme-symbolic installed -## in c:/build prefix; and ImageMagick installed in c:/tools/ImageMagick. This +## in the install prefix; and ImageMagick installed in c:/tools/ImageMagick. This ## pulls in the icons required by moonshot and converts svg's to png's (we have ## no svg support built in to Windows Gtk+ right now). icons: mkdir -p share/icons - cp c:/build/share/icons/gnome/48x48/status/avatar-default.png share/icons - "${IMAGEMAGICK_CONVERT}" -background none c:/build/share/icons/gnome/scalable/actions/edit-clear-symbolic.svg -size 13x13 share/icons/edit-clear-symbolic.png - "${IMAGEMAGICK_CONVERT}" -background none c:/build/share/icons/gnome/scalable/actions/edit-find-symbolic.svg -size 13x13 share/icons/edit-find-symbolic.png + cp ${prefix}/share/icons/gnome/48x48/status/avatar-default.png share/icons + "${IMAGEMAGICK_CONVERT}" -background none ${prefix}/share/icons/gnome/scalable/actions/edit-clear-symbolic.svg -size 13x13 share/icons/edit-clear-symbolic.png + "${IMAGEMAGICK_CONVERT}" -background none ${prefix}/share/icons/gnome/scalable/actions/edit-find-symbolic.svg -size 13x13 share/icons/edit-find-symbolic.png ## 2. Installer. You must have the Windows Installer XML toolkit version 3.5 @@ -193,6 +264,29 @@ installer: moonshot.msi moonshot.msi: windows/app.wxs windows/config.wxi $(bin_PROGRAMS) "${WIX_CANDLE}" $< - "${WIX_LIGHT}" -b c:/build -b c:/tools/mingw -o moonshot.msi app.wixobj + "${WIX_LIGHT}" -b ${prefix} -b ${prefix}/mingw -o moonshot.msi app.wixobj + +endif + +if OS_MACOS +## Mac-specific targets + +## 1. Icons. + +icons: + mkdir -p share/icons + cp mac/icons/process-stop.png share/icons + cp mac/icons/edit-find.png share/icons + cp mac/icons/avatar-default.png share/icons + +## 2. App bundle +## gtk-app-bundler must be installed +## moonshot-ui.app will be built in moonshot/mac-client-installer/moonshot-ui/ +app-bundle: + gtk-mac-bundler ./mac/moonshot-ui.bundle + +## 3: Installer Package + +installerdir = $(HOME)/moonshot/mac-client-installer endif