#70912 closed enhancement (fixed)

nodejs14: disable a few warnings-as-errors for successful build on 10.7.5 (11G63)

Reported by: i3roly Owned by: ci42
Priority: Normal Milestone:
Component: ports Version: 2.10.1
Keywords: Cc:
Port: nodejs14

Description (last modified by ryandesign (Ryan Carsten Schmidt))

adding:

-Wno-error -Wno-enum-constexpr-conversion -Wno-incompatible-function-pointer-types -Wno-implicit-function-declaration

resulted in a successful build of nodejs14 on 10.7.5.

i thought it would be helpful to bring this to the attention of the maintainer so others could benefit, like my buddy fred.

Attachments (10)

nodejs14_main.log.gz (894.5 KB) - added by i3roly 18 months ago.
build lawg
nodejs15_main.log.gz (1.1 MB) - added by i3roly 18 months ago.
nodejs16_main.log.gz (116.9 KB) - added by i3roly 18 months ago.
nodejs17_main.log.gz (179.0 KB) - added by i3roly 18 months ago.
nodejs18_main.log.gz (177.4 KB) - added by i3roly 18 months ago.
cleaner log. adding C{XX,PP,{}}FLAGS "-Wno-incompatible-function-pointer-types -Wno-enum-constexpr-conversion" and LDFLAGS="-L/opt/local/lib/libexec/llvm-17/lib/libc++"
nodejs19_main.log.gz (182.3 KB) - added by i3roly 18 months ago.
nodejs20_main.log.gz (185.4 KB) - added by i3roly 18 months ago.
nodejs21_main.log.gz (189.4 KB) - added by i3roly 18 months ago.
nodejs22_fail.log.gz (78.5 KB) - added by i3roly 18 months ago.
nodejs22.log.gz (635.1 KB) - added by i3roly 16 months ago.
nodejs22_success

Change History (14)

comment:1 Changed 18 months ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign removed
Description: modified (diff)
Keywords: nodejs nodejs14 removed

Presuming that the build failed before adding these flags, customarily we would like you to attach the compressed main.log file showing what the problem was.

Since you already know what the fix is you could submit it as a pull request.

There are many nodejs ports in MacPorts, for different versions of nodejs. It would be good to make the same fix to all affected versions.

comment:2 Changed 18 months ago by i3roly

i can report that nodejs18, unlike the comment in the port file, should work if we are requiring llvm-17 and clang-17, however the portfile is not currently set up to handle the libc++ in /opt/local/libexec/llvm-17/lib/libc++ and so right now i had to hard-code the link in to see if it work.s

same CFLAGS/CXXFLAGS/CPPFLAGS as mentioned above. will try to spin another build soon that puts /opt/local/libexec/llvm-17/lib on the path (or is this forbidden)?

either way, for older OS users, this introduction of a non /usr/lib symlink may be worth the functionality of a new nodejs.

Changed 18 months ago by i3roly

Attachment: nodejs14_main.log.gz added

build lawg

Changed 18 months ago by i3roly

Attachment: nodejs15_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs16_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs17_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs18_main.log.gz added

cleaner log. adding C{XX,PP,{}}FLAGS "-Wno-incompatible-function-pointer-types -Wno-enum-constexpr-conversion" and LDFLAGS="-L/opt/local/lib/libexec/llvm-17/lib/libc++"

Changed 18 months ago by i3roly

Attachment: nodejs19_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs20_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs21_main.log.gz added

Changed 18 months ago by i3roly

Attachment: nodejs22_fail.log.gz added

comment:3 Changed 18 months ago by kencu (Ken)

for this error:

../deps/v8/src/base/bit-field.h:43:29: error: integer value 31 is outside the valid range of values [0, 15] for this enumeration type [-Wenum-constexpr-conversion]
  static constexpr T kMax = static_cast<T>(kNumValues - 1);

there is interesting discussion here:

https://github.com/nodejs/node/issues/52230

and this commit into v8 in chromium is related:

https://github.com/v8/v8/commit/d15d49b09dc7aef9edcc4cf6a0cb2b77a0db203f

Changed 16 months ago by i3roly

Attachment: nodejs22.log.gz added

nodejs22_success

comment:4 Changed 16 months ago by mascguy (Christopher Nielsen)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.