summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'x11-wm/i3/files/i3-4.7.2-parallel_make.patch')
-rw-r--r--x11-wm/i3/files/i3-4.7.2-parallel_make.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/x11-wm/i3/files/i3-4.7.2-parallel_make.patch b/x11-wm/i3/files/i3-4.7.2-parallel_make.patch
new file mode 100644
index 000000000000..8e6eee75a938
--- /dev/null
+++ b/x11-wm/i3/files/i3-4.7.2-parallel_make.patch
@@ -0,0 +1,45 @@
+Fix parallel build
+
+https://bugs.gentoo.org/show_bug.cgi?id=508304
+
+Patch written by Julian Ospald <hasufell@gentoo.org>
+
+--- a/src/i3.mk
++++ b/src/i3.mk
+@@ -1,4 +1,4 @@
+-ALL_TARGETS += i3
++ALL_TARGETS += i3 test-tools
+ INSTALL_TARGETS += install-i3
+ CLEAN_TARGETS += clean-i3
+
+@@ -36,20 +36,22 @@ src/%.o: src/%.c $(i3_HEADERS_DEP)
+ echo "[i3] CC $<"
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(PCH_FLAGS) -c -o $@ ${canonical_path}/$<
+
+-# This target compiles the command parser twice:
+-# Once with -DTEST_PARSER, creating a stand-alone executable used for tests,
+-# and once as an object file for i3.
++test-tools: src/test.commands_parser src/test.config_parser
++
++src/test.commands_parser: src/commands_parser.c $(i3_HEADERS_DEP) i3-command-parser.stamp libi3.a
++ echo "[i3] Link test.commands_parser"
++ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.commands_parser $< $(LIBS) $(i3_LIBS)
++
++src/test.config_parser: src/config_parser.c $(i3_HEADERS_DEP) i3-config-parser.stamp libi3.a
++ echo "[i3] Link test.config_parser"
++ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.config_parser $< $(LIBS) $(i3_LIBS)
++
+ src/commands_parser.o: src/commands_parser.c $(i3_HEADERS_DEP) i3-command-parser.stamp
+ echo "[i3] CC $<"
+- $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.commands_parser $< $(LIBS) $(i3_LIBS)
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -c -o $@ ${canonical_path}/$<
+
+-# This target compiles the command parser twice:
+-# Once with -DTEST_PARSER, creating a stand-alone executable used for tests,
+-# and once as an object file for i3.
+ src/config_parser.o: src/config_parser.c $(i3_HEADERS_DEP) i3-config-parser.stamp
+ echo "[i3] CC $<"
+- $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(I3_LDFLAGS) $(LDFLAGS) -DTEST_PARSER -g -o test.config_parser $< $(LIBS) $(i3_LIBS)
+ $(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -c -o $@ ${canonical_path}/$<
+
+ i3-command-parser.stamp: generate-command-parser.pl parser-specs/commands.spec