forked from pool/uwsgi
incompatibility problem to enable build with GCC 14. If the request is OK, please forward it to Factory soon too so that we can switch the default compiler. Thanks! OBS-URL: https://build.opensuse.org/package/show/server:http/uwsgi?expand=0&rev=129
48 lines
3.0 KiB
Diff
48 lines
3.0 KiB
Diff
--- a/uwsgiconfig.py
|
|
+++ b/uwsgiconfig.py
|
|
@@ -535,7 +535,7 @@ def build_uwsgi(uc, print_only=False, gc
|
|
gcc_list.append('%s/%s' % (path, cfile))
|
|
for bfile in up.get('BINARY_LIST', []):
|
|
try:
|
|
- binary_link_cmd = "ld -r -b binary -o %s/%s.o %s/%s" % (path, bfile[1], path, bfile[1])
|
|
+ binary_link_cmd = "ld -z noexecstack -r -b binary -o %s/%s.o %s/%s" % (path, bfile[1], path, bfile[1])
|
|
print(binary_link_cmd)
|
|
if subprocess.call(binary_link_cmd, shell=True) != 0:
|
|
raise Exception('unable to link binary file')
|
|
@@ -1150,7 +1150,7 @@ class uConf(object):
|
|
if not self.embed_config:
|
|
self.embed_config = self.get('embed_config')
|
|
if self.embed_config:
|
|
- binary_link_cmd = "ld -r -b binary -o %s.o %s" % (binarize(self.embed_config), self.embed_config)
|
|
+ binary_link_cmd = "ld -z noexecstack -r -b binary -o %s.o %s" % (binarize(self.embed_config), self.embed_config)
|
|
print(binary_link_cmd)
|
|
subprocess.call(binary_link_cmd, shell=True)
|
|
self.cflags.append("-DUWSGI_EMBED_CONFIG=_binary_%s_start" % binarize(self.embed_config))
|
|
@@ -1169,7 +1169,7 @@ class uConf(object):
|
|
for directory, directories, files in os.walk(ef):
|
|
for f in files:
|
|
fname = "%s/%s" % (directory, f)
|
|
- binary_link_cmd = "ld -r -b binary -o %s.o %s" % (binarize(fname), fname)
|
|
+ binary_link_cmd = "ld -z noexecstack -r -b binary -o %s.o %s" % (binarize(fname), fname)
|
|
print(binary_link_cmd)
|
|
subprocess.call(binary_link_cmd, shell=True)
|
|
if symbase:
|
|
@@ -1179,7 +1179,7 @@ class uConf(object):
|
|
subprocess.call(objcopy_cmd, shell=True)
|
|
binary_list.append(binarize(fname))
|
|
else:
|
|
- binary_link_cmd = "ld -r -b binary -o %s.o %s" % (binarize(ef), ef)
|
|
+ binary_link_cmd = "ld -z noexecstack -r -b binary -o %s.o %s" % (binarize(ef), ef)
|
|
print(binary_link_cmd)
|
|
subprocess.call(binary_link_cmd, shell=True)
|
|
binary_list.append(binarize(ef))
|
|
@@ -1464,7 +1464,7 @@ def build_plugin(path, uc, cflags, ldfla
|
|
gcc_list.append(path + '/' + cfile)
|
|
for bfile in up.get('BINARY_LIST', []):
|
|
try:
|
|
- binary_link_cmd = "ld -r -b binary -o %s/%s.o %s/%s" % (path, bfile[1], path, bfile[1])
|
|
+ binary_link_cmd = "ld -z noexecstack -r -b binary -o %s/%s.o %s/%s" % (path, bfile[1], path, bfile[1])
|
|
print(binary_link_cmd)
|
|
if subprocess.call(binary_link_cmd, shell=True) != 0:
|
|
raise Exception('unable to link binary file')
|