[gnome-control-center/wip/gbsneto/list-layout: 3/17] build: create another executable for the new layout



commit 79c6a6e8db529858cec08987a787ad072f2e9e8d
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Sat May 28 13:25:13 2016 -0300

    build: create another executable for the new layout
    
    This way, we can test both layouts in parallel and, in
    case something goes wrong, we always have to old layout
    as a fallback.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=766922

 configure.ac                |    3 ++-
 search-provider/Makefile.am |    6 ++----
 shell/Makefile.am           |   38 +++++++++++++++++++++++++++++++++-----
 shell/alt/Makefile.am       |   19 +++++++++++++++++++
 4 files changed, 56 insertions(+), 10 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 7bb613d..f68f21a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -6,7 +6,7 @@ AC_CONFIG_SRCDIR([shell])
 AC_CONFIG_HEADERS([config.h])
 AC_CONFIG_MACRO_DIR([m4])
 
-AM_INIT_AUTOMAKE([1.11.2 no-dist-gzip dist-xz tar-ustar check-news])
+AM_INIT_AUTOMAKE([1.11.2 no-dist-gzip dist-xz tar-ustar check-news subdir-objects])
 AM_MAINTAINER_MODE([enable])
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
@@ -544,6 +544,7 @@ po/Makefile.in
 libgd/Makefile
 search-provider/Makefile
 shell/appdata/Makefile
+shell/alt/Makefile
 shell/Makefile
 shell/gnome-control-center.desktop.in
 man/Makefile
diff --git a/search-provider/Makefile.am b/search-provider/Makefile.am
index 2314d66..5b7dd1f 100644
--- a/search-provider/Makefile.am
+++ b/search-provider/Makefile.am
@@ -14,7 +14,6 @@ $(dbus_shell_search_provider_built_sources) : Makefile.am $(srcdir)/org.gnome.Sh
 
 AM_CPPFLAGS =                                  \
        -DGNOMELOCALEDIR="\"$(datadir)/locale\""\
-       -DCC_PANEL_LOADER_NO_GTYPES             \
        -I$(top_srcdir)                         \
        $(SHELL_CFLAGS)                         \
        -I$(top_srcdir)/panels/common/          \
@@ -26,8 +25,6 @@ BUILT_SOURCES =       $(dbus_shell_search_provider_built_sources)
 
 gnome_control_center_search_provider_SOURCES = \
        $(BUILT_SOURCES)                        \
-       $(top_srcdir)/shell/cc-panel-loader.c   \
-       $(top_srcdir)/shell/cc-panel-loader.h   \
        control-center-search-provider.c        \
        control-center-search-provider.h        \
        cc-search-provider.c                    \
@@ -35,7 +32,8 @@ gnome_control_center_search_provider_SOURCES =        \
 
 gnome_control_center_search_provider_LDADD =   \
        $(top_builddir)/panels/common/liblanguage.la    \
-       $(top_builddir)/shell/libshell.la       \
+       $(top_builddir)/shell/libshell.la               \
+       $(top_builddir)/shell/libpanel_loader.la        \
        $(SHELL_LIBS)
 
 CLEANFILES = $(BUILT_SOURCES) $(service_DATA)
diff --git a/shell/Makefile.am b/shell/Makefile.am
index e9cac8b..5f2da2a 100644
--- a/shell/Makefile.am
+++ b/shell/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = appdata
+SUBDIRS = appdata alt
 
 AM_CPPFLAGS =                                  \
        -DGNOMELOCALEDIR="\"$(datadir)/locale\""\
@@ -7,6 +7,7 @@ AM_CPPFLAGS =                                   \
        $(CHEESE_CFLAGS)                        \
        $(WACOM_PANEL_CFLAGS)                   \
        -I$(top_srcdir)/panels/common/          \
+       -I$(top_srcdir)/shell/alt               \
        -I$(top_srcdir)/libgd
 
 all-local: check-local
