Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jan 2, 2021. It is now read-only.

Xcode-compatible build tool.

License

NotificationsYou must be signed in to change notification settings

facebookarchive/xcbuild

Repository files navigation

xcbuild is an Xcode-compatible build tool with the goal of providing faster builds, better documentation of the build process and running on multiple platforms (macOS, Linux, and Windows)

Why xcbuild?

FeaturesPerformance
🚀Blazing fast incremental buildsxcodebuildxcbuild + Ninja
📖Documents the Xcode build process
🔗Builds Xcode projects and workspaces
🐣Supports Swift apps and frameworksClean Build30.103s25.122s
Tools and libraries for Xcode projects
💝Fully compatible withxcpretty
🎩UsesNinja andllbuildIncremental Build2.190s0.046s ⚡
:octocat:Open source under the BSD license
🐧Builds on Linux and Windows

xcbuild and other build tools

xctoolBuckxcpretty
xcbuild andxctool are both Xcode-compatible build systems. We plan on slowly deprecating xctool's build support but keep it as a great way to run tests.Facebook's main build system isBuck. Buck has a stronger architecture and advanced features like artifact caching while having a much simpler build format. If you have a new project, it's highly recommended.xcbuild works great withxcpretty. Pipe the output from xcbuild to xcpretty the same way as you would fromxcodebuild.

Building xcbuild

Build Status

Requirements

All platforms

On macOS you can install those tools withHomebrew:brew install cmake ninja.

On Windows you can install those tools withChocolatey:choco install cmake ninja.

Linux

Ubuntu 18.04

sudo apt install libpng-dev libpng16-16 libxml2-dev pkg-config ninja-build

All others
  • GCC 4.8 or later.libpng16-dev,zlib1g-dev,libxml2-dev, andpkg-config are also required.

FreeBSD

FreeBSD 12.1

pkg install png-1.6.37 libxml2-2.9.9 pkgconf-1.6.3,1 ninja-1.9.0,2 gmake-4.2.1_3

OpenBSD

OpenBSD 6.6

pkg_add png-1.6.37 libxml-2.9.9 pkgconf-1.6.3 ninja-1.9.0 gmake-4.2.1p4

macOS

  • Xcode 7 or later.

Windows

  • Visual Studio 2015 or later, on Windows. Azlib DLL is also required.

Instructions

All platforms

git clone --depth=1 https://github.com/facebook/xcbuildcd xcbuildgit submodule update --init

Linux and macOS:

make

FreeBSD and OpenBSD:

gmake

Build output will be in thebuild directory. Run xcbuild with./build/xcbuild.

You can place xcbuild in yourbin directory to run it from other locations:mv build/xcbuild /usr/local/bin/.

Windows (experimental):

cmake -Bbuild -H. -G"Visual Studio 14 2015" -DZLIB_ROOT=<path>

Openbuild\xcbuild.sln and build.

Usage

The command line options are compatible withxcodebuild.

xcbuild -workspace Example.xcworkspace -scheme Example

Using Ninja (or llbuild)

To switch to the significantly fasterNinja executor:

xcbuild -executor ninja [-workspace Example.xcworkspace ...]

Besides the-executor ninja parameters, the options are otherwise identical. The Ninja executor is fastest if it can avoid re-generating the Ninja files if the build configuration and input project files do not change.

Contributing

xcbuild actively welcomes contributions from the community. If you're interested in contributing, be sure to check out thecontributing guide. It includes some tips for getting started in the codebase, as well as important information about the code of conduct, license, and CLA.

Thanks

xcbuild is built on build system documentation from the community. In particular, thanks to these people for their writing:

Third-party licenses are listed in theLICENSE document.

About

Xcode-compatible build tool.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors24


[8]ページ先頭

©2009-2025 Movatter.jp