[PATCH weston v2 17/17] configure: add an option to allow building only the libraries

Giulio Camuffo giuliocamuffo at gmail.com
Thu Dec 4 13:01:23 PST 2014


the --enable/disable-weston-binaries emable or disable the creation
of the 'weston', 'weston-launch' and all the binaries that are
installed in $prefix/lib/libexec. This allows, together with
--enable-clients, to only build the libraries, making possible to
build and install different libweston versions at the same time.
---
 Makefile.am  | 15 +++++++++++++++
 configure.ac |  8 ++++++++
 2 files changed, 23 insertions(+)

diff --git a/Makefile.am b/Makefile.am
index 5ca8179..7422298 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -92,6 +92,8 @@ nodist_libweston_la_SOURCES =					\
 
 BUILT_SOURCES += $(nodist_libweston_la_SOURCES)
 
+
+if BUILD_WESTON_BINARIES
 bin_PROGRAMS += weston
 
 weston_LDFLAGS = -export-dynamic
@@ -103,6 +105,7 @@ weston_LDADD = $(COMPOSITOR_LIBS) $(LIBUNWIND_LIBS) \
 weston_SOURCES =					\
 	src/weston.c					\
 	src/text-backend.c
+endif
 
 # Track this dependency explicitly instead of using BUILT_SOURCES.  We
 # add BUILT_SOURCES to CLEANFILES, but we want to keep git-version.h
@@ -158,6 +161,7 @@ libweston_launcher_la_SOURCES = 		\
 	src/weston-launch.h		\
 	src/weston-launcher.h
 
+if BUILD_WESTON_BINARIES
 bin_PROGRAMS += weston-launch
 weston_launch_SOURCES = src/weston-launch.c
 weston_launch_CPPFLAGS = -DBINDIR='"$(bindir)"' -I$(top_srcdir)/libweston
@@ -170,6 +174,7 @@ install-exec-hook:
 	chown root $(DESTDIR)$(bindir)/weston-launch
 	chmod u+s $(DESTDIR)$(bindir)/weston-launch
 endif
+endif # BUILD_WESTON_BINARIES
 
 endif # BUILD_WESTON_LAUNCH
 
@@ -382,6 +387,7 @@ if BUILD_CLIENTS
 
 bin_PROGRAMS += weston-terminal weston-info
 
+if BUILD_WESTON_BINARIES
 libexec_PROGRAMS +=				\
 	weston-desktop-shell			\
 	weston-screenshooter			\
@@ -392,6 +398,7 @@ if ENABLE_IVI_SHELL
 libexec_PROGRAMS +=				\
 	weston-ivi-shell-user-interface
 endif
+endif
 
 demo_clients =					\
 	weston-flower				\
@@ -506,6 +513,7 @@ weston_flower_SOURCES = clients/flower.c
 weston_flower_LDADD = libtoytoolkit.la
 weston_flower_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
+if BUILD_WESTON_BINARIES
 weston_screenshooter_SOURCES =				\
 	clients/screenshot.c
 nodist_weston_screenshooter_SOURCES =			\
@@ -513,6 +521,7 @@ nodist_weston_screenshooter_SOURCES =			\
 	protocol/screenshooter-client-protocol.h
 weston_screenshooter_LDADD = $(CLIENT_LIBS) libshared.la
 weston_screenshooter_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
+endif
 
 weston_terminal_SOURCES = clients/terminal.c
 weston_terminal_LDADD = libtoytoolkit.la -lutil
@@ -606,6 +615,7 @@ weston_editor_LDADD = libtoytoolkit.la $(PANGO_LIBS)
 weston_editor_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS) $(PANGO_CFLAGS)
 endif
 
+if BUILD_WESTON_BINARIES
 weston_keyboard_SOURCES = clients/keyboard.c
 nodist_weston_keyboard_SOURCES =			\
 	protocol/desktop-shell-client-protocol.h	\
@@ -621,6 +631,7 @@ nodist_weston_simple_im_SOURCES =		\
 	protocol/input-method-client-protocol.h
 weston_simple_im_LDADD = $(CLIENT_LIBS)
 weston_simple_im_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
+endif
 
 weston_info_SOURCES = clients/weston-info.c
 nodist_weston_info_SOURCES =				\
@@ -629,13 +640,16 @@ nodist_weston_info_SOURCES =				\
 weston_info_LDADD = $(WESTON_INFO_LIBS) libshared.la
 weston_info_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 
+if BUILD_WESTON_BINARIES
 weston_desktop_shell_SOURCES = clients/desktop-shell.c
 nodist_weston_desktop_shell_SOURCES =			\
 	protocol/desktop-shell-client-protocol.h	\
 	protocol/desktop-shell-protocol.c
 weston_desktop_shell_LDADD = libtoytoolkit.la
 weston_desktop_shell_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
+endif
 
+if BUILD_WESTON_BINARIES
 if ENABLE_IVI_SHELL
 weston_ivi_shell_user_interface_SOURCES = clients/ivi-shell-user-interface.c
 nodist_weston_ivi_shell_user_interface_SOURCES =			\
@@ -646,6 +660,7 @@ nodist_weston_ivi_shell_user_interface_SOURCES =			\
 weston_ivi_shell_user_interface_LDADD = libtoytoolkit.la
 weston_ivi_shell_user_interface_CFLAGS = $(AM_CFLAGS) $(CLIENT_CFLAGS)
 endif
+endif
 
 if BUILD_FULL_GL_CLIENTS
 demo_clients += weston-gears
diff --git a/configure.ac b/configure.ac
index eeab641..5424a85 100644
--- a/configure.ac
+++ b/configure.ac
@@ -352,6 +352,12 @@ PKG_CHECK_MODULES(SYSTEMD_LOGIN_209, [libsystemd-login >= 209],
 AS_IF([test "x$have_systemd_login_209" = "xyes"],
       [AC_DEFINE([HAVE_SYSTEMD_LOGIN_209], [1], [Have systemd-login >= 209])])
 
+AC_ARG_ENABLE(weston-binaries,
+              AS_HELP_STRING([--enable-weston-binaries],
+                             [build the weston binaries]),,
+              enable_weston_binaries=yes)
+AM_CONDITIONAL(BUILD_WESTON_BINARIES, test x$enable_weston_binaries == xyes)
+
 AC_ARG_ENABLE(weston-launch, [  --enable-weston-launch],, enable_weston_launch=yes)
 AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch == xyes)
 if test x$enable_weston_launch == xyes; then
@@ -518,6 +524,8 @@ AC_MSG_RESULT([
 	Native Backend			${WESTON_NATIVE_BACKEND}
 	setuid Install			${enable_setuid_install}
 
+	Buld the weston binaries	${enable_weston_binaries}
+
 	Cairo Renderer			${with_cairo}
 	EGL				${enable_egl}
 	libxkbcommon			${enable_xkbcommon}
-- 
2.1.3



More information about the wayland-devel mailing list