dtc.mk
1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
################################################################################
#
# dtc
#
################################################################################
DTC_VERSION = 1.4.1
DTC_SOURCE = dtc-$(DTC_VERSION).tar.xz
DTC_SITE = https://www.kernel.org/pub/software/utils/dtc
DTC_LICENSE = GPLv2+/BSD-2c
DTC_LICENSE_FILES = README.license GPL
DTC_INSTALL_STAGING = YES
DTC_DEPENDENCIES = host-bison host-flex
HOST_DTC_DEPENDENCIES = host-bison host-flex
define DTC_POST_INSTALL_TARGET_RM_DTDIFF
rm -f $(TARGET_DIR)/usr/bin/dtdiff
endef
ifeq ($(BR2_PACKAGE_DTC_PROGRAMS),y)
DTC_LICENSE += (for the library), GPLv2+ (for the executables)
DTC_INSTALL_GOAL = install
ifeq ($(BR2_PACKAGE_BASH),)
DTC_POST_INSTALL_TARGET_HOOKS += DTC_POST_INSTALL_TARGET_RM_DTDIFF
endif
else # $(BR2_PACKAGE_DTC_PROGRAMS) != y
DTC_INSTALL_GOAL = install-lib
endif # $(BR2_PACKAGE_DTC_PROGRAMS) != y
define DTC_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=/usr
endef
# For staging, only the library is needed
define DTC_INSTALL_STAGING_CMDS
$(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) PREFIX=/usr install-lib \
install-includes
endef
define DTC_INSTALL_TARGET_CMDS
$(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) PREFIX=/usr $(DTC_INSTALL_GOAL)
endef
# host build
define HOST_DTC_BUILD_CMDS
$(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr
endef
define HOST_DTC_INSTALL_CMDS
$(MAKE) -C $(@D) PREFIX=$(HOST_DIR)/usr install-bin
endef
$(eval $(generic-package))
$(eval $(host-generic-package))