From 1a79ad16a46bb756b2644b8c096c772d7b1a5a9d Mon Sep 17 00:00:00 2001 From: Kenichi Maehashi Date: Wed, 18 Oct 2023 16:51:33 +0000 Subject: [PATCH 1/3] add .gitattributes for Windows support --- cupy/_core/include/cupy/_cccl/.gitattributes | 1 + cupy/_core/include/cupy/_cccl/cub/.gitattributes | 1 + cupy/_core/include/cupy/_cccl/thrust/.gitattributes | 1 + 3 files changed, 3 insertions(+) create mode 100644 cupy/_core/include/cupy/_cccl/.gitattributes create mode 100644 cupy/_core/include/cupy/_cccl/cub/.gitattributes create mode 100644 cupy/_core/include/cupy/_cccl/thrust/.gitattributes diff --git a/cupy/_core/include/cupy/_cccl/.gitattributes b/cupy/_core/include/cupy/_cccl/.gitattributes new file mode 100644 index 00000000000..02d4e6083f6 --- /dev/null +++ b/cupy/_core/include/cupy/_cccl/.gitattributes @@ -0,0 +1 @@ +libcudacxx symlink=dir diff --git a/cupy/_core/include/cupy/_cccl/cub/.gitattributes b/cupy/_core/include/cupy/_cccl/cub/.gitattributes new file mode 100644 index 00000000000..c6a031b401d --- /dev/null +++ b/cupy/_core/include/cupy/_cccl/cub/.gitattributes @@ -0,0 +1 @@ +cub symlink=dir diff --git a/cupy/_core/include/cupy/_cccl/thrust/.gitattributes b/cupy/_core/include/cupy/_cccl/thrust/.gitattributes new file mode 100644 index 00000000000..e8da73524ea --- /dev/null +++ b/cupy/_core/include/cupy/_cccl/thrust/.gitattributes @@ -0,0 +1 @@ +thrust symlink=dir From 9a3dec236165f61b88298318b6d4d64b5dd898fc Mon Sep 17 00:00:00 2001 From: Kenichi Maehashi Date: Thu, 19 Oct 2023 06:01:16 +0000 Subject: [PATCH 2/3] move platform check to preflight --- install/cupy_builder/_preflight.py | 4 ++++ install/cupy_builder/cupy_setup_build.py | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/install/cupy_builder/_preflight.py b/install/cupy_builder/_preflight.py index e0cb3f7075b..7e2ee0a9f9b 100644 --- a/install/cupy_builder/_preflight.py +++ b/install/cupy_builder/_preflight.py @@ -5,6 +5,10 @@ def preflight_check(ctx: Context) -> bool: + if sys.platform not in ('linux', 'win32'): + print('Error: macOS is no longer supported', file=sys.stderr) + return False + source_root = ctx.source_root is_git = os.path.isdir(os.path.join(source_root, '.git')) for submodule in ('third_party/cccl', diff --git a/install/cupy_builder/cupy_setup_build.py b/install/cupy_builder/cupy_setup_build.py index 3d65cf2eefb..2c28795aaff 100644 --- a/install/cupy_builder/cupy_setup_build.py +++ b/install/cupy_builder/cupy_setup_build.py @@ -392,8 +392,6 @@ def make_extensions(ctx: Context, compiler, use_cython): rpath.append( '{}{}/cupy/.data/lib'.format(_rpath_base(), '/..' * depth)) - if not PLATFORM_WIN32 and not PLATFORM_LINUX: - assert False, "macOS is no longer supported" if (PLATFORM_LINUX and len(rpath) != 0): ldflag = '-Wl,' if PLATFORM_LINUX: From a63377ffd03b6ee61d88e915ab4a8dc7e9111b60 Mon Sep 17 00:00:00 2001 From: Kenichi Maehashi Date: Thu, 19 Oct 2023 06:22:17 +0000 Subject: [PATCH 3/3] fix sdist to pass preflight check --- install/cupy_builder/_preflight.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/install/cupy_builder/_preflight.py b/install/cupy_builder/_preflight.py index 7e2ee0a9f9b..783fe82cf78 100644 --- a/install/cupy_builder/_preflight.py +++ b/install/cupy_builder/_preflight.py @@ -13,8 +13,15 @@ def preflight_check(ctx: Context) -> bool: is_git = os.path.isdir(os.path.join(source_root, '.git')) for submodule in ('third_party/cccl', 'cupy/_core/include/cupy/jitify'): - if 0 < len(os.listdir(os.path.join(source_root, submodule))): - continue + dirpath = os.path.join(source_root, submodule) + if os.path.isdir(dirpath): + if 0 < len(os.listdir(dirpath)): + continue + else: + if not is_git: + # sdist does not contain third_party directory + continue + if is_git: msg = f''' ===========================================================================