dmake: do not set MAKEFLAGS=k
[unleashed/tickless.git] / usr / src / cmd / hal / tools / Makefile
blobb6a7c601d615fca158a22f862fff86ee7c3a3083
2 # CDDL HEADER START
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
19 # CDDL HEADER END
21 # Copyright 2014 Garrett D'Amore <garrett@damore.org>
23 # Copyright 2008 Sun Microsystems, Inc. All rights reserved.
24 # Use is subject to license terms.
27 SUBDIR = illumos
29 HAL_PROG = hal-device hal-find-by-capability hal-find-by-property \
30 hal-get-property hal-set-property lshal
32 HAL_LIB = hal-is-caller-privileged
34 SCRIPT_BIN = hal-fdi-validate
36 SCRIPT_LIB = hal-system-lcd-set-brightness hal-system-lcd-get-brightness \
37 hal-system-power-hibernate hal-system-power-suspend \
38 hal-system-power-reboot hal-system-power-shutdown hal-functions
40 STORAGE_METHOD_PROG = hal-storage-closetray hal-storage-eject \
41 hal-storage-mount hal-storage-unmount \
42 hal-storage-zpool-export hal-storage-zpool-import
44 STORAGE_PROG = $(STORAGE_METHOD_PROG) \
45 hal-storage-cleanup-mountpoint \
46 hal-storage-cleanup-all-mountpoints
48 PROGSRCS = $(PROG:%=%.c) $(STORAGE_PROG:%=%.c)
51 STORAGE_OBJS = $(STORAGE_PROG:%=%.o)
52 STORAGE_SHAREDOBJS = hal-storage-shared.o adt_data.o
53 STORAGE_SHAREDSRCS = $(STORAGE_SHAREDOBJS:%.o=%.c) $(STORAGE_SHAREDOBJS:%.o=../utils/%.c)
55 SRCS = $(PROGSRCS) $(STORAGE_SHAREDSRCS)
57 CLOBBERFILES += $(HAL_PROG) $(STORAGE_PROG) $(SCRIPT_BIN) $(SCRIPT_LIB) $(HAL_LIB)
58 CLEANFILES += $(STORAGE_SHAREDOBJS) $(STORAGE_OBJS) hal-storage-zpool.o
60 include ../../Makefile.cmd
61 include ../Makefile.hal
63 $(HAL_PROG) := LDLIBS += -lc -ldbus-1 -lhal
65 lshal := LDLIBS += -ldbus-glib-1 -lglib-2.0
67 $(HAL_LIB) := LDLIBS += -lc -ldbus-1 -lpolkit $(ZIGNORE) -lglib-2.0
69 $(STORAGE_PROG) := LDLIBS += -lc -ldbus-1 -lglib-2.0 -lhal -lhal-storage -lbsm
71 $(STORAGE_METHOD_PROG) := LDLIBS += -lpolkit
73 CPPFLAGS += $(HAL_DBUS_CPPFLAGS) $(HAL_GLIB_CPPFLAGS) $(HAL_CONFIG_CPPFLAGS)
74 CPPFLAGS += -I$(ROOT)/usr/include/hal
75 CPPFLAGS += -I$(ROOT)/usr/include/libpolkit
76 C99MODE = $(C99_ENABLE)
78 ROOTUSRSBINPROG = $(HAL_PROG:%=$(ROOTUSRSBIN)/%) \
79 $(SCRIPT_BIN:%=$(ROOTUSRSBIN)/%)
81 ROOTCMDDIR = $(ROOTLIB_HAL)
82 ROOTCMD = $(STORAGE_PROG:%=$(ROOTCMDDIR)/%) \
83 $(HAL_LIB:%=$(ROOTCMDDIR)/%) \
84 $(SCRIPT_LIB:%=$(ROOTCMDDIR)/%)
86 all := TARGET= all
87 install := TARGET= install
88 clean := TARGET= clean
89 clobber := TARGET= clobber
91 .KEEP_STATE:
93 all: $(HAL_PROG) $(STORAGE_PROG) $(SCRIPT_BIN) $(SCRIPT_LIB) $(HAL_LIB) $(SUBDIR)
95 hal-storage-shared.o: hal-storage-shared.c
96 $(COMPILE.c) -o $@ hal-storage-shared.c
98 adt_data.o: ../utils/adt_data.c
99 $(COMPILE.c) -o $@ ../utils/adt_data.c
101 hal-storage-closetray: hal-storage-closetray.o $(STORAGE_SHAREDOBJS)
102 $(LINK.c) hal-storage-closetray.o $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
103 $(POST_PROCESS)
105 hal-storage-eject: hal-storage-eject.o $(STORAGE_SHAREDOBJS)
106 $(LINK.c) hal-storage-eject.o $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
107 $(POST_PROCESS)
109 hal-storage-mount: hal-storage-mount.o $(STORAGE_SHAREDOBJS)
110 $(LINK.c) hal-storage-mount.o $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
111 $(POST_PROCESS)
113 hal-storage-unmount: hal-storage-unmount.o $(STORAGE_SHAREDOBJS)
114 $(LINK.c) hal-storage-unmount.o $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
115 $(POST_PROCESS)
117 hal-storage-cleanup-mountpoint: hal-storage-cleanup-mountpoint.c \
118 $(STORAGE_SHAREDOBJS)
119 $(LINK.c) hal-storage-cleanup-mountpoint.c \
120 $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
121 $(POST_PROCESS)
123 hal-storage-cleanup-all-mountpoints: hal-storage-cleanup-all-mountpoints.c \
124 $(STORAGE_SHAREDOBJS)
125 $(LINK.c) hal-storage-cleanup-all-mountpoints.c \
126 $(STORAGE_SHAREDOBJS) -o $@ $(LDLIBS)
127 $(POST_PROCESS)
129 hal-storage-zpool-export: hal-storage-zpool.c $(STORAGE_SHAREDOBJS)
130 $(LINK.c) -o $@ $(STORAGE_SHAREDOBJS) -DZPOOL_SUBCMD=\"export\" hal-storage-zpool.c $(LDLIBS)
131 $(POST_PROCESS)
133 hal-storage-zpool-import: hal-storage-zpool.c $(STORAGE_SHAREDOBJS)
134 $(LINK.c) -o $@ $(STORAGE_SHAREDOBJS) -DZPOOL_SUBCMD=\"import\" hal-storage-zpool.c $(LDLIBS)
135 $(POST_PROCESS)
137 hal-device: hal-device.c
138 $(LINK.c) -o $@ hal-device.c $(LDLIBS)
139 $(POST_PROCESS)
141 hal-find-by-capability: hal_find_by_capability.c
142 $(LINK.c) -o $@ hal_find_by_capability.c $(LDLIBS)
143 $(POST_PROCESS)
145 hal-find-by-property: hal_find_by_property.c
146 $(LINK.c) -o $@ hal_find_by_property.c $(LDLIBS)
147 $(POST_PROCESS)
149 hal-get-property: hal_get_property.c
150 $(LINK.c) -o $@ hal_get_property.c $(LDLIBS)
151 $(POST_PROCESS)
153 hal-set-property: hal_set_property.c
154 $(LINK.c) -o $@ hal_set_property.c $(LDLIBS)
155 $(POST_PROCESS)
157 lshal: lshal.c
158 $(LINK.c) -o $@ lshal.c $(LDLIBS)
159 $(POST_PROCESS)
161 install: all $(ROOTUSRSBINPROG) $(ROOTCMD) $(SUBDIR)
163 clean: $(SUBDIR)
164 $(RM) $(CLEANFILES)
166 $(SUBDIR): FRC
167 @cd $@; pwd; $(MAKE) $(TARGET)
169 FRC:
171 include ../../Makefile.targ