mirror of
https://github.com/ivabus/pantry
synced 2024-11-27 10:45:08 +03:00
64 lines
1.6 KiB
YAML
64 lines
1.6 KiB
YAML
|
distributable:
|
|||
|
url: https://github.com/facebook/folly/releases/download/{{version.tag}}/folly-{{version.tag}}.tar.gz
|
|||
|
strip-components: 0
|
|||
|
|
|||
|
versions:
|
|||
|
github: facebook/folly
|
|||
|
|
|||
|
dependencies:
|
|||
|
boost.org: '*'
|
|||
|
gflags.github.io: '*'
|
|||
|
google.com/glog: '*'
|
|||
|
libevent.org: '*'
|
|||
|
lz4.org: 1
|
|||
|
openssl.org: ^1.1
|
|||
|
tukaani.org/xz: 5
|
|||
|
facebook.com/zstd: 1
|
|||
|
gnu.org/coreutils: 9
|
|||
|
google.github.io/snappy: '*'
|
|||
|
google.com/double-conversion: ^3
|
|||
|
fmt.dev: ^9
|
|||
|
|
|||
|
build:
|
|||
|
dependencies:
|
|||
|
tea.xyz/gx/cc: c99
|
|||
|
tea.xyz/gx/make: '*'
|
|||
|
cmake.org: ^3.0.2
|
|||
|
freedesktop.org/pkg-config: ^0.29
|
|||
|
working-directory:
|
|||
|
/tmp/xyz.tea.folly
|
|||
|
# ^^ facebook use a shitty custom regex function to remove sources that
|
|||
|
# shouldn’t be compiled from the library target. They start with *all sources*
|
|||
|
# our default build directory has a `+` in it which breaks facebook’s
|
|||
|
# piss awful code.
|
|||
|
#TODO don’t use exotic characters in our build directories
|
|||
|
script: |
|
|||
|
mv $SRCROOT xyz.tea.srcs
|
|||
|
cmake $ARGS -S xyz.tea.srcs -B .
|
|||
|
make --jobs {{hw.concurrency}} install
|
|||
|
env:
|
|||
|
ARGS:
|
|||
|
- -DCMAKE_INSTALL_PREFIX={{prefix}}
|
|||
|
- -DCMAKE_BUILD_TYPE=Release
|
|||
|
- -DBUILD_TESTING=OFF
|
|||
|
- -DCMAKE_VERBOSE_MAKEFILE=ON
|
|||
|
|
|||
|
test:
|
|||
|
dependencies:
|
|||
|
tea.xyz/gx/cc: c99
|
|||
|
fixture: |
|
|||
|
#include <folly/FBVector.h>
|
|||
|
int main() {
|
|||
|
folly::fbvector<int> numbers({0, 1, 2, 3});
|
|||
|
numbers.reserve(10);
|
|||
|
for (int i = 4; i < 10; i++) {
|
|||
|
numbers.push_back(i * 2);
|
|||
|
}
|
|||
|
assert(numbers[6] == 12);
|
|||
|
return 0;
|
|||
|
}
|
|||
|
script: |
|
|||
|
mv $FIXTURE b.cc
|
|||
|
c++ -std=c++14 b.cc -lfolly -ldl -lfmt -lglog
|
|||
|
./a.out
|