summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2018-06-22 00:43:09 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2018-06-22 00:43:09 +0100
commit464ec09d1faa086fa0c4595eb1dca8de65f1014b (patch)
tree45e1b0fe193813419e0a199885f7b10ddc099a2a
parent715a10bbf5d34654a40b0622b4a2cff155f974d7 (diff)
downloadglib-objc-build.tar.gz
build: Attempt at delaying the build of ObjC filesobjc-build
Let's try keeping the dependency straight, and only copy the .m files into .c files when we actually need them, instead of unconditionally.
-rw-r--r--gio/Makefile.am24
1 files changed, 10 insertions, 14 deletions
diff --git a/gio/Makefile.am b/gio/Makefile.am
index e8f8fffa3..7dd8a520e 100644
--- a/gio/Makefile.am
+++ b/gio/Makefile.am
@@ -609,32 +609,28 @@ libgio_2_0_la_LDFLAGS = $(GLIB_LINK_FLAGS) \
# files to .c directly in the source tree because Meson needs the .m extension.
# This must be done outside of "if OS_COCOA" block otherwise distcheck fails.
# See https://bugzilla.gnome.org/show_bug.cgi?id=672777.
-OBJC_FILES = \
+ALL_OBJC_FILES = \
gnextstepsettingsbackend.m \
gosxcontenttype.m \
gosxappinfo.m \
gcocoanotificationbackend.m \
$(NULL)
+EXTRA_DIST += $(ALL_OBJC_FILES)
+
+if OS_COCOA
+if !MAC_OS_X_9
+OBJC_FILES = $(filter-out gcocoanotificationbackend.m, $(ALL_OBJC_FILES))
+endif
+
OBJC_C_FILES = $(OBJC_FILES:.m=.c)
-BUILT_SOURCES += $(OBJC_C_FILES)
CLEANFILES += $(OBJC_C_FILES)
-EXTRA_DIST += $(OBJC_FILES)
$(OBJC_C_FILES): %.c: %.m Makefile
- cp $< $@
+ $(AM_V_GEN)cp $< $@
-if OS_COCOA
libgio_objc_2_0_la_CFLAGS = $(libgio_2_0_la_CFLAGS) -xobjective-c
libgio_objc_2_0_la_CPPFLAGS = $(libgio_2_0_la_CPPFLAGS)
libgio_objc_2_0_la_LDFLAGS = $(libgio_2_0_la_LDFLAGS) -Wl,-framework,Foundation -Wl,-framework,AppKit
-libgio_objc_2_0_la_SOURCES = \
- $(builddir)/gnextstepsettingsbackend.c \
- $(builddir)/gosxcontenttype.c \
- $(builddir)/gosxappinfo.c \
- $(builddir)/gosxappinfo.h
-if MAC_OS_X_9
-libgio_objc_2_0_la_SOURCES += \
- $(builddir)/gcocoanotificationbackend.c
-endif
+libgio_objc_2_0_la_SOURCES = $(OBJC_C_FILES)
noinst_LTLIBRARIES += libgio-objc-2.0.la
libgio_2_0_la_LIBADD += libgio-objc-2.0.la