Package Details: wangle 2019.09.30.00-1

Git Clone URL: https://aur.archlinux.org/wangle.git (read-only)
Package Base: wangle
Description: C++ networking library providing client/server abstractions for building services
Upstream URL: https://github.com/facebook/wangle
Keywords: c++ client facebook network protocol server service
Licenses: Apache
Submitter: dseg
Maintainer: MrAnno
Last Packager: MrAnno
Votes: 2
Popularity: 0.014145
First Submitted: 2015-08-13 09:21
Last Updated: 2019-10-05 11:33

Latest Comments

jghodd commented on 2019-10-13 17:38

getting the following build error that appears to complain about "-lpthreads", which is understandable given that libpthreads doesn't exist (libpthread without the 's' does of course exist):

Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD failed with the following output: Change Dir: /data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp

Run Build Command(s):/bin/make cmTC_e194a/fast && /bin/make -f CMakeFiles/cmTC_e194a.dir/build.make CMakeFiles/cmTC_e194a.dir/build make[1]: Entering directory '/data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_e194a.dir/src.c.o /bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -DCMAKE_HAVE_LIBC_PTHREAD -fPIE -o CMakeFiles/cmTC_e194a.dir/src.c.o -c /data/aurbuild/yaourt-tmp-jghodd/aur-wangle/sr c/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp/src.c Linking C executable cmTC_e194a /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e194a.dir/link.txt --verbose=1 /bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -DCMAKE_HAVE_LIBC_PTHREAD -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -rdynamic CMakeFiles/cmTC_e194a.dir/src.c.o - o cmTC_e194a /bin/ld: CMakeFiles/cmTC_e194a.dir/src.c.o: in function main': src.c:(.text.startup+0x24): undefined reference topthread_create' /bin/ld: src.c:(.text.startup+0x2e): undefined reference to pthread_detach' /bin/ld: src.c:(.text.startup+0x3a): undefined reference topthread_join' collect2: error: ld returned 1 exit status make[1]: [CMakeFiles/cmTC_e194a.dir/build.make:87: cmTC_e194a] Error 1 make[1]: Leaving directory '/data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp' make: [Makefile:121: cmTC_e194a/fast] Error 2

Source file was:

include <pthread.h>

void test_func(void data) { return data; }

int main(void) { pthread_t thread; pthread_create(&thread, NULL, test_func, NULL); pthread_detach(thread); pthread_join(thread, NULL); pthread_atfork(NULL, NULL, NULL); pthread_exit(NULL);

return 0; }

Determining if the function pthread_create exists in the pthreads failed with the following output: Change Dir: /data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp

Run Build Command(s):/bin/make cmTC_0032c/fast && /bin/make -f CMakeFiles/cmTC_0032c.dir/build.make CMakeFiles/cmTC_0032c.dir/build make[1]: Entering directory '/data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp' Building C object CMakeFiles/cmTC_0032c.dir/CheckFunctionExists.c.o /bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -DCHECK_FUNCTION_EXISTS=pthread_create -fPIE -o CMakeFiles/cmTC_0032c.dir/CheckFunctionExists.c.o -c /usr/share/cmake- 3.15/Modules/CheckFunctionExists.c Linking C executable cmTC_0032c /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0032c.dir/link.txt --verbose=1 /bin/cc -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -DCHECK_FUNCTION_EXISTS=pthread_create -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -rdynamic CMakeFiles/cmTC_0032c.d ir/CheckFunctionExists.c.o -o cmTC_0032c -lpthreads /bin/ld: cannot find -lpthreads collect2: error: ld returned 1 exit status make[1]: [CMakeFiles/cmTC_0032c.dir/build.make:87: cmTC_0032c] Error 1 make[1]: Leaving directory '/data/aurbuild/yaourt-tmp-jghodd/aur-wangle/src/wangle-2019.09.30.00/wangle/build/CMakeFiles/CMakeTmp' make: [Makefile:121: cmTC_0032c/fast] Error 2

sleeping commented on 2017-06-15 01:46

OPENSSL problems? Doesn't compile.

Yeah this needs openssl-1.0

You can add it as dependency and add these flags to the cmake:

-DOPENSSL_INCLUDE_DIR=/usr/include/openssl-1.0 \
-DOPENSSL_SSL_LIBRARY=/usr/lib/openssl-1.0/libssl.so \
-DOPENSSL_CRYPTO_LIBRARY=/usr/lib/openssl-1.0/libcrypto.so

ppwwyyxx commented on 2016-04-18 18:15

Does it compile well with folly-git? I'm seeing the following error:
/home/wyx/System/installation/fbstuff/wangle/src/wangle-0.13.0/wangle/ssl/SSLContextManager.cpp: In member function ‘void wangle::SSLContextManager::ctxSetupByOpensslFeature(std::shared_ptr<folly::SSLContext>, const wangle::SSLContextConfig&)’
/home/wyx/System/installation/fbstuff/wangle/src/wangle-0.13.0/wangle/ssl/SSLContextManager.cpp:450:5: error: no matching function for call to ‘folly::SSLContext::addClientHelloCallback(std::_Bind_helper<false, void (folly::SSLContext::*)(ssl_st*, const std::__cxx11::basic_string<char>&, const std::vector<std::pair<std::__cxx11::basic_string<char>, int> >&), folly::SSLContext*, const std::_Placeholder<1>&, const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&>::type)’
);
^
In file included from /home/wyx/System/installation/fbstuff/wangle/src/wangle-0.13.0/wangle/../wangle/ssl/SSLContextManager.h:13:0,
from /home/wyx/System/installation/fbstuff/wangle/src/wangle-0.13.0/wangle/ssl/SSLContextManager.cpp:10:
/usr/include/folly/io/async/SSLContext.h:303:16: note: candidate: virtual void folly::SSLContext::addClientHelloCallback(const ClientHelloCallback&)
virtual void addClientHelloCallback(const ClientHelloCallback& cb);

dseg commented on 2015-12-27 21:16

@renanbs
Thank you very much for the patches!
Updated the package.

renanbs commented on 2015-11-25 03:58

To be able compile this package using folly-git I had to create a new patch to CMakeLists.txt and to ConnectionManager.h. I also changed your PKGBUILD:

CMakelists.txt.patch:
--- CMakeLists.txt 2015-11-25 01:40:08.738455052 -0200
+++ CMakeLists-patched.txt 2015-11-25 01:28:11.000000000 -0200
@@ -9,7 +9,6 @@

set(CMAKE_CXX_FLAGS "-std=c++0x -fPIC")
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/)
-
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
@@ -79,7 +78,9 @@
${Boost_LIBRARIES}
${OPENSSL_LIBRARIES}
-lglog
- -lgflags)
+ -lgflags
+ -lpthread
+ -latomic)

install(TARGETS wangle DESTINATION lib)
foreach(dir ${WANGLE_HEADER_DIRS})

-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
ConnectionManager.h.patch:
--- ConnectionManager.h 2015-11-25 01:43:58.881780745 -0200
+++ ConnectionManager-patched.h 2015-11-25 01:43:34.295114895 -0200
@@ -60,8 +60,8 @@
*/
template<typename... Args>
static UniquePtr makeUnique(Args&&... args) {
- return folly::make_unique<ConnectionManager, Destructor>(
- std::forward<Args>(args)...);
+ return std::unique_ptr<ConnectionManager, Destructor>(
+ new ConnectionManager(std::forward<Args>(args)...));
}

/**

-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
PKGBUILD.patch:
--- PKGBUILD 2015-10-06 12:46:12.000000000 -0300
+++ wanglePKGBUILD/PKGBUILD 2015-11-25 01:48:30.775105052 -0200
@@ -11,16 +11,20 @@
options=('!emptydirs' 'staticlibs')
source=("https://github.com/facebook/$pkgname/archive/v${pkgver}.tar.gz"
CMakeLists.txt.patch
-ServiceTest.cpp.patch)
+ServiceTest.cpp.patch
+ConnectionManager.h.patch)
md5sums=('f6d34eaaf1342384f9f7327c6640e55e'
- 'd5086d808c774339062e8a37e22b5921'
- '36ff005a5706ca9c5153e610ea157f37')
+ '10c845f5b26e34d2a3a13f9d9f37223d'
+ '36ff005a5706ca9c5153e610ea157f37'
+ '16a1d1c07649776afd92969f90ac4544')

prepare() {
cd "$pkgname-$pkgver/$pkgname"
patch --verbose -p0 -i $srcdir/CMakeLists.txt.patch
cd service
patch --verbose -p0 -i $srcdir/ServiceTest.cpp.patch
+ cd ../acceptor
+ patch --verbose -p0 -i $srcdir/ConnectionManager.h.patch
}

build() {