1SubDir HAIKU_TOP src apps devices ;
2
3UsePrivateHeaders shared ;
4UsePrivateHeaders interface ;
5UsePrivateKernelHeaders ;
6UsePrivateSystemHeaders ;
7
8
9rule ISAPnPHeaderGen
10{
11	SEARCH on $(2) = $(SEARCH_SOURCE) ;
12	SEARCH on $(3) = $(SEARCH_SOURCE) ;
13
14	Depends $(1) : $(2) $(3) ;
15	MakeLocateArch $(<) ;
16	ISAPnPHeaderGen1 $(1) : $(2) $(3) ;
17	LocalClean clean : $(<) ;
18}
19
20actions ISAPnPHeaderGen1
21{
22	grep '^PNP[[:xdigit:]][[:xdigit:]][[:xdigit:]][[:xdigit:]] '  $(2[1]) \
23| gawk -f $(2[2]) > $(1) ;
24}
25
26ISAPnPHeaderGen [ FGristFiles isapnpids.h ] : isapnp_devids.txt : devlist2h.awk ;
27
28rule USBDevsHeaderGen
29{
30	SEARCH on $(2) = $(SEARCH_SOURCE) ;
31	SEARCH on $(3) = $(SEARCH_SOURCE) ;
32
33	Depends $(1) : $(2) $(3) ;
34	MakeLocateArch $(<) ;
35	USBDevsHeaderGen1 $(1) : $(2) $(3) ;
36	LocalClean clean : $(<) ;
37}
38
39actions USBDevsHeaderGen1
40{
41	gawk -v HEADERFILE=$(1[1]) -v DATAFILE=$(1[2]) -f $(2[2]) $(2[1])
42}
43
44USBDevsHeaderGen [ FGristFiles usbdevs.h usbdevs_data.h ] : usbdevs
45	: usb_devlist2h.awk ;
46
47rule PCIHeaderGen
48{
49	SEARCH on $(2) = $(SEARCH_SOURCE) ;
50	SEARCH on $(3) = $(SEARCH_SOURCE) ;
51
52	Depends $(1) : $(2) $(3) ;
53	MakeLocateArch $(<) ;
54	PCIHeaderGen1 $(1) : $(2) $(3) ;
55	LocalClean clean : $(<) ;
56}
57
58actions PCIHeaderGen1
59{
60	gawk -v HEADERFILE=$(1) -f $(2[2]) $(2[1])
61}
62
63local pciidsFile = [ DownloadFile pci.ids
64			: http://www.haiku-files.org/files/pci.ids ] ;
65
66PCIHeaderGen [ FGristFiles pcihdr.h ] : $(pciidsFile) : pci-header.awk ;
67
68rule USBHeaderGen
69{
70	SEARCH on $(2) = $(SEARCH_SOURCE) ;
71	SEARCH on $(3) = $(SEARCH_SOURCE) ;
72
73	Depends $(1) : $(2) $(3) ;
74	MakeLocateArch $(<) ;
75	USBHeaderGen1 $(1) : $(2) $(3) ;
76	LocalClean clean : $(<) ;
77}
78
79actions USBHeaderGen1
80{
81	gawk -v HEADERFILE=$(1) -f $(2[2]) $(2[1])
82}
83
84local usbidsFile = [ DownloadFile usb.ids
85			: http://www.haiku-files.org/files/usb.ids ] ;
86
87USBHeaderGen [ FGristFiles usbhdr.h ] : $(usbidsFile) : usb-header.awk ;
88
89Application Devices :
90	DevicesApplication.cpp
91	DevicesView.cpp
92	dm_wrapper.c
93	DevicePCI.cpp
94	DeviceACPI.cpp
95	DeviceSCSI.cpp
96	Device.cpp
97	PropertyList.cpp
98	PropertyListPlain.cpp
99	: be libcolumnlistview.a tracker $(TARGET_LIBSUPC++)
100		$(TARGET_LIBSTDC++)	$(HAIKU_LOCALE_LIBS) 
101	: Devices.rdef
102;
103
104DoCatalogs Devices :
105	x-vnd.Haiku-Devices
106	:
107	DevicesApplication.cpp
108	DevicesView.cpp
109	DevicePCI.cpp
110	PropertyList.cpp
111	PropertyListPlain.cpp
112	DeviceACPI.cpp
113	DeviceSCSI.cpp
114	Device.cpp
115;
116
117Includes [ FGristFiles DevicePCI.cpp ] : [ FGristFiles pcihdr.h ] ;
118
119