[gimp] app: remove tons of linker workarounds from Makefilea



commit 4266f86e0803d67e8442fe73885e581ff6f26b9d
Author: Michael Natterer <mitch gimp org>
Date:   Thu Aug 27 21:44:15 2015 +0200

    app: remove tons of linker workarounds from Makefilea
    
    either linkers got smarter or our structure got better, or this breaks
    on whatever other linkers again...

 app/Makefile.am        |   34 ++++++++--------------------------
 app/config/Makefile.am |   20 ++++++++------------
 app/tests/Makefile.am  |   19 +++++--------------
 3 files changed, 21 insertions(+), 52 deletions(-)
---
diff --git a/app/Makefile.am b/app/Makefile.am
index 70302d7..3e98c31 100644
--- a/app/Makefile.am
+++ b/app/Makefile.am
@@ -119,35 +119,17 @@ AM_CPPFLAGS = \
        -I$(includedir)                 \
        -I$(builddir)/gui
 
-# FIXME: core should not depend on xcf
-workaround_that_core_depends_on_xcf = \
-       -Wl,-u,$(SYMPREFIX)xcf_init
-
-# FIXME: core should not depend on pdb
-workaround_that_core_depends_on_pdb = \
-       -Wl,-u,$(SYMPREFIX)internal_procs_init          \
-       -Wl,-u,$(SYMPREFIX)gimp_plug_in_manager_restore
-
-# FIXME: plug-in should not depend on pdb
-workaround_that_plug_in_depends_on_pdb = \
-       -Wl,-u,$(SYMPREFIX)gimp_pdb_compat_param_spec
-
-# core, vectors and gegl are on the same architectural layer, prevent
-# the linker from panicing
-calm_down_linker = \
+# We need this due to circular dependencies
+AM_LDFLAGS = \
+       $(munix)                                                \
        -Wl,-u,$(SYMPREFIX)gimp_vectors_undo_get_type           \
        -Wl,-u,$(SYMPREFIX)gimp_vectors_mod_undo_get_type       \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_prop_undo_get_type      \
-       -Wl,-u,$(SYMPREFIX)gimp_curve_map_pixels                \
        -Wl,-u,$(SYMPREFIX)gimp_param_spec_duplicate            \
-       -Wl,-u,$(SYMPREFIX)gimp_operations_init
-
-AM_LDFLAGS = \
-       $(munix)                                        \
-       $(calm_down_linker)                             \
-       $(workaround_that_core_depends_on_xcf)          \
-       $(workaround_that_core_depends_on_pdb)          \
-       $(workaround_that_plug_in_depends_on_pdb)
+       -Wl,-u,$(SYMPREFIX)gimp_operations_init                 \
+       -Wl,-u,$(SYMPREFIX)xcf_init                             \
+       -Wl,-u,$(SYMPREFIX)internal_procs_init                  \
+       -Wl,-u,$(SYMPREFIX)gimp_plug_in_manager_restore         \
+       -Wl,-u,$(SYMPREFIX)gimp_pdb_compat_param_spec
 
 gimpconsoleldadd = \
        xcf/libappxcf.a                 \
diff --git a/app/config/Makefile.am b/app/config/Makefile.am
index e44233f..1320dbd 100644
--- a/app/config/Makefile.am
+++ b/app/config/Makefile.am
@@ -79,19 +79,15 @@ TESTS = test-config
 
 test_config_DEPENDENCIES = $(gimpconfig_libs)
 
-# We need this due to circular dependencies, see more detailed
-# comments about it in app/Makefile.am
+# We need this due to circular dependencies
 test_config_LDFLAGS = \
-       -Wl,-u,$(SYMPREFIX)gimp_cairo_image_surface_create_buffer       \
-       -Wl,-u,$(SYMPREFIX)xcf_init                                     \
-       -Wl,-u,$(SYMPREFIX)gimp_pdb_new                                 \
-       -Wl,-u,$(SYMPREFIX)internal_procs_init                          \
-       -Wl,-u,$(SYMPREFIX)gimp_plug_in_manager_restore                 \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_undo_get_type                   \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_mod_undo_get_type               \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_prop_undo_get_type              \
-       -Wl,-u,$(SYMPREFIX)gimp_image_map_config_get_type               \
-       -Wl,-u,$(SYMPREFIX)erode_region
+       -Wl,-u,$(SYMPREFIX)gimp_vectors_undo_get_type           \
+       -Wl,-u,$(SYMPREFIX)gimp_vectors_mod_undo_get_type       \
+       -Wl,-u,$(SYMPREFIX)gimp_param_spec_duplicate            \
+       -Wl,-u,$(SYMPREFIX)xcf_init                             \
+       -Wl,-u,$(SYMPREFIX)internal_procs_init                  \
+       -Wl,-u,$(SYMPREFIX)gimp_plug_in_manager_restore         \
+       -Wl,-u,$(SYMPREFIX)gimp_pdb_compat_param_spec
 
 test_config_LDADD = \
        ../xcf/libappxcf.a                      \
diff --git a/app/tests/Makefile.am b/app/tests/Makefile.am
index 02eec87..7b67960 100644
--- a/app/tests/Makefile.am
+++ b/app/tests/Makefile.am
@@ -64,32 +64,23 @@ AM_CPPFLAGS = \
        $(GEGL_CFLAGS)          \
        -I$(includedir)
 
-# We need this due to circular dependencies, see more detailed
-# comments about it in app/Makefile.am
+# We need this due to circular dependencies
 AM_LDFLAGS = \
+       -Wl,-u,$(SYMPREFIX)gimp_vectors_undo_get_type           \
+       -Wl,-u,$(SYMPREFIX)gimp_vectors_mod_undo_get_type       \
+       -Wl,-u,$(SYMPREFIX)gimp_param_spec_duplicate            \
+       -Wl,-u,$(SYMPREFIX)gimp_operations_init                 \
        -Wl,-u,$(SYMPREFIX)xcf_init                             \
        -Wl,-u,$(SYMPREFIX)internal_procs_init                  \
        -Wl,-u,$(SYMPREFIX)gimp_plug_in_manager_restore         \
        -Wl,-u,$(SYMPREFIX)gimp_pdb_compat_param_spec           \
        -Wl,-u,$(SYMPREFIX)gui_init                             \
-       -Wl,-u,$(SYMPREFIX)gimp_image_map_config_get_type       \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_undo_get_type           \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_mod_undo_get_type       \
-       -Wl,-u,$(SYMPREFIX)gimp_vectors_prop_undo_get_type      \
-       -Wl,-u,$(SYMPREFIX)actions_init                         \
-       -Wl,-u,$(SYMPREFIX)gimp_error_dialog_new                \
-       -Wl,-u,$(SYMPREFIX)menus_save                           \
-       -Wl,-u,$(SYMPREFIX)gimp_tools_save                      \
-       -Wl,-u,$(SYMPREFIX)gimp_curve_map_pixels                \
-       -Wl,-u,$(SYMPREFIX)gimp_image_base_type                 \
-       -Wl,-u,$(SYMPREFIX)gimp_param_spec_duplicate            \
        -Wl,-u,$(SYMPREFIX)gimp_lebl_dialog
 
 # Note that we have some duplicate entries here too to work around
 # circular dependencies and systems on the same architectural layer as
 # an alternative to LDFLAGS above
 LDADD = \
-       $(top_builddir)/app/dialogs/preferences-dialog.o        \
        $(top_builddir)/app/gui/libappgui.a                     \
        $(top_builddir)/app/tools/libapptools.a                 \
        $(top_builddir)/app/dialogs/libappdialogs.a             \


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