Sync ACPICA with Intel's version 20161222.
[dragonfly.git] / sys / contrib / dev / acpica / generate / unix / Makefile.common
blobcc6a101f10bf071ed7ff0a9fea2dbab15ace5d92
2 # Common make for acpica tools and utilities
6 # Get the OS machine architecture. Anything with a "64" in the returned
7 # string will be treated as a 64-bit OS. Otherwise, the default is 32-bit.
9 ifeq ($(HOST), _FreeBSD)
10 HARDWARE_NAME := $(shell uname -p)
11 else
12 ifeq ($(HOST), _QNX)
13 HARDWARE_NAME := x86pc
14 else
15 HARDWARE_NAME := $(shell uname -m)
16 endif
17 endif
20 # Main rule will only generate versions that are appropriate for the running
21 # OS, either 64-bit or 32-bit.
23 all:    $(PROGS)
24 $(PROGS): FORCE
25         @cd $(BUILD_DIRECTORY_PATH)/$@; \
26         mkdir -p obj; \
27         $(MAKE) || exit "$$?"; \
28         if [ $(findstring 64,$(HARDWARE_NAME)) ]; then \
29                 echo "64-bit version of $@:"; \
30         else \
31                 echo "32-bit version of $@:"; \
32         fi; \
33         ls -al ../bin/$@; \
34         echo "";
37 # Simple clean removes all .obj files, but leaves the executables
38 # in the local bin directory
40 clean:  FORCE
41         @for toolname in $(PROGS); do \
42                 (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
43                 if [ -d "obj" ] ; then \
44                         echo "Removing $$toolname:"; \
45                         pwd; \
46                         $(MAKE) clean; \
47                         rmdir obj; \
48                         echo ""; \
49                 fi; \
50                 ); \
51         done;
54 # Very clean removes all executables and the local bin directory
56 veryclean:      FORCE
57         @for toolname in $(PROGS); do \
58                 (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
59                 if [ -d "obj" ] ; then \
60                         echo "Removing $$toolname:"; \
61                         pwd; \
62                         $(MAKE) clean; \
63                         rmdir obj; \
64                         echo ""; \
65                 fi; \
66                 ); \
67                 if [ -e "$(BUILD_DIRECTORY_PATH)/bin/$$toolname" ] ; then \
68                         rm $(BUILD_DIRECTORY_PATH)/bin/$$toolname; \
69                 fi; \
70         done; \
71         if [ -d "bin" ] ; then \
72                 rmdir bin; \
73         fi;
76 # Install all tools, either 32-bit or 64-bit as appropriate for the host OS
78 install:        FORCE
79         @for toolname in $(PROGS); do \
80                 (cd $(BUILD_DIRECTORY_PATH)/$$toolname; \
81                 pwd; \
82                 $(MAKE) PROG=$$toolname install; \
83                 if [ $(findstring 64,$(HARDWARE_NAME)) ]; then \
84                         echo "Installed 64-bit version of $$toolname"; \
85                 else \
86                         echo "Installed 32-bit version of $$toolname"; \
87                 fi; \
88                 echo ""; \
89                 ); \
90         done;
92 machine:        FORCE
93         @echo "Machine architecture: $(HARDWARE_NAME), $(XBITS)";
94         @echo "Findstring: $(findstring 64, $(HARDWARE_NAME))";
96 FORCE: