Commit Graph

526 Commits

Author SHA1 Message Date
svcscm
ebba323fcc Updating submodules
Reviewed By: yns88

fbshipit-source-id: 776b0dda3929e5b66a716ce37ccb2e7c3d7e5bd3
2019-08-30 10:48:03 -07:00
svcscm
9ce1e6b2fc Updating submodules
Reviewed By: yns88

fbshipit-source-id: ebf75b38d338867af7d01545de29450c0cc70635
2019-08-29 23:46:18 -07:00
svcscm
b5d54405e9 Updating submodules
Reviewed By: yns88

fbshipit-source-id: b6219f97186fbcede08240945f8af6125fcf8b3c
2019-08-29 23:23:30 -07:00
svcscm
b3376b951c Updating submodules
Reviewed By: yns88

fbshipit-source-id: 80ff1036a0aa582e069a4699b6ba09b749ecdba7
2019-08-29 22:45:32 -07:00
Adam Simpkins
2fd1d16ba9 fbcode_builder: add a FBThriftLibrary.cmake file
Summary:
This module provides a `add_fbthrift_library()` convenience function that can
be used to generate thrift libraries for multiple languages with a single
call.

Reviewed By: wez

Differential Revision: D16742275

fbshipit-source-id: c13120cf9e051629951282141eb22f3e085782f9
2019-08-29 22:05:44 -07:00
Adam Simpkins
ea8f788011 fbcode_builder: add an FBThriftPyLibrary.cmake module
Summary:
This module helps generate Python libraries from thrift files.
It is the Python equivalent of `FBThriftCppLibrary.cmake`

Reviewed By: wez

Differential Revision: D16742274

fbshipit-source-id: ef0dc7f24eb1c7375d2587ee6b71fd25bd6f35a7
2019-08-29 22:05:44 -07:00
svcscm
c8fbf55018 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 410e8d7912cfd70a8857244f322d81c26cb7b8fd
2019-08-29 22:05:44 -07:00
svcscm
b772f483b8 Updating submodules
Reviewed By: yns88

fbshipit-source-id: bc29befbd71ea2ff38da0857b66c6002fa4581db
2019-08-29 20:47:26 -07:00
Adam Simpkins
aa1aefa0f2 fbcode_builder: fix a minor bug in THRIFT_INCLUDE_DIR argument parsing
Summary:
Fix a minor bug in the argument parsing for `add_fbthrift_cpp_library()`:
only a single value should be supplied for the `THRIFT_INCLUDE_DIR` argument.
This parameter should not accept a list of arguments.

Reviewed By: strager

Differential Revision: D17125810

fbshipit-source-id: 31f354e4d6299d3626a94f3b4b5ff8c58bb0cf7b
2019-08-29 20:12:04 -07:00
svcscm
8e4bb3e91d Updating submodules
Reviewed By: yns88

fbshipit-source-id: 4f72e2374d87645e3cfe3fbf7b3e3acbeb645b5f
2019-08-29 20:12:04 -07:00
svcscm
14b94fd93f Updating submodules
Reviewed By: yns88

fbshipit-source-id: 5b970f18df38fb4b700e42db06349ab64e8d1331
2019-08-29 17:11:00 -07:00
Adam Simpkins
6b5f79c0d2 fbcode_builder: rename add_thrift_cpp2_library() to add_fbthrift_cpp_library()
Summary:
Rename the `ThriftCppLibrary.cmake` file to `FBThriftCppLibrary.cmake`, and
also rename `add_thrift_cpp2_library()` to `add_fbthrift_cpp_library()`.

