diff --git a/long_gcc.py b/long_gcc.py deleted file mode 100644 index 1ec49c4c3c..0000000000 --- a/long_gcc.py +++ /dev/null @@ -1,45 +0,0 @@ -#! /usr/bin/env python3 -# encoding: utf-8 - -""" -def build(bld): - bld.load('long_gcc') -""" - -import os, tempfile -from waflib import Task - -def exec_command(self, cmd, **kw): - # workaround for command line length limit: - # http://support.microsoft.com/kb/830473 - tmp = None - try: - if not isinstance(cmd, str) and len(str(cmd)) > 8192: - (fd, tmp) = tempfile.mkstemp(dir=self.generator.bld.bldnode.abspath()) - flat = ['"%s"' % x.replace('\\', '\\\\').replace('"', '\\"') for x in cmd[1:]] - try: - os.write(fd, ' '.join(flat).encode()) - finally: - if tmp: - os.close(fd) - # Line may be very long: - # Logs.debug('runner:' + ' '.join(flat)) - cmd = [cmd[0], '@' + tmp] - ret = super(self.__class__, self).exec_command(cmd, **kw) - finally: - if tmp: - os.remove(tmp) - return ret - -def wrap_class(class_name): - cls = Task.classes.get(class_name) - if not cls: - return None - derived_class = type(class_name, (cls,), {}) - derived_class.exec_command = exec_command - if hasattr(cls, 'hcode'): - derived_class.hcode = cls.hcode - return derived_class - -for k in 'c cxx cprogram cxxprogram cshlib cxxshlib cstlib cxxstlib'.split(): - wrap_class(k) diff --git a/wscript b/wscript index d137cc0fec..aa1168754f 100755 --- a/wscript +++ b/wscript @@ -1582,11 +1582,6 @@ def append_variant_builds(bld): waflib.Options.commands.append(bld.cmd + "_" + var) -def long_command_line_workaround(bld): - if is_windows_host: - bld.load("long_gcc") - - def build(bld): if not bld.variant: check_forbidden_options( @@ -1596,7 +1591,6 @@ def build(bld): load_items(bld, bld.env.SPECS) append_variant_builds(bld) return - long_command_line_workaround(bld) bic = BuildItemContext(bld.env.ARCH_INCLUDES.split(), [], [], [], [], [], []) bsps[bld.env.ARCH][bld.env.BSP_BASE].build(bld, bic)