From patchwork Fri Oct 30 17:46:16 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nick Connolly X-Patchwork-Id: 82990 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1C0C8A04E6; Fri, 30 Oct 2020 18:50:24 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 92D262E8D; Fri, 30 Oct 2020 18:47:40 +0100 (CET) Received: from mail-wr1-f66.google.com (mail-wr1-f66.google.com [209.85.221.66]) by dpdk.org (Postfix) with ESMTP id 9009F2E8B for ; Fri, 30 Oct 2020 18:47:38 +0100 (CET) Received: by mail-wr1-f66.google.com with SMTP id b8so7417322wrn.0 for ; Fri, 30 Oct 2020 10:47:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mayadata-io.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=LT+lpcGUfGMVRTdENgAUAqgfals5S6Ljv4w2B3N90oE=; b=UzaX+IoEQtCZmEnlyrF3kAkG0zwZ0BtbM7r+QEu+H0gAD3OsS8UFR+Ij+FYUXFzs2X FOcuiZqlEkLGrUlswhfb3o9v1wNNpHNf5GtZ7fj1YW1DOeR2T2Ih7s669WbctEAgaGNw IwEzVMbJBl3scpfrRcVvlMrE9Zcew4Fl7E4+co2aocXzJTpV0yLe2ROw9WVm52MnE7/s 67rYy+/Zuu3TMmIQVtb+ebjEHJNc7sZQMW7aOA84MRj4Dccl8cXitQIbBI80IGQmVOhN kdckpBIc/s9r0suvZkjBMHs0J2em5SolvedsRV/Q4jhU8HqzXVxc76cQGDVRs5QKwRZC um1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=LT+lpcGUfGMVRTdENgAUAqgfals5S6Ljv4w2B3N90oE=; b=ms6TbDTtmq3W4aiWN8gYNe+N+F1U1gWh7vrTkdPVpOcIvXK4t5zgqupJ30ZwmFeL/J gd9e8Ir7lTRc4aete8pKlz1mzecma4m6C16ly4FFrHxhpdWFwTVZPcNlprv++bkiZn7B g5vWmmOh6VRjB37dwXInQLbhgllcEwzpSGxhOq1APxqLy9NCcz9CnyfAMY8vOGVLCaOP C+E25Lkv1bHG4kiUq8qzwP9LTj14lsrSifLtJxCE1WnUg5XSAcrl16w/qXWschGGMg6d TNSPMQMqayCbFsQz7J3vB6134aC8yiJnkL7Y1nu+KkK+le4oLmU2a2+Zki51QNhWQhUK Ab5A== X-Gm-Message-State: AOAM533071BmK7Lw8ZHYAleMRNni9Lw8BfoCGhn+SIVPs9WaiAo3mf5e rXKgjKXaIHXQ9ZlRHHZyZzlyew== X-Google-Smtp-Source: ABdhPJwikfWxh/yngCQLpG3LH9x/Dz9IJVvBpuy0iLdYe8htA+6HfG7+cUoxDpjnZzW0E2hgQYDrvA== X-Received: by 2002:adf:cd87:: with SMTP id q7mr4582334wrj.169.1604080057271; Fri, 30 Oct 2020 10:47:37 -0700 (PDT) Received: from FENIX.localdomain (cpc98320-croy25-2-0-cust77.19-2.cable.virginm.net. [80.235.134.78]) by smtp.gmail.com with ESMTPSA id f5sm5321679wmh.16.2020.10.30.10.47.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Oct 2020 10:47:36 -0700 (PDT) From: Nick Connolly To: Bruce Richardson Cc: dev@dpdk.org, Nick Connolly Date: Fri, 30 Oct 2020 17:46:16 +0000 Message-Id: <20201030174617.1958-1-nick.connolly@mayadata.io> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH] Windows: minor build fixes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Don't run symlink-drivers-solibs.sh as part of 'install' because Windows doesn't support shell scripts, causing the install to fail. Meson versions >= 0.54.0 include support for handling /implib with msvc link. Specifying it explicitly causes failures when linking against the dll. Tested using Link 14.27.29112.0 and Clang 11.0.0. Signed-off-by: Nick Connolly --- config/meson.build | 8 +++++--- drivers/meson.build | 6 ++++-- lib/meson.build | 6 ++++-- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/config/meson.build b/config/meson.build index 258b01d06..a29693b88 100644 --- a/config/meson.build +++ b/config/meson.build @@ -57,9 +57,11 @@ eal_pmd_path = join_paths(get_option('prefix'), driver_install_path) # driver .so files often depend upon the bus drivers for their connect bus, # e.g. ixgbe depends on librte_bus_pci. This means that the bus drivers need # to be in the library path, so symlink the drivers from the main lib directory. -meson.add_install_script('../buildtools/symlink-drivers-solibs.sh', - get_option('libdir'), - pmd_subdir_opt) +if not is_windows + meson.add_install_script('../buildtools/symlink-drivers-solibs.sh', + get_option('libdir'), + pmd_subdir_opt) +endif # set the machine type and cflags for it if meson.is_cross_build() diff --git a/drivers/meson.build b/drivers/meson.build index 4bb7e9218..6b50f7238 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -186,8 +186,10 @@ foreach subpath:subdirs lk_deps = [version_map, def_file, mingw_map] if is_windows if is_ms_linker - lk_args = ['-Wl,/def:' + def_file.full_path(), - '-Wl,/implib:drivers\\' + implib] + lk_args = ['-Wl,/def:' + def_file.full_path()] + if meson.version().version_compare('<0.54.0') + lk_args += ['-Wl,/implib:drivers\\' + implib] + endif else lk_args = ['-Wl,--version-script=' + mingw_map.full_path()] endif diff --git a/lib/meson.build b/lib/meson.build index 1bb019720..ed00f8914 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -157,8 +157,10 @@ foreach l:libraries output: '@0@_mingw.map'.format(libname)) if is_ms_linker - lk_args = ['-Wl,/def:' + def_file.full_path(), - '-Wl,/implib:lib\\' + implib] + lk_args = ['-Wl,/def:' + def_file.full_path()] + if meson.version().version_compare('<0.54.0') + lk_args += ['-Wl,/implib:lib\\' + implib] + endif else if is_windows lk_args = ['-Wl,--version-script=' + mingw_map.full_path()]