@@ -34,6 +34,12 @@ DPDK_17.08_TARBALL_MD5_CKSUM := 0641f59ea8ea98afefa7cfa2699f6241
34
34
DPDK_SOURCE := $(B ) /dpdk-$(DPDK_VERSION )
35
35
MACHINE =$(shell uname -m)
36
36
37
+ NASM_BASE_URL := http://www.nasm.us/pub/nasm/releasebuilds
38
+ NASM_VER := 2.13.01
39
+ NASM_TARBALL := nasm-$(NASM_VER ) .tar.xz
40
+ NASM_TAR_URL := $(NASM_BASE_URL ) /$(NASM_VER ) /$(NASM_TARBALL )
41
+ NASM_SOURCE := $(B ) /nasm-$(NASM_VER )
42
+
37
43
ISA_L_CRYPTO_LIB := n
38
44
39
45
IPSEC_MB_VER ?= 0.46
@@ -225,6 +231,12 @@ $(CURDIR)/$(DPDK_TARBALL):
225
231
fi
226
232
@rm -f $(B ) /.download.ok
227
233
234
+ $(CURDIR ) /$(NASM_TARBALL ) :
235
+ @if [ -e $( DPDK_DOWNLOAD_DIR) /$( NASM_TARBALL) ] ; \
236
+ then cp $(DPDK_DOWNLOAD_DIR ) /$(NASM_TARBALL ) $(CURDIR ) ; \
237
+ else curl -o $(CURDIR ) /$(NASM_TARBALL ) -LO $(NASM_TAR_URL ) ; \
238
+ fi
239
+
228
240
$(CURDIR ) /$(AESNIMB_LIB_TARBALL ) :
229
241
@if [ -e $( DPDK_DOWNLOAD_DIR) /$( AESNIMB_LIB_TARBALL) ] ; \
230
242
then cp $(DPDK_DOWNLOAD_DIR ) /$(AESNIMB_LIB_TARBALL ) $(CURDIR ) ; \
@@ -239,6 +251,7 @@ $(CURDIR)/$(ISA_L_CRYPTO_LIB_TARBALL):
239
251
240
252
DPDK_DOWNLOADS = $(CURDIR ) /$(DPDK_TARBALL )
241
253
ifeq ($(AESNI ) ,y)
254
+ DPDK_DOWNLOADS += $(CURDIR ) /$(NASM_TARBALL )
242
255
DPDK_DOWNLOADS += $(CURDIR ) /$(AESNIMB_LIB_TARBALL )
243
256
endif
244
257
ifeq ($(ISA_L_CRYPTO_LIB ) ,y)
@@ -260,6 +273,8 @@ $(B)/.extract.ok: $(B)/.download.ok
260
273
@echo --- extracting $(DPDK_TARBALL ) ---
261
274
@tar --directory $(B ) --extract --file $(CURDIR ) /$(DPDK_TARBALL )
262
275
ifeq ($(AESNI ) ,y)
276
+ @echo --- extracting $(NASM_TARBALL) ---
277
+ @tar --directory $(B) --extract --file $(CURDIR)/$(NASM_TARBALL)
263
278
@echo --- extracting $(AESNIMB_LIB_TARBALL) ---
264
279
@tar --directory $(B) --extract --file $(CURDIR)/$(AESNIMB_LIB_TARBALL)
265
280
endif
@@ -292,12 +307,16 @@ $(B)/.config.ok: $(B)/.patch.ok $(B)/custom-config
292
307
.PHONY : config
293
308
config : $(B ) /.config.ok
294
309
310
+ .PHONY : build-nasm
311
+ build-nasm :
312
+ cd $(NASM_SOURCE ) && sh configure && make -j
313
+
295
314
.PHONY : build-ipsec-mb
296
315
build-ipsec-mb :
297
316
mkdir -p $(I ) /lib/
298
317
# Do not build GCM stuff if we are building ISA_L
299
318
make -C $(AESNIMB_LIB_SOURCE ) -j NO_GCM=$(ISA_L_CRYPTO_LIB ) \
300
- DEBUG=$(DPDK_DEBUG ) EXTRA_CFLAGS=-fPIC
319
+ DEBUG=$(DPDK_DEBUG ) EXTRA_CFLAGS=-fPIC NASM= $( NASM_SOURCE ) /nasm
301
320
cp $(AESNIMB_LIB_SOURCE ) /libIPSec_MB.a $(I ) /lib/
302
321
303
322
.PHONY : build-isal-crypto
@@ -316,6 +335,7 @@ build-dpdk:
316
335
317
336
# Order matters
318
337
ifeq ($(AESNI ) ,y)
338
+ BUILD_TARGETS += build-nasm
319
339
BUILD_TARGETS += build-ipsec-mb
320
340
endif
321
341
ifeq ($(ISA_L_CRYPTO_LIB ) ,y)
0 commit comments