Bug 264700 - www/elinks: Fails to build with SPIDERMONKEY=ON after 0.15.0 update: error "Must define one of XP_BEOS, XP_OS2, XP_WIN or XP_UNIX"
Summary: www/elinks: Fails to build with SPIDERMONKEY=ON after 0.15.0 update: error "M...
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Alexey Dokuchaev
URL:
Keywords: needs-qa
Depends on:
Blocks:
 
Reported: 2022-06-16 00:31 UTC by John Hein
Modified: 2024-09-03 01:58 UTC (History)
3 users (show)

See Also:
jailbird: maintainer-feedback+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description John Hein 2022-06-16 00:31:05 UTC
After the update to 0.15.0, www/elinks fails to build if SPIDERMONKEY is on.

 .
 .
      [CC]   src/dialogs/download.o
      [CC]   src/dialogs/edit.o
      [CC]   src/dialogs/exmode.o
      [CC]   src/dialogs/info.o
In file included from info.c:22:
In file included from ../.././src/ecmascript/ecmascript.h:13:
In file included from /usr/local/include/js-1.7/jsapi.h:47:
In file included from /usr/local/include/js-1.7/jspubtd.h:45:
/usr/local/include/js-1.7/jstypes.h:248:6: error: "Must define one of XP_BEOS, XP_OS2, XP_WIN or
      XP_UNIX"
#    error "Must define one of XP_BEOS, XP_OS2, XP_WIN or XP_UNIX"
     ^
/usr/local/include/js-1.7/jstypes.h:264:2: error: No suitable type for JSInt8/JSUint8
#error No suitable type for JSInt8/JSUint8
 ^
/usr/local/include/js-1.7/jstypes.h:277:2: error: No suitable type for JSInt16/JSUint16
#error No suitable type for JSInt16/JSUint16
 ^
/usr/local/include/js-1.7/jstypes.h:297:2: error: No suitable type for JSInt32/JSUint32
#error No suitable type for JSInt32/JSUint32
 ^
/usr/local/include/js-1.7/jstypes.h:329:5: error: unknown type name 'JSUint32'
    JSUint32 hi, lo;
    ^
/usr/local/include/js-1.7/jstypes.h:348:2: error: 'sizeof(int)' not sufficient for platform use
#error 'sizeof(int)' not sufficient for platform use
 ^
/usr/local/include/js-1.7/jstypes.h:393:9: error: unknown type name 'JSIntn'; did you mean
      'JSInt64'?
typedef JSIntn JSBool;
 .
 .
Comment 1 John Hein 2022-06-16 00:33:11 UTC
See also bug 226878, comment 3 and later.  This bug was opened since bug 226878 is a different issue.
Comment 2 John Hein 2022-06-16 00:36:35 UTC
See also bug 264699 which adds a new port for libxml++50.  The elinks-0.15.0 configure script asserts that building with spidermonkey78 is dependent on libxml++50 (and also sqlite3).

But there are other difficulties in trying to build elinks with spidermonkey78 (instead of spidermonkey17).  See https://github.com/rkd77/elinks/issues/176
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2022-06-16 00:42:16 UTC
@John Can you:

- Provide a full build log, compressed if necessary, or at least one that includes verbose compile lines. (In reply to John Hein from comment #2)

- Confirm reproduction with libxml++50 via bug 264699 installed
Comment 4 Alexey Dokuchaev freebsd_committer freebsd_triage 2022-06-16 13:10:22 UTC
(In reply to Kubilay Kocak from comment #3)
There's no benefit in getting any more logs than was already provided.  The problem is quite obvious, please do not ask submitters for more Bugzilla spam.
Comment 5 Dustin Marquess 2022-06-19 04:01:15 UTC
Sorry for the late reply, I've been dealing with a fire drill at $DAYJOB.

On Tuesday I'll get this fixed and figure out why my poudriere runs didn't catch it.
Comment 6 Dustin Marquess 2022-06-21 21:09:36 UTC
So John figured out one part: It wants libxml++ 5.0 now. The other part seems that it wants lang/spidermonkey78 now instead of lang/spidermonkey17.

The issue I'm running into now is that mozjs78 uses C++ includes, and elinks doesn't really seem to separate C and C++ code. It seems like it just treats everything as C++, and that's causing issues. There's some compiler flags that it's setting in the meson.build that don't seem to be replicated in the autoconf setup. I'll see if I can get that copied over.
Comment 7 Dustin Marquess 2022-06-21 21:15:42 UTC
And, nm, I just saw the github bug that John opened up and all of this is already known (sorry for the bug spam!).
Comment 8 Dustin Marquess 2022-09-09 01:06:18 UTC
This should be fixed once #266305 is committed.
Comment 9 Dustin Marquess 2022-09-21 23:17:28 UTC
(In reply to John Hein from comment #0)

John,

Can you try again now that the port has been updated please?
Comment 10 John Hein 2024-09-03 01:58:39 UTC
Closing this older bug.  Upstream made some changes due to the upstream bug back in 2022 (and released 0.15.1).  But FreeBSD's port of elinks is now at 0.17.0, and that seems to build fine (libxml++ has updated a bit since 2022 as well).

In any case, it seems to build fine with the SPIDERMONKEY option today.