[MacPorts] #40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!"
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" --------------------------+-------------------------------- Reporter: ryandesign@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Keywords: | Port: lcdf-typetools --------------------------+-------------------------------- Building lcdf-typetools @2.99 with the +universal variant fails with: {{{ md5.c:117:3: error: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" # error "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" ^ }}} Building without the universal variant works fine. lcdf-typetools @2.92_1 did not have any problem building universal so this is a regression. -- Ticket URL: <https://trac.macports.org/ticket/40401> MacPorts <http://www.macports.org/> Ports system for OS X
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" -----------------------------+-------------------------------- Reporter: ryandesign@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: | Keywords: Port: lcdf-typetools | -----------------------------+-------------------------------- Comment (by egall@…): Endianness is checked like this in the configure script: {{{ AC_C_BIGENDIAN(, [AC_DEFINE([WORDS_LITTLEENDIAN], 1, [Define to 1 if your processor stores words with the least significant byte first (like Intel and VAX, unlike Motorola and SPARC).])]) }}} ([https://github.com/kohler/lcdf-typetools/blob/master/configure.ac#L138 ref]) I haven't tried this myself yet, but perhaps someone could try patching the configure script to define `WORDS_BIGENDIAN` in the first condition instead of just leaving it blank? Like this: {{{ AC_C_BIGENDIAN([ AC_DEFINE([WORDS_BIGENDIAN],[1],[Define to 1 if your processor stores words with the most significant byte first (like PowerPC, unlike Intel).]) ],[ AC_DEFINE([WORDS_LITTLEENDIAN],[1],[Define to 1 if your processor stores words with the least significant byte first (like Intel and VAX, unlike Motorola and SPARC).]) ]) }}} -- Ticket URL: <https://trac.macports.org/ticket/40401#comment:1> MacPorts <http://www.macports.org/> Ports system for OS X
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" -----------------------------+-------------------------------- Reporter: ryandesign@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: | Keywords: Port: lcdf-typetools | -----------------------------+-------------------------------- Comment (by ryandesign@…): I would say, as usual, that it is an error for a configure script to attempt to detect endianness and bitness since on OS X it varies. Instead, source code files should use preprocessor directives `__BIG_ENDIAN__` and `__LP64__` as needed. -- Ticket URL: <https://trac.macports.org/ticket/40401#comment:2> MacPorts <http://www.macports.org/> Ports system for OS X
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" -----------------------------+---------------------- Reporter: ryandesign@… | Owner: larryv@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: | Keywords: Port: lcdf-typetools | -----------------------------+---------------------- Changes (by larryv@…): * owner: macports-tickets@… => larryv@… * status: new => assigned -- Ticket URL: <https://trac.macports.org/ticket/40401#comment:3> MacPorts <http://www.macports.org/> Ports system for OS X
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" -----------------------------+---------------------- Reporter: ryandesign@… | Owner: larryv@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: fixed | Keywords: Port: lcdf-typetools | -----------------------------+---------------------- Changes (by larryv@…): * status: assigned => closed * resolution: => fixed Comment: Fixed in r110824, at least for i386/x86_64. i386/PPC should work too, but I have no way of testing. -- Ticket URL: <https://trac.macports.org/ticket/40401#comment:4> MacPorts <http://www.macports.org/> Ports system for OS X
#40401: lcdf-typetools: universal variant fails: "Neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN is defined!" -----------------------------+---------------------- Reporter: ryandesign@… | Owner: larryv@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.2.0 Resolution: fixed | Keywords: Port: lcdf-typetools | -----------------------------+---------------------- Comment (by larryv@…): Replying to [comment:1 egall@…]:
I haven't tried this myself yet, but perhaps someone could try patching the configure script to define `WORDS_BIGENDIAN` in the first condition instead of just leaving it blank?
This would not help. The configure script determines (correctly) that the compiler will be building universally and defines neither WORDS_BIGENDIAN nor WORDS_LITTLEENDIAN, but the source assumes that at least one of those is defined. -- Ticket URL: <https://trac.macports.org/ticket/40401#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts