Skip to content

Commit af63ea8

Browse files
authored
Merge pull request #31577 from akyrtzi/build-parser-lib-fixes
[utils/build-parser-lib] Fixes for building the parser library
2 parents cc8ecf4 + 7600043 commit af63ea8

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

utils/build-parser-lib

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ class Builder(object):
234234
"-DSWIFT_BUILD_DYNAMIC_SDK_OVERLAY=FALSE",
235235
"-DSWIFT_BUILD_STATIC_SDK_OVERLAY=FALSE",
236236
]
237-
cmake_args += ["-DLLVM_ENABLE_LIBXML2=FALSE"]
237+
cmake_args += ["-DLLVM_ENABLE_LIBXML2=FALSE", "-DLLVM_ENABLE_LIBEDIT=FALSE"]
238238
# We are not using cmark but initialize the CMARK variables to something so
239239
# that configure can succeed.
240240
cmake_args += [
@@ -246,7 +246,7 @@ class Builder(object):
246246
"-DCLANG_INCLUDE_TESTS=FALSE",
247247
"-DSWIFT_INCLUDE_TESTS=FALSE",
248248
]
249-
cmake_args += [os.path.join(SWIFT_SOURCE_ROOT, "llvm")]
249+
cmake_args += [os.path.join(SWIFT_SOURCE_ROOT, "llvm-project", "llvm")]
250250
self.call(cmake_args)
251251

252252
def build_target(self, build_dir, target, env=None):
@@ -449,6 +449,17 @@ def main():
449449
if not args.install_destdir:
450450
args.install_destdir = os.path.join(args.build_dir, "install")
451451

452+
swift_src_path = os.path.join(SWIFT_SOURCE_ROOT, "swift")
453+
swift_src_in_llvm_project_path = \
454+
os.path.join(SWIFT_SOURCE_ROOT, "llvm-project", "swift")
455+
# Need to symlink 'swift' into 'llvm-project' since we will be doing
456+
# a unified configure with 'swift' as an external project.
457+
if not os.path.exists(swift_src_in_llvm_project_path):
458+
print("Symlinking '%s' to '%s'" %
459+
(swift_src_path, swift_src_in_llvm_project_path), file=sys.stderr)
460+
shell.symlink(swift_src_path, swift_src_in_llvm_project_path,
461+
dry_run=args.dry_run, echo=args.verbose)
462+
452463
architectures = args.architectures.split(" ")
453464
architectures = [arch for arch in architectures if arch != ""]
454465
if platform.machine() in architectures:

utils/swift_build_support/swift_build_support/shell.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,15 @@ def copytree(src, dest, dry_run=None, echo=True):
195195
shutil.copytree(src, dest)
196196

197197

198+
def symlink(source, dest, dry_run=None, echo=True):
199+
dry_run = _coerce_dry_run(dry_run)
200+
if dry_run or echo:
201+
_echo_command(dry_run, ['ln', '-s', source, dest])
202+
if dry_run:
203+
return
204+
os.symlink(source, dest)
205+
206+
198207
# Initialized later
199208
lock = None
200209

0 commit comments

Comments
 (0)