xref: /illumos-gate/usr/src/cmd/hal/hald/Makefile (revision b6805bf78d2bbbeeaea8909a05623587b42d58b3)
118c2aff7Sartem#
218c2aff7Sartem# CDDL HEADER START
318c2aff7Sartem#
418c2aff7Sartem# The contents of this file are subject to the terms of the
518c2aff7Sartem# Common Development and Distribution License (the "License").
618c2aff7Sartem# You may not use this file except in compliance with the License.
718c2aff7Sartem#
818c2aff7Sartem# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
918c2aff7Sartem# or http://www.opensolaris.org/os/licensing.
1018c2aff7Sartem# See the License for the specific language governing permissions
1118c2aff7Sartem# and limitations under the License.
1218c2aff7Sartem#
1318c2aff7Sartem# When distributing Covered Code, include this CDDL HEADER in each
1418c2aff7Sartem# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1518c2aff7Sartem# If applicable, add the following below this CDDL HEADER, with the
1618c2aff7Sartem# fields enclosed by brackets "[]" replaced with your own identifying
1718c2aff7Sartem# information: Portions Copyright [yyyy] [name of copyright owner]
1818c2aff7Sartem#
1918c2aff7Sartem# CDDL HEADER END
2018c2aff7Sartem#
2118c2aff7Sartem#
2267e3a03eSrie# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
2318c2aff7Sartem# Use is subject to license terms.
2418c2aff7Sartem#
2518c2aff7Sartem
2618c2aff7SartemSUBDIRS =	solaris
2718c2aff7Sartem
2818c2aff7SartemPROG =		hald
2918c2aff7SartemOBJS =		hald_marshal.o device.o device_info.o device_store.o hald.o \
3018c2aff7Sartem		hald_dbus.o hald_runner.o ids.o logger.o property.o util.o \
3118c2aff7Sartem		util_helper.o util_pm.o
3218c2aff7SartemOBJS_SOL =	devinfo.o devinfo_ieee1394.o devinfo_misc.o devinfo_pci.o devinfo_storage.o \
33a9da3307Snp146283		devinfo_usb.o hotplug.o osspec.o sysevent.o devinfo_acpi.o \
34a9da3307Snp146283		devinfo_cpu.o
3518c2aff7SartemOBJS_ALL =	$(OBJS) $(OBJS_SOL:%=solaris/%)
3618c2aff7SartemSRCS =		$(OBJS:%.o=%.c)
3718c2aff7Sartem
3818c2aff7Sarteminclude ../../Makefile.cmd
3918c2aff7Sarteminclude ../Makefile.hal
4018c2aff7Sartem
4118c2aff7SartemROOTCMDDIR =	$(ROOTLIB_HAL)
4218c2aff7Sartem
4318c2aff7SartemLDLIBS +=	-lc -lm -ldbus-1 -ldbus-glib-1 -lglib-2.0 -lgobject-2.0 \
44a9da3307Snp146283		-ldevinfo -lsysevent -lnvpair -lkstat -lcfgadm
4518c2aff7Sartem
4618c2aff7Sartemall install $(PROG) :=	LDLIBS += -lexpat
4718c2aff7Sartem
4818c2aff7SartemCPPFLAGS +=	$(HAL_DBUS_CPPFLAGS) $(HAL_GLIB_CPPFLAGS) $(HAL_CONFIG_CPPFLAGS)
4918c2aff7SartemC99MODE =	$(C99_ENABLE)
5018c2aff7Sartem
51*b6805bf7SGordon RossCLOBBERFILES += hald_marshal.c hald_marshal.h
52*b6805bf7SGordon Ross
5318c2aff7Sartemall :=		TARGET= all
5418c2aff7Sarteminstall :=	TARGET= install
5518c2aff7Sartemclean :=	TARGET= clean
5618c2aff7Sartemclobber :=	TARGET= clobber
5718c2aff7Sartem$(PROG) :=	TARGET= all
5818c2aff7Sartem
5918c2aff7Sartem.KEEP_STATE:
6018c2aff7Sartem
6118c2aff7Sartemall: $(SUBDIRS) .WAIT $(PROG)
6218c2aff7Sartem
6318c2aff7Sartemhald_marshal.o: hald_marshal.h hald_marshal.c
6418c2aff7Sartem
6518c2aff7Sartemhald_marshal.h: hald_marshal.list
6618c2aff7Sartem	glib-genmarshal --prefix=hald_marshal hald_marshal.list --header >> xgen-gmh \
6718c2aff7Sartem	&& (cmp -s xgen-gmh hald_marshal.h || cp xgen-gmh hald_marshal.h) \
6818c2aff7Sartem	&& rm -f xgen-gmh xgen-gmh~
6918c2aff7Sartem
7018c2aff7Sartemhald_marshal.c: hald_marshal.list
7118c2aff7Sartem	glib-genmarshal --prefix=hald_marshal hald_marshal.list --body >> xgen-gmc \
7218c2aff7Sartem	&& (cmp -s xgen-gmc hald_marshal.c || cp xgen-gmc hald_marshal.c) \
7318c2aff7Sartem	&& rm -f xgen-gmc xgen-gmc~
7418c2aff7Sartem
7518c2aff7Sartem$(PROG): $(SUBDIRS) .WAIT $(OBJS_ALL)
7618c2aff7Sartem	$(LINK.c) -o $@ $(OBJS_ALL) $(LDLIBS)
7718c2aff7Sartem	$(POST_PROCESS)
7818c2aff7Sartem
7918c2aff7Sarteminstall: all $(ROOTCMD) $(SUBDIRS)
8018c2aff7Sartem
8118c2aff7Sartemclean: $(SUBDIRS)
82*b6805bf7SGordon Ross	$(RM) $(OBJS) $(OBJS_SOL)
8318c2aff7Sartem
8418c2aff7Sartem$(SUBDIRS): FRC
8518c2aff7Sartem	@cd $@; pwd; $(MAKE) $(TARGET)
8618c2aff7Sartem
8718c2aff7SartemFRC:
8818c2aff7Sartem
8918c2aff7Sarteminclude ../../Makefile.targ
90