1*4882a593SmuzhiyunFrom 5f3911737c63a098caf73f1365320fe1b3a7638b Mon Sep 17 00:00:00 2001
2*4882a593SmuzhiyunFrom: Hongxu Jia <hongxu.jia@windriver.com>
3*4882a593SmuzhiyunDate: Thu, 21 Apr 2016 03:05:57 -0400
4*4882a593SmuzhiyunSubject: [PATCH] support cross-complication
5*4882a593Smuzhiyun
6*4882a593SmuzhiyunUpstream-Status: Inappropriate [oe specific]
7*4882a593Smuzhiyun
8*4882a593SmuzhiyunSigned-off-by: Hongxu Jia <hongxu.jia@windriver.com>
9*4882a593SmuzhiyunSigned-off-by: Leon Anavi <leon.anavi@konsulko.com>
10*4882a593Smuzhiyun---
11*4882a593Smuzhiyun setup.py | 35 -----------------------------------
12*4882a593Smuzhiyun 1 file changed, 35 deletions(-)
13*4882a593Smuzhiyun
14*4882a593Smuzhiyundiff --git a/setup.py b/setup.py
15*4882a593Smuzhiyunindex eb83cfe..3f9567b 100755
16*4882a593Smuzhiyun--- a/setup.py
17*4882a593Smuzhiyun+++ b/setup.py
18*4882a593Smuzhiyun@@ -13,41 +13,6 @@ import sys
19*4882a593Smuzhiyun # - Need gcc
20*4882a593Smuzhiyun # - Need C headers
21*4882a593Smuzhiyun # - Need libcap headers
22*4882a593Smuzhiyun-if not sys.platform.startswith('linux'):
23*4882a593Smuzhiyun-    sys.stderr.write("This module only works on linux\n")
24*4882a593Smuzhiyun-    sys.exit(1)
25*4882a593Smuzhiyun-
26*4882a593Smuzhiyun-kvers = os.uname()[2]
27*4882a593Smuzhiyun-if kvers < '2.6.18' and not os.environ.get("PRCTL_SKIP_KERNEL_CHECK",False):
28*4882a593Smuzhiyun-    sys.stderr.write("This module requires linux 2.6.18 or newer\n")
29*4882a593Smuzhiyun-    sys.exit(1)
30*4882a593Smuzhiyun-
31*4882a593Smuzhiyun-if sys.version_info[:2] < (2,4):
32*4882a593Smuzhiyun-    sys.stderr.write("This module requires python 2.4 or newer\n")
33*4882a593Smuzhiyun-    sys.exit(1)
34*4882a593Smuzhiyun-
35*4882a593Smuzhiyun-exit = False
36*4882a593Smuzhiyun-try:
37*4882a593Smuzhiyun-    subprocess.call(['gcc','-v'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
38*4882a593Smuzhiyun-except:
39*4882a593Smuzhiyun-    sys.stderr.write("You need to install gcc to build this module\n")
40*4882a593Smuzhiyun-    sys.exit(1)
41*4882a593Smuzhiyun-
42*4882a593Smuzhiyun-sp = subprocess.Popen(['cpp'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=os.environ)
43*4882a593Smuzhiyun-sp.communicate('#include <sys/prctl.h>\n'.encode())
44*4882a593Smuzhiyun-if sp.returncode:
45*4882a593Smuzhiyun-    sys.stderr.write("You need to install libc development headers to build this module\n")
46*4882a593Smuzhiyun-    exit = True
47*4882a593Smuzhiyun-
48*4882a593Smuzhiyun-sp = subprocess.Popen(['cpp'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=os.environ)
49*4882a593Smuzhiyun-sp.communicate('#include <sys/capability.h>\n'.encode())
50*4882a593Smuzhiyun-if sp.returncode:
51*4882a593Smuzhiyun-    sys.stderr.write("You need to install libcap development headers to build this module\n")
52*4882a593Smuzhiyun-    exit = True
53*4882a593Smuzhiyun-
54*4882a593Smuzhiyun-if exit:
55*4882a593Smuzhiyun-    sys.exit(1)
56*4882a593Smuzhiyun-
57*4882a593Smuzhiyun _prctl = Extension("_prctl",
58*4882a593Smuzhiyun                    sources = ['_prctlmodule.c'],
59*4882a593Smuzhiyun                    depends = ['securebits.h'],
60*4882a593Smuzhiyun--
61*4882a593Smuzhiyun2.17.1
62*4882a593Smuzhiyun
63