Skip to content
This repository has been archived by the owner on Dec 4, 2020. It is now read-only.

Package node8 missing in repo #1544

Open
bjar opened this issue Mar 25, 2018 · 4 comments
Open

Package node8 missing in repo #1544

bjar opened this issue Mar 25, 2018 · 4 comments

Comments

@bjar
Copy link

bjar commented Mar 25, 2018

The package node8, which is the current LTS, is missing from the trueos repository. It's available in the freebsd one.

@beanpole135
Copy link
Member

Node 8 fails to compile with all sorts of C/C++ errors:

Full Log:
https://builds.ixsystems.com/chimaera/data/unstable-trueosports/2018-03-24_15h40m50s/logs/errors/node8-8.9.4.log

Snippet with the errors/warnings:

v8.9.4/out/Release/obj.target/node/src/tls_wrap.o ../src/tls_wrap.cc
../src/node_contextify.cc:278:43: warning: 'GetDebugContext' is deprecated [-Wdeprecated-declarations]
    Local<Context> debug_context = Debug::GetDebugContext(args.GetIsolate());
                                          ^
../deps/v8/include/v8-debug.h:208:3: note: 'GetDebugContext' has been explicitly marked deprecated here
  V8_DEPRECATED("Use v8-inspector",
  ^
../deps/v8/include/v8config.h:321:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
../src/node_contextify.cc:283:14: warning: 'SetDebugEventListener' is deprecated [-Wdeprecated-declarations]
      Debug::SetDebugEventListener(args.GetIsolate(), dummy_event_listener);
             ^
../deps/v8/include/v8-debug.h:145:3: note: 'SetDebugEventListener' has been explicitly marked deprecated here
  V8_DEPRECATED("No longer supported", static bool SetDebugEventListener(
  ^
../deps/v8/include/v8config.h:321:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
../src/node_contextify.cc:284:30: warning: 'GetDebugContext' is deprecated [-Wdeprecated-declarations]
      debug_context = Debug::GetDebugContext(args.GetIsolate());
                             ^
../deps/v8/include/v8-debug.h:208:3: note: 'GetDebugContext' has been explicitly marked deprecated here
  V8_DEPRECATED("Use v8-inspector",
  ^
../deps/v8/include/v8config.h:321:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
../src/node.cc:4414:14: warning: 'DebugBreak' is deprecated [-Wdeprecated-declarations]
  v8::Debug::DebugBreak(args.GetIsolate());
             ^
../deps/v8/include/v8-debug.h:151:3: note: 'DebugBreak' has been explicitly marked deprecated here
  V8_DEPRECATED("No longer supported",
  ^
../deps/v8/include/v8config.h:321:29: note: expanded from macro 'V8_DEPRECATED'
  declarator __attribute__((deprecated))
                            ^
../src/tls_wrap.cc:161:3: error: use of undeclared identifier 'SSL_set_cert_cb'; did you mean 'SSL_set_verify'?
  SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
  ^~~~~~~~~~~~~~~
  SSL_set_verify
/usr/include/openssl/ssl.h:1247:6: note: 'SSL_set_verify' declared here
void    SSL_set_verify(SSL *s, int mode,
        ^
../src/tls_wrap.cc:161:25: error: cannot initialize a parameter of type 'int' with an lvalue of type 'int (SSL *, void *)' (aka 'int (ssl_st *, void *)')
  SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/openssl/ssl.h:1247:33: note: passing argument to parameter 'mode' here
void    SSL_set_verify(SSL *s, int mode,
                                   ^
../src/node_crypto.cc:612:11: error: use of undeclared identifier 'SSL_CTX_add1_chain_cert'
      r = SSL_CTX_add1_chain_cert(ctx, ca);
          ^
../src/node_crypto.cc:942:3: error: use of undeclared identifier 'X509_STORE_up_ref'; did you mean 'X509_STORE_free'?
  X509_STORE_up_ref(root_cert_store);
  ^~~~~~~~~~~~~~~~~
  X509_STORE_free
/usr/include/openssl/x509_vfy.h:430:6: note: 'X509_STORE_free' declared here
void X509_STORE_free(X509_STORE *v);

@digitalist
Copy link

@bjar libressl related issue, but it can be built. #1503

@bjar
Copy link
Author

bjar commented Mar 28, 2018

Ok so what is usually the way to fix LibreSSL issues? Contact the FreeBSD port maintainer or fix the TrueOS repo?

@digitalist
Copy link

@bjar this is a tricky question.
if can patch something to be compatible with libressl (which is a default library for trueos because it is more secure) you can commit it either upstream or to trueos/freebsd
if you just need some package built, you can built it yourself using ports tree + openssl (it's not that hard, I'll provide an instruction later) or ask someone to build it for you.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants