File: lib-copy-destination.patch

package info (click to toggle)
wxpython4.0 4.0.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 211,112 kB
  • sloc: cpp: 888,355; python: 223,130; makefile: 52,087; ansic: 45,780; sh: 3,012; xml: 1,534; perl: 264
file content (50 lines) | stat: -rw-r--r-- 1,695 bytes parent folder | download
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
From 01d8e9c0a5aea138dd1d5999a5a808e09e8c9eb1 Mon Sep 17 00:00:00 2001
From: Scott Talbert <swt@techie.net>
Date: Thu, 1 Feb 2018 19:52:37 -0500
Subject: [PATCH] Copy shared libraries to build/lib dir instead of wx

This enables better support for building python2 and python3 versions in the
same directory.
---
 wscript | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/wscript b/wscript
index d051ebbc..b6604ada 100644
--- a/wscript
+++ b/wscript
@@ -586,12 +586,15 @@ def makeExtCopyRule(bld, name):
 
 # This is the task function to be called by the above rule.
 def copyFileToPkg(task):
+    from distutils.dir_util  import mkpath
     from distutils.file_util import copy_file
     from buildtools.config   import opj
     src = task.inputs[0].abspath()
     tgt = task.outputs[0].abspath()
     open(tgt, "wb").close() # essentially just a unix 'touch' command
-    tgt = opj(cfg.PKGDIR, os.path.basename(src))
+    tgtdir = opj(getBuildLibDir(), cfg.PKGDIR)
+    mkpath(tgtdir)
+    tgt = opj(tgtdir, os.path.basename(src))
     copy_file(src, tgt, verbose=1)
     if isWindows and task.env.msvc_relwithdebug:
         # also copy the .pdb file
@@ -601,6 +604,14 @@ def copyFileToPkg(task):
     return 0
 
 
+def getBuildLibDir():
+    import sysconfig
+    from buildtools.config import opj
+    f = "lib.{platform}-{version[0]}.{version[1]}"
+    libdir = f.format(platform=sysconfig.get_platform(),
+                      version=sys.version_info)
+    return opj('build', libdir)
+
 # Copy all the items in env with a matching postfix to a similarly
 # named item with the dest postfix.
 def _copyEnvGroup(env, srcPostfix, destPostfix):
-- 
2.14.3