Explicitly calling this `fbthrift` helps clearly distinguish that this is
intended for use with fbthrift (https://github.com/facebook/fbthrift/), as
opposed to Apache thrift.

Reviewed By: wez

Differential Revision: D16738440

fbshipit-source-id: 9b255e06b71c98ad74a34989f564a211958dcdd5
2019-08-29 16:45:12 -07:00
svcscm
770c67d8b8 Updating submodules
Reviewed By: yns88

fbshipit-source-id: ee63fb227f1761192ca89657e7db9c843bb40635
2019-08-29 16:45:12 -07:00
svcscm
e8657686ba Updating submodules
Reviewed By: yns88

fbshipit-source-id: e74361bfe76195e20b2860d23a34e88b4dca18e8
2019-08-29 14:41:11 -07:00
svcscm
fdb0d6a844 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 2a7c8d2c1eb6e10da06b54814def7ca0d88e800a
2019-08-29 11:15:31 -07:00
svcscm
a8ef39078d Updating submodules
Reviewed By: yns88

fbshipit-source-id: 92ca1847b2ff5fa73c2585924253b9e16e864f69
2019-08-29 09:09:22 -07:00
svcscm
2757fcc811 Updating submodules
Reviewed By: yns88

fbshipit-source-id: a3bf615e8af2b0bab29a94341c3f9bf775a15e48
2019-08-28 21:52:29 -07:00
Adam Simpkins
ea23555faf fbcode_builder: fix install_fb_python_library() to work with old CMake versions
Summary:
Update install_fb_python_library() to work with CMake versions older than 3.7.

Previously the code used a generator expression in the directory argument
supplied to `install(DIRECTORY)`.  Support for generators in this parameter
was only added in CMake 3.5, but it was buggy and did not correctly handle
absolute paths until 3.7.

This updates the code to avoid using a generator expression.  This does
require that the corresponding `add_fb_python_library()` statement appear
before the `install_fb_python_library()` statement, but this seems like a
pretty reasonable restriction.

Reviewed By: chadaustin

Differential Revision: D17103597

fbshipit-source-id: 54d6af93a3f530373cfe3137db99436d8484f308
2019-08-28 21:00:27 -07:00
svcscm
e59603d147 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 864cd9c40804dd5fa6785b9c4a6c8cd36d17da1b
2019-08-28 19:51:20 -07:00
svcscm
506028b995 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 9303325ab0a54e470bf2b566c42e1c7bd7e3c78d
2019-08-28 17:56:24 -07:00
svcscm
c36a07058b Updating submodules
Reviewed By: yns88

fbshipit-source-id: 8682f6a02b5d43c3b4e6ebc2baf2381c394cfb1c
2019-08-28 17:03:06 -07:00
svcscm
331b95f1c2 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 4b926ff21ef676cf1a8aab1fe33145821d447143
2019-08-28 16:49:28 -07:00
svcscm
3a1a160d93 Updating submodules
Reviewed By: yns88

fbshipit-source-id: ec58ad68d60c8333e9db0bc982e28da997bdae35
2019-08-28 15:27:12 -07:00
Adam Simpkins
0d6c2c908e fbcode_builder: fix run_cmake.py to propagate the command return code
Summary:
Update the generated `run_cmake.py` script to use `os.execve()` rather than
`subprocess.call()`, so that it now propagates CMake's return code back to its
caller.

Reviewed By: chadaustin

Differential Revision: D17089206

fbshipit-source-id: e01f05f492ccb842d4967e59fd0bc9a3e59b8a42
2019-08-28 13:12:59 -07:00
Adam Simpkins
fe4265172e fbcode_builder: fix the error message if we cannot find a project fetcher
Summary:
Fix printing the manifest context in the error message if we cannot find a
project fetcher.  Previously the context in the message would be printed as
something like `<getdeps.manifest.ManifestContext object at 0x7fcce987e610>`,
now it shows instead as something like
`{distro=ubuntu, distro_vers=18.04, fb=off, os=linux, test=off}`

Reviewed By: chadaustin

Differential Revision: D17089208

fbshipit-source-id: c16549b61030d813b7b5ff9f65966436dc1e1898
2019-08-28 13:12:59 -07:00
Adam Simpkins
3a3c1f8978 fbcode_builder: minor fixup to normalize python installation paths
Summary:
This just strips off a trailing '/' from the `INSTALL_DIR` property that we
set on python targets, to avoid having double-slashes in the paths that we use
during installation.  This shouldn't really have any material difference other
than cleaning up the paths that get printed during the installation phase.

Reviewed By: chadaustin

Differential Revision: D17089207

fbshipit-source-id: ab36bb76c19fa60fe037f7a5290ccfd6bdbf13b0
2019-08-28 13:12:58 -07:00
Adam Simpkins
83516bb83a use ThriftCppLibrary.cmake from fbcode_builder
Summary:
Update fboss to use `ThriftCppLibrary.cmake` directly from fbcode_builder
rather than maintaining its own copy of this file.

Reviewed By: chadaustin

Differential Revision: D17005421

fbshipit-source-id: a64df426118df6088b47f09410dad7b8b7e79a43
2019-08-28 11:58:02 -07:00
Adam Simpkins
2e09bbac2a fbcode_builder: cmake: propagate thrift include dependencies correctly
Summary:
Update `add_thrift_cpp2_library()` to pass in the correct `-I` flags when
invoking the thrift compiler so that it can find all of the other thrift files
that this library depends on.

D16062657 was a previous attempt to do this, but suffered from a few problems:
- It required all dependencies to be defined before
  `add_thrift_cpp2_library()` was called.  This requires users to carefully
  order their CMake files and subdirectory include ordering.
- It only handled one level of dependencies, and did not propagate include
  paths for deeper dependencies.
- It set the include path for dependencies to the source directory path where
  the dependency was originally built, rather than the directory where the
  thrift file for that dependency would be installed.

This change does require CMake 3.8+.  Previous versions of CMake do not
support using generator expressions to generate multiple arguments for a
custom command.

Reviewed By: strager

Differential Revision: D17005381

fbshipit-source-id: 31190beba94b4d1010445375a5e2791450230f7d
2019-08-28 11:58:01 -07:00
svcscm
45ac09554f Updating submodules
Reviewed By: yns88

fbshipit-source-id: c3d5d2b5fced2df8edd75e0e5168b21aafdf2cb0
2019-08-28 11:43:17 -07:00
svcscm
a46aac3d33 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 9b162ce46ad06d7fb709c0c63fe5e7d3d0e19e4c
2019-08-28 10:23:18 -07:00
svcscm
11bc6db291 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 8de038693ae1cef5ab8d0704662080b3c80d908e
2019-08-28 07:51:13 -07:00
svcscm
8b25d7789f Updating submodules
Reviewed By: yns88

fbshipit-source-id: e1a8f136ecb13ca44807a0946816afcb39b35129
2019-08-28 06:46:42 -07:00
svcscm
6c5bf52015 Updating submodules
Reviewed By: yns88

fbshipit-source-id: faffdd640539228a185903709ad72f1d3b9acdf4
2019-08-27 19:14:44 -07:00
Alex Eckert
badd2c8f26 break oss build dependency on fboss/common/
Summary:
All of the requisite headers are now open sourced and eden
has been converted to use them. This removes any logic that references
this directory and kills the now unused cmake file.

Reviewed By: chadaustin

Differential Revision: D16994732

fbshipit-source-id: 573b8b50540ee64590682be2a54aa94659f12368
2019-08-27 17:15:54 -07:00
Alex Eckert
850ab27d4d use facebook::fb303 instead of common::stats where possible
Summary:
Most stat code in fbcode was moved in to open source under
fbcode/fb303. The only exception that we use internally is the
MonotonicCounter class. This diff moves all of our stats code to use
the open source headers and updates cmake files to pull in the open
source fb303.

Reviewed By: chadaustin, shri-khare

Differential Revision: D16969960

fbshipit-source-id: 12b7abb54c956c242c8e27eb69fd96925c7e61f7
2019-08-27 17:15:54 -07:00
svcscm
7f19614fc2 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 44a3f8acc05eb3d90e08fbe8dab38907e91d6000
2019-08-27 17:04:18 -07:00
svcscm
0b04b66ba1 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 6153522beb6219af9ff580f168c36eb86a1e702b
2019-08-27 11:23:39 -07:00
svcscm
e3ffb47536 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 33daf8eab1b2bc66635f8566168e80744fc152c9
2019-08-27 11:23:38 -07:00
svcscm
cb4a5859fc Updating submodules
Reviewed By: yns88

fbshipit-source-id: 3b2e2726a560c80941f394f3c77d63780e54efc1
2019-08-26 22:07:30 -07:00
svcscm
adc2ea86a1 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 7cb55d4545156148956d8ba5304b1104c04d3456
2019-08-26 18:50:29 -07:00
svcscm
4257c732e7 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 0ada7d1c1fa94142ce41e3795a282070606495b0
2019-08-26 16:06:36 -07:00
Adam Simpkins
6d9b66c90d fbcode_builder: support installing thrift generated header files
Summary:
Update add_thrift_cpp2_library() to add a PUBLIC_HEADER property to the
generated library target, so that the generated headers can be installed using
an `install()` call.  Also add a `HEADER_INSTALL_DIR` property which indicates
the directory they should be installed into.  A `INCLUDE_DIR` argument was
added to customize the include installation path, should anyone care to do so.

This also removes code that was previously incorrectly installing the
generated headers into the source tree.

Reviewed By: wez

Differential Revision: D16853404

fbshipit-source-id: 6f640b2bd347c99804e074fca0209dda37c8a9cf
2019-08-26 15:40:28 -07:00
svcscm
e240aa3ec3 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 8ffdbb7567fa67269c71be9f9974640a2855a84f
2019-08-26 15:40:28 -07:00
svcscm
410f5745d9 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 0544781d4886fc3f7b741509443a81fb117b664d
2019-08-26 13:07:16 -07:00
svcscm
0f113935d8 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 66b0d10238080244a63673065f1e5ae8ce8dad56
2019-08-26 13:07:16 -07:00
svcscm
d56acaf3d0 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 7588a59e904d5c6505bb29c48b64eacdda2234b5
2019-08-26 12:01:56 -07:00
Adam Simpkins
7f813eafed fbcode_builder: update the old fbcode_builder spec for fbzmq
Summary:
The external Travis CI builds for fbzmq are still using the older
fbcode_builder spec (as opposed to the newer getdeps manifest file).

D16577367 moved the CMakeLists.txt file to the top-level directory, but the
fbzmq spec file was still looking for it in the fbzmq subdirectory.

Reviewed By: jstrizich

Differential Revision: D17005361

fbshipit-source-id: 3f7664eadfb60ec7606124a14445b44ae586b8a7
2019-08-26 11:47:03 -07:00
Adam Simpkins
633b3cce47 fbcode_builder: fix the shipit path map for fbzmq
Summary:
Fix the fbzmq pathmap listed in its manifest file to match the path map
actually used by ShipIt.  The fact that this was broken was why internal
getdeps builds did not detect that D16577367 broke the build.

Reviewed By: wez, jstrizich

Differential Revision: D17005360

fbshipit-source-id: 046ff58ad70c03b860c3fccebaba975808df244d
2019-08-26 11:47:02 -07:00
svcscm
ee6b6dddb8 Updating submodules
Reviewed By: yns88

fbshipit-source-id: 04fb796c13be74d2b690bdadba278f7e9b51edb4
2019-08-26 11:47:02 -07:00
svcscm
fd0bfe6576 Updating submodules
Reviewed By: zpao

fbshipit-source-id: 7861cc7ba812cbbdd776d100d121fafb41055b56
2019-08-25 20:21:57 -07:00