@@ -19,15 +20,15 @@ libshell_la_SOURCES = \
 
 bin_PROGRAMS = gnome-control-center
 
-gnome_control_center_SOURCES =                 \
+noinst_PROGRAMS = gnome-control-center-alt
+
+common_sources =                               \
        $(BUILT_SOURCES)                        \
        main.c                                  \
        cc-application.c                        \
        cc-application.h                        \
        cc-shell-log.c                          \
        cc-shell-log.h                          \
-       cc-window.c                             \
-       cc-window.h                             \
        cc-shell-category-view.c                \
        cc-shell-category-view.h                \
        cc-shell-item-view.c                    \
@@ -48,7 +49,16 @@ gnome_control_center_SOURCES =                       \
        list-box-helper.c                       \
        $(MARSHAL_FILES)
 
+gnome_control_center_SOURCES =                 \
+       $(common_sources)                       \
+       cc-window.c                             \
+       cc-window.h
+
+gnome_control_center_alt_SOURCES =             \
+       $(common_sources)
+
 gnome_control_center_LDFLAGS = -export-dynamic
+gnome_control_center_alt_LDFLAGS = -export-dynamic
 
 gnome_control_center_LDADD =                                           \
        libshell.la                                                     \
@@ -91,6 +101,24 @@ if BUILD_BLUETOOTH
 gnome_control_center_LDADD += $(top_builddir)/panels/bluetooth/libbluetooth.la
 endif
 
+gnome_control_center_alt_LDADD =                                       \
+       $(gnome_control_center_LDADD)                                   \
+       alt/libshell_alt.la
+
+# Because it is confusing and somewhat problematic to directly add and compile
+# cc-panel-loader.o by another directory (i.e. the shell search provider), we
+# have to create a library and link it there, just like libshell.la.
+noinst_LTLIBRARIES += libpanel_loader.la
+
+libpanel_loader_la_SOURCES = \
+       cc-panel-loader.c                       \
+       cc-panel-loader.h
+
+libpanel_loader_la_CPPFLAGS = \
+       $(AM_CPPFLAGS)                          \
+       -DCC_PANEL_LOADER_NO_GTYPES
+
+
 # Dbus service file
 servicefiledir = $(datadir)/dbus-1/services
 servicefile_in_files = org.gnome.ControlCenter.service.in
@@ -127,7 +155,7 @@ EXTRA_DIST =                                        \
 CLEANFILES = $(BUILT_SOURCES) $(completion_DATA) $(servicefile_DATA)
 DISTCLEANFILES = gnome-control-center.desktop gnome-control-center.desktop.in
 
-noinst_PROGRAMS = test-hostname
+noinst_PROGRAMS += test-hostname
 test_hostname_SOURCES = hostname-helper.c hostname-helper.h test-hostname.c
 test_hostname_LDADD = $(PANEL_LIBS) $(INFO_PANEL_LIBS)
 
diff --git a/shell/alt/Makefile.am b/shell/alt/Makefile.am
new file mode 100644
index 0000000..948b019
--- /dev/null
+++ b/shell/alt/Makefile.am
@@ -0,0 +1,19 @@
+AM_CPPFLAGS =                                  \
+       -DGNOMELOCALEDIR="\"$(datadir)/locale\""\
+       -I$(top_srcdir)                         \
+       $(SHELL_CFLAGS)                         \
+       $(CHEESE_CFLAGS)                        \
+       $(WACOM_PANEL_CFLAGS)                   \
+       -I$(top_srcdir)/shell                   \
+       -I$(top_srcdir)/panels/common           \
+       -I$(top_srcdir)/libgd
+
+noinst_LTLIBRARIES = libshell_alt.la
+
+libshell_alt_la_SOURCES =                      \
+       cc-window.c                             \
+       cc-window.h
+
+libshell_alt_la_LIBADD = $(top_builddir)/libgd/libgd.la
+
+-include $(top_srcdir)/git.mk


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]