HomePhabricator

Fixes for builds that require strict X/Open and POSIX compatiblity
9e28ecc634bcUnpublished

Authored by xingxue on May 16 2019, 7:02 AM.

Unpublished Commit · Learn More

Not On Permanent Ref: This commit is not an ancestor of any permanent ref.

Description

Fixes for builds that require strict X/Open and POSIX compatiblity

Summary:

  • Use alternative to MAP_ANONYMOUS for allocating mapped memory if it isn't available
  • Use strtok_r instead of strsep as part of getting program path
  • Don't try to find the width of a terminal using "struct winsize" and TIOCGWINSZ on POSIX builds. These aren't defined under POSIX (even though some platforms make them available when they shouldn't), so just check if we are doing a X/Open or POSIX compliant build first.

Author: daltenty

Reviewers: hubert.reinterpretcast, xingxue, andusy

Reviewed By: hubert.reinterpretcast

Subscribers: MaskRay, jsji, hiraditya, kristina, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61326

llvm-svn: 360898