summaryrefslogtreecommitdiffstats
path: root/generate/unix/Makefile.common
diff options
context:
space:
mode:
Diffstat (limited to 'generate/unix/Makefile.common')
-rw-r--r--generate/unix/Makefile.common100
1 files changed, 100 insertions, 0 deletions
diff --git a/generate/unix/Makefile.common b/generate/unix/Makefile.common
new file mode 100644
index 0000000..2d7ac70
--- /dev/null
+++ b/generate/unix/Makefile.common
@@ -0,0 +1,100 @@
+#
+# Common make for acpica tools and utilities
+#
+
+#
+# Get the OS machine architecture. Anything with a "64" in the returned
+# string will be treated as a 64-bit OS. Otherwise, the default is 32-bit.
+#
+HARDWARE_NAME := $(shell uname -m)
+
+#
+# Main rule will only generate versions that are appropriate for the running
+# OS, either 64-bit or 32-bit.
+#
+all: ${PROGS}
+${PROGS}: FORCE
+ @cd $(BUILD_DIRECTORY_PATH)/$@; \
+ if [ $(findstring 64,$(HARDWARE_NAME)) ]; then \
+ mkdir -p obj64; \
+ make BITS=64; \
+ echo "64-bit version of $@:"; \
+ ls -al obj64/$@; \
+ else \
+ mkdir -p obj32; \
+ make BITS=32; \
+ echo "32-bit version of $@:"; \
+ ls -al obj32/$@; \
+ fi;
+
+#
+# Make 32-bit and 64-bit versions of all the tools
+#
+both: 32 64
+
+#
+# Make only 32-bit versions of all the tools
+#
+32: FORCE
+ @for toolname in ${PROGS}; do \
+ (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
+ pwd; \
+ mkdir -p obj32; \
+ make BITS=32; \
+ echo "32-bit version of $$toolname:"; \
+ ls -al obj32/$$toolname \
+ ); \
+ done;
+
+#
+# Make only 64-bit versions of all the tools
+#
+64: FORCE
+ @for toolname in ${PROGS}; do \
+ (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
+ pwd; \
+ mkdir -p obj64; \
+ make BITS=64; \
+ echo "64-bit version of $$toolname:"; \
+ ls -al obj64/$$toolname \
+ ); \
+ done;
+
+clean: FORCE
+ @for toolname in ${PROGS}; do \
+ (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
+ pwd; \
+ if [ -d "obj32" ] ; then \
+ make BITS=32 clean; \
+ rmdir obj32; \
+ fi; \
+ if [ -d "obj64" ] ; then \
+ make BITS=64 clean; \
+ rmdir obj64; \
+ fi; \
+ ); \
+ done;
+
+#
+# Install all tools, either 32-bit or 64-bit as appropriate for the host OS
+#
+install: FORCE
+ @for toolname in ${PROGS}; do \
+ (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
+ pwd; \
+ if [ $(findstring 64,$(HARDWARE_NAME)) ]; then \
+ make BITS=64 install; \
+ echo "Installed 64-bit version of $$toolname"; \
+ else \
+ make BITS=32 install; \
+ echo "Installed 32-bit version of $$toolname"; \
+ fi; \
+ ); \
+ done;
+
+machine: FORCE
+ @echo "Machine architecture: $(HARDWARE_NAME), $(XBITS)";
+ @echo "Findstring: $(findstring 64, $(HARDWARE_NAME))";
+
+FORCE:
+
OpenPOWER on IntegriCloud