1 #############################################################
5 #############################################################
7 NASM_SOURCE
:=nasm-
$(NASM_VERSION
).
tar.bz2
8 NASM_SITE
:=http
://www.nasm.us
/pub
/nasm
/releasebuilds
/$(NASM_VERSION
)/
9 NASM_SRCDIR
:=$(TOOL_BUILD_DIR
)/nasm-
$(NASM_VERSION
)
10 NASM_DIR
:=$(BUILD_DIR
)/nasm-
$(NASM_VERSION
)
11 NASM_HOSTDIR
:=$(TOOL_BUILD_DIR
)/nasm-
$(NASM_VERSION
)-host
14 NASM_BINARIES
:=ldrdf rdf2bin rdf2com rdf2bin rdf2ihx rdfdump rdflib rdx
15 NASM_TARGET_BINARY
:=usr
/bin
/nasm
17 $(DL_DIR
)/$(NASM_SOURCE
):
18 $(WGET
) -P
$(DL_DIR
) $(NASM_SITE
)/$(NASM_SOURCE
)
20 $(NASM_SRCDIR
)/.unpacked
: $(DL_DIR
)/$(NASM_SOURCE
)
21 $(NASM_CAT
) $(DL_DIR
)/$(NASM_SOURCE
) |
tar -C
$(TOOL_BUILD_DIR
) $(TAR_OPTIONS
) -
22 toolchain
/patch-kernel.sh
$(NASM_SRCDIR
) package
/nasm
/ nasm-
$(NASM_VERSION
)\
*.patch
23 $(CONFIG_UPDATE
) $(NASM_SRCDIR
)/
26 $(NASM_DIR
)/.configured
: THIS_SRCDIR
=$(NASM_SRCDIR
)
27 $(NASM_DIR
)/.configured
: $(NASM_SRCDIR
)/.unpacked
29 (cd
$(@D
); rm -rf config.cache
; \
30 $(AUTO_CONFIGURE_TARGET
) \
35 $(NASM_DIR
)/$(NASM_BINARY
): $(NASM_DIR
)/.configured
36 $(MAKE
) -C
$(NASM_DIR
)/
39 $(TARGET_DIR
)/$(NASM_TARGET_BINARY
): $(NASM_DIR
)/$(NASM_BINARY
)
40 # Bloat: rdoff/* should use a common library!
41 $(MAKE
) INSTALLROOT
=$(TARGET_DIR
) -C
$(NASM_DIR
) install install_rdf
42 ifneq ($(BR2_HAVE_INFOPAGES
),y
)
43 rm -rf
$(TARGET_DIR
)/usr
/share
/info
45 ifneq ($(BR2_HAVE_MANPAGES
),y
)
46 rm -rf
$(TARGET_DIR
)/usr
/share
/man
48 rm -rf
$(TARGET_DIR
)/share
/locale
49 rm -rf
$(TARGET_DIR
)/usr
/share
/doc
50 $(STRIPCMD
) $(STRIP_STRIP_ALL
) $@
52 nasm
: $(TARGET_DIR
)/$(NASM_TARGET_BINARY
)
54 nasm-source
: $(DL_DIR
)/$(NASM_SOURCE
)
57 -$(MAKE
) -C
$(NASM_DIR
) clean
58 rm -rf
$(TARGET_DIR
)/$(NASM_TARGET_BINARY
) \
59 $(addprefix $(TARGET_DIR
)/$(dir $(NASM_TARGET_BINARY
)), \
60 ndisasm
$(NASM_BINARIES
))
65 #############################################################
67 # Toplevel Makefile options
69 #############################################################
70 ifeq ($(BR2_PACKAGE_NASM
),y
)
74 #############################################################
78 #############################################################
79 HOST_NASM_BINARY
=$(shell $(CONFIG_SHELL
) package
/nasm
/nasmcheck.sh
)
80 HOST_NASM_IF_ANY
=$(shell $(CONFIG_SHELL
) toolchain
/dependencies
/check-host-nasm.sh
)
83 $(NASM_HOSTDIR
)/.configured
: THIS_SRCDIR
=$(NASM_SRCDIR
)
84 $(NASM_HOSTDIR
)/.configured
: $(NASM_SRCDIR
)/.unpacked
86 (cd
$(@D
); rm -rf config.cache
; \
87 $(HOST_CONFIGURE_OPTS
) \
88 $(THIS_SRCDIR
)/configure \
93 $(NASM_HOSTDIR
)/$(NASM_BINARY
): $(NASM_HOSTDIR
)/.configured
94 $(MAKE
) -C
$(NASM_HOSTDIR
)/
97 build-nasm-host-binary
: $(NASM_HOSTDIR
)/$(NASM_BINARY
)
98 $(Q
)if
[ -L
$(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
) ]; then \
99 rm -f
$(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
); \
101 $(Q
)if
[ ! -f
$(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
) \
102 -o
$(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
) \
103 -ot
$(NASM_HOST_DIR
)/$(NASM_BINARY
) ]; then \
105 $(INSTALL
) -D
-m0755
$(NASM_HOSTDIR
)/$(NASM_BINARY
) $(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
); \
106 $(INSTALL
) -D
-m0755
$(NASM_HOSTDIR
)/ndisasm
$(TOOL_BUILD_DIR
)/bin
/ndisasm
; \
107 $(foreach f
,$(NASM_BINARIES
),\
108 $(INSTALL
) -D
-m0755
$(NASM_HOSTDIR
)/rdoff
/$(f
) $(TOOL_BUILD_DIR
)/bin
/$(f
);) \
111 use-nasm-host-binary
:
112 $(Q
)if
[ ! -e
"$(TOOL_BUILD_DIR)/bin/$(NASM_BINARY)" ]; then \
113 rm -f
$(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
); \
114 mkdir
-p
$(TOOL_BUILD_DIR
)/bin
; \
115 ln
-sf
"$(HOST_NASM_IF_ANY)" \
116 $(TOOL_BUILD_DIR
)/bin
/$(NASM_BINARY
); \
119 host-nasm
: $(HOST_NASM_BINARY
)
121 host-nasm-source
: $(DL_DIR
)/$(NASM_SOURCE
)
122 ifeq ($(HOST_NASM_BINARY
),build-nasm-host-binary
)
124 -$(MAKE
) -C
$(NASM_HOSTDIR
) clean
125 rm -rf
$(addprefix $(TOOL_BUILD_DIR
)/bin
/,$(NASM_BINARY
) ndisasm\
129 rm -rf
$(NASM_HOSTDIR
) $(NASM_SRCDIR
)
131 host-nasm-clean host-nasm-dirclean
:
133 .PHONY
: host-nasm use-nasm-host-binary