Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Introduce Clang, GCC, and Binutils to form a native toolchain
This is the first instance in Pants of selectively instantiating a subsystem based on the platform Pants is being invoked on, because gnu binutils (or at least, ld) doesn't support OSX. The XCode cli tools will be relied on instead for linking (more work needed here on effective error messages). Create by squashing 119 commits, most of which had been merged into master: many of these commits were merged with the first python_dist PR, or the PR that introduced the "LLVM" subsystem (now named "Clang"). Squashed commit of the following: commit 9ae7284 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Mar 21 15:03:38 2018 -0700 add some more comments to explain what i'm thinking commit 8d48d0a Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Mar 21 14:52:07 2018 -0700 some mild refactoring and more documentation commit 29e9622 Merge: ba727b7 a5410b6 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Mar 21 12:52:28 2018 -0700 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit ba727b7 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Mar 20 02:10:40 2018 -0700 gcc is linux specific again (but only for a little bit) commit aaae18c Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Mar 16 15:26:48 2018 -0700 correct gcc to non-platform specific, but remove from osx for now commit dfe7340 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Mar 16 14:38:39 2018 -0700 add platform-specific native toolchain and use to build python dists commit f06c83f Merge: f22dfca f9ee6fd Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Mar 16 12:20:11 2018 -0700 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit f22dfca Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Mar 7 16:27:59 2018 -0800 add fixme commit 7d76e70 Merge: a35256d d77483e Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Mar 2 15:47:08 2018 -0800 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit a35256d Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Mar 1 11:51:29 2018 -0800 update name of `compiler` package to `clang` commit 529324e Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 22 12:07:52 2018 -0800 fix lint errors commit 7763e5d Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 22 11:46:58 2018 -0800 rename LLVM -> Compiler commit 91e1353 Merge: 6a68876 1ed1fdb Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 22 11:28:16 2018 -0800 Merge branch 'dmcclanahan/python-dist-c++-sources' of github.com:cosmicexplorer/pants into dmcclanahan/python-dist-c++-sources commit 6a68876 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 21 11:45:30 2018 -0800 refactor out unnecessary interpreter wrapper to use a contextmanager commit 1ed1fdb Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 21 11:45:30 2018 -0800 refactor out unnecessary interpreter wrapper to use a contextmanager commit 41a1a9a Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 20 14:17:23 2018 -0800 revert unnecessary python_dist changes commit 1cfd60a Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 20 14:12:44 2018 -0800 make final simplifications commit a4ebbbd Merge: 7783678 71a33d6 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 20 13:57:19 2018 -0800 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit 7783678 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 20 13:45:38 2018 -0800 remove more implementation artifacts commit 88851f1 Merge: c7c90b2 c014e8d Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 20 10:44:14 2018 -0800 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit c7c90b2 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Feb 16 07:20:37 2018 -0800 refactor unnecessary complexity commit 35899ee Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 15 05:47:49 2018 -0800 try to understand what makes the breaking change commit d9fc2c4 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 14 13:55:02 2018 -0800 remove comments in sandboxed_interpreter.py commit ceae8bb Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 14 13:51:46 2018 -0800 slim down the pull request quite a bit commit 48d7a93 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 14 13:27:13 2018 -0800 rewrite BinaryTool a little and remove native toolchain subsystem commit cfe5c86 Merge: b1d39ec f55260a Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Feb 14 08:34:39 2018 -0800 Merge branch 'master' of github.com:pantsbuild/pants into dmcclanahan/python-dist-c++-sources commit b1d39ec Merge: 55dbd7e 7cdea9a Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Tue Feb 13 11:54:50 2018 -0800 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit 55dbd7e Author: Danny McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Mon Feb 12 19:08:59 2018 -0800 suddenly, with very few changes, everything "just works"! commit 608769e Merge: badd80f 569f14c Author: Danny McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Mon Feb 12 19:05:19 2018 -0800 Merge branch 'master' into dmcclanahan/python-dist-c++-sources commit badd80f Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Mon Feb 5 16:09:46 2018 -0800 add llvm distribution support, not just clang commit 0ac2bbe Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Feb 2 16:33:37 2018 -0800 remove source copying contextmanager and set clang arch for setup.py commit 6c52529 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Feb 2 12:16:55 2018 -0800 try cpp module sources and comment out future work commit f33677b Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Fri Feb 2 11:39:58 2018 -0800 add some more context, leave everything in an inconsistent state commit 5a6ad48 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 1 12:07:56 2018 -0800 plumb in a native toolchain subsystem commit 5ed218e Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Thu Feb 1 11:11:10 2018 -0800 use a contextmanager to copy source files and edit PYTHONPATH commit 3155138 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Jan 31 20:47:16 2018 -0800 now we can declare cpp_sources in python_dist targets! commit 2591288 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Jan 31 03:17:57 2018 -0800 cut off work for now commit 629ff46 Author: Daniel McClanahan <1305167+cosmicexplorer@users.noreply.github.com> Date: Wed Jan 31 01:02:38 2018 -0800 clean up PythonDistribution and add c_sources field commit 9e3d2ca Author: Chris Livingston <clivingston@twitter.com> Date: Tue Jan 30 14:36:45 2018 -0800 Remove mod to travis yml commit 1a04e80 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Jan 30 13:13:37 2018 -0800 Rebase with master commit b4d367c Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 24 17:59:30 2018 -0800 Rename superhello to fasthello commit 59164c1 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 24 15:26:03 2018 -0800 Add remove command to travis.yml to remove problematic file from failing CI target commit 8ac832b Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 24 13:00:12 2018 -0800 Add clean-all statements to integration tests to gauge flakiness commit a787717 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 24 10:39:22 2018 -0800 Slightly modify test assertion for conflicting deps test commit 0b82067 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Jan 23 15:02:47 2018 -0800 Resolve merge conflicts from removal of tasks2 commit 7f757c0 Author: Chris Livingston <clivingston@twitter.com> Date: Mon Jan 22 12:28:18 2018 -0800 Disallow dependencies on a python_dist target commit 3024a34 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Jan 19 11:17:45 2018 -0800 Add xfail test to testprojects tests commit eb8598d Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 18 17:26:24 2018 -0800 Fix lint commit 654c20e Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 18 14:13:42 2018 -0800 Remove unused import commit 22b72f0 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 18 11:39:49 2018 -0800 Remove add_labels from PythonDistribution object commit a4150d0 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 17 19:17:59 2018 -0800 Remove duplicate functions to enforce DRY commit 178bcbd Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 17 14:21:47 2018 -0800 Fix issues with CI and failing testprojects target commit cae065c Author: Chris Livingston <clivingston@twitter.com> Date: Mon Jan 15 23:44:32 2018 -0800 Add integration tests for targets that conflict with transitive deps listed in the install_requires field of a python distribution's setup.py commit ffae43d Author: Chris Livingston <clivingston@twitter.com> Date: Mon Jan 15 22:36:45 2018 -0800 Remove crufty files commit c6edc08 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Jan 12 17:23:46 2018 -0800 remove unneeded dependency test commit 2925530 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Jan 12 17:21:33 2018 -0800 Edge case impl for same setup.py package name/version as a binary dep commit fe8dd55 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 11 22:36:45 2018 -0800 Simplify a few lines, add check for ambiguous python dists, and fix copyright date commit aabf88f Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 11 18:35:34 2018 -0800 Update TODO github issue link commit a6377e4 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Jan 11 16:36:12 2018 -0800 Remove tests that break testprojects integration testing commit d41e7ee Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 10 16:29:25 2018 -0800 Remove unnecessary targets from BUILD file in superhello_testproject commit 4fd1567 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 10 14:44:23 2018 -0800 Cleanup integration test and move superhello test project to examples/tests due to test breakage when placed in testprojects commit e8f6b98 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Jan 10 11:59:32 2018 -0800 Fix multiple binary target case and add integration test commit 9e0b2d6 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Jan 9 15:57:03 2018 -0800 Add TODO with github link for package conflict case in python dist backend commit a2116c4 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Jan 9 15:20:25 2018 -0800 Remove cruft commit 03bc4c0 Author: Chris Livingston <clivingston@twitter.com> Date: Mon Jan 8 16:15:21 2018 -0800 Remove unneccessary checks for invalid targets and streamline method signatures commit 4e9bb6b Author: Chris Livingston <clivingston@twitter.com> Date: Fri Jan 5 18:24:44 2018 -0800 Fix install directory clobbering and setup.py positioning commit f1ed6da Author: Chris Livingston <clivingston@twitter.com> Date: Fri Jan 5 18:23:02 2018 -0800 Fix install directory clobbering and setup.py positioning commit be2583a Author: Lionel Vital <lvital@twitter.com> Date: Fri Jan 5 17:48:46 2018 -0800 Addresses a few changes commit 022b1e7 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 21 16:50:35 2017 -0800 Add rjiang suggestion for counting setup.py files commit e2bf445 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 21 15:16:35 2017 -0800 Clean up comments, docstrings, and fix broken testprojects integration tests commit 3e1739f Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 21 12:42:23 2017 -0800 Fix merge conflict commit 365e708 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 21 12:30:08 2017 -0800 Style fixes and cruftslaying per rjiang's comments commit 5f4e07c Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 21 12:10:02 2017 -0800 Add detection of multiple setup.py files and throw an error. commit 056e267 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Dec 20 17:50:17 2017 -0800 Add integration testing and simple unit test for python create distributions task. Also cleanup code to DRY by creating util helper method and streamline invalid python dist target detection. commit 401a10d Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 19 18:12:14 2017 -0800 Working goals using invalidated blocks commit 53a1355 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 19 16:40:56 2017 -0800 Solid working state based off of vt.results dir caching commit dacd672 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 19 15:57:37 2017 -0800 Working caching under vt.results dir. Moving to tests. commit edf110d Author: Lionel Vital <lvital@twitter.com> Date: Tue Dec 19 14:58:12 2017 -0800 More cleanup + move stuff in task execution under invalidated commit 8c7b658 Author: Lionel Vital <lvital@twitter.com> Date: Fri Dec 15 15:43:56 2017 -0800 Easy nits and whitespace issues commit 31d3a91 Author: Lionel Vital <lvital@twitter.com> Date: Fri Dec 15 14:14:19 2017 -0800 Another whitespace error commit 177c379 Author: Lionel Vital <lvital@twitter.com> Date: Fri Dec 15 12:32:06 2017 -0800 Whitespace lint fixes and unused import commit 7b8e8be Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 14 17:43:54 2017 -0800 Remove unused imports created from refactor commit 51e9c64 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 14 14:44:11 2017 -0800 Remove unused imports and add guard from consuming python dist products commit 59ff560 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Dec 13 16:52:16 2017 -0800 Add guard statement for case where pants test run does not require data from PythonCreateDistributions task. commit fb1c903 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Dec 13 14:27:04 2017 -0800 Fix minor BUILD file error to pass CI commit 23f6999 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 12 16:37:39 2017 -0800 Working distribution create task and integration for pants run/binary/test commit 314ecfb Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 12 16:05:10 2017 -0800 pants test example commit a859f46 Author: Chris Livingston <clivingston@twitter.com> Date: Mon Dec 11 18:07:08 2017 -0800 Remove cruft commit 6881a72 Author: Chris Livingston <clivingston@twitter.com> Date: Mon Dec 11 18:01:16 2017 -0800 Revert pants run mods and fix bug in pex build util commit 1c981f7 Author: Lionel Vital <lvital@twitter.com> Date: Mon Dec 11 17:36:58 2017 -0800 Run/test commit 8436dad Author: Lionel Vital <lvital@twitter.com> Date: Mon Dec 11 17:14:20 2017 -0800 More cleanup of docs commit b6fa385 Author: Lionel Vital <lvital@twitter.com> Date: Mon Dec 11 16:48:33 2017 -0800 Minor cleanup + rename alias to be standard commit 4b64f2d Author: Chris Livingston <clivingston@twitter.com> Date: Fri Dec 8 16:08:53 2017 -0800 Further iteration on python distribution task, now functioning for python binary create commit 76aeda2 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Dec 8 15:20:34 2017 -0800 Working distribution creation task commit 7823d2a Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 7 17:37:24 2017 -0800 Progress on pex_build_util commit e4c0556 Author: Chris Livingston <clivingston@twitter.com> Date: Thu Dec 7 10:02:26 2017 -0800 Install Python Dist create task commit 4b65461 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 5 17:51:57 2017 -0800 Debug session 1 commit c340abf Author: Chris Livingston <clivingston@twitter.com> Date: Tue Dec 5 17:22:32 2017 -0800 Create python distribution task and refactor example commit 9bb228f Author: Lionel Vital <lvital@twitter.com> Date: Mon Dec 4 16:05:01 2017 -0800 PythonDistribution -> inherit Target instead of PythonTarget commit 7297096 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Dec 1 12:41:17 2017 -0800 First pass at kwlzn change suggestions commit e2f84cc Author: Chris Livingston <clivingston@twitter.com> Date: Wed Nov 29 10:38:58 2017 -0800 Add python_distribution to backend/targets build file commit 194452b Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 28 16:50:14 2017 -0800 pants run task implementation - first pass commit 6585142 Author: Lionel Vital <lvital@twitter.com> Date: Tue Nov 28 16:11:15 2017 -0800 First stab at run task commit 0ae435e Author: Lionel Vital <lvital@twitter.com> Date: Tue Nov 28 15:37:57 2017 -0800 Remove excess __init__.py files commit 1940c53 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 28 15:22:47 2017 -0800 Clean up misc style issues and delete unnecessary file. commit 9cd32a4 Author: Lionel Vital <lvital@twitter.com> Date: Tue Nov 28 12:59:37 2017 -0800 Clean up + add some docs commit c8a954e Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 28 12:16:26 2017 -0800 Add cleanup of egg-info in pex build util commit 83be228 Author: Chris Livingston <clivingston@twitter.com> Date: Fri Nov 24 10:32:26 2017 -0800 Add tensorflow dependency example to superhello; this puts ./pants binary on main:main in a good state for a workable demo commit 74bfb8c Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 16:45:55 2017 -0800 Finalized initial approach at packaging wheels w/ c sources into a pex commit 4e2b1b9 Author: Lionel Vital <lvital@twitter.com> Date: Tue Nov 21 15:02:05 2017 -0800 Minor cleanup commit dd99194 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 14:43:19 2017 -0800 Working superhello project equivalent to backends/tensorflow commit 5837f30 Author: Lionel Vital <lvital@twitter.com> Date: Tue Nov 21 14:27:00 2017 -0800 Modify example to use superhello commit 4f9bc98 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 13:51:52 2017 -0800 Working python dist example commit cd32058 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 12:22:23 2017 -0800 Changes to python binary creation + add new target definition commit 3aa0fe4 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 12:19:55 2017 -0800 Changes to hello2 package commit 46eab74 Author: Chris Livingston <clivingston@twitter.com> Date: Tue Nov 21 12:19:22 2017 -0800 Working package example for hello2 commit ca86bf6 Author: Chris Livingston <clivingston@twitter.com> Date: Wed Nov 15 13:01:29 2017 -0800 First pass at distribution task and target commit 3ec11c2 Author: Lionel Vital <lvital@twitter.com> Date: Thu Nov 9 23:27:59 2017 -0800 Python_distribution example
- Loading branch information