Opened 18 years ago
Last modified 9 years ago
#8670 closed defect
UPDATE inventor-2.1.5-10 — at Initial Version
Reported by: | bhu@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.2 |
Keywords: | Cc: | cssdev@… | |
Port: | inventor |
Description
Inventor-2.1.5-10
Descritption: Inventor-2.1.5-10 doesn't work on Intel Macs because of endian issues. The symptoms are (1) ivman fails at .../doc/man/man3/ivm/draggers/ (2) Binaries that use SoInput, e.g, SceneViewer seg-faults.
The solution is to patch .../lib/database/include/machine.h. The diff is as follows
--- machine.h 2006-04-30 14:27:27.000000000 -0400+++ machine.h.new 2006-04-30 14:30:20.000000000 -0400 @@ -156,9 +156,15 @@
*/
#ifdef APPLE
+#ifdef LITTLE_ENDIAN +#define MACHINE_WORD_FORMAT DGL_LITTLE_ENDIAN +#define MACHINE_FLOAT_FORMAT DGL_NON_IEEE + +#else
#define MACHINE_WORD_FORMAT DGL_BIG_ENDIAN #define MACHINE_FLOAT_FORMAT DGL_BIG_IEEE
+#endif /* LITTLE_ENDIAN */
#endif /* APPLE */
@@ -321,12 +327,12 @@
*/
#if MACHINE_FLOAT_FORMAT == DGL_NON_IEEE
ia64 | |
ia64 | ( APPLE && LITTLE_ENDIAN) |
void mem_hton_float(float *t, float *f); void mem_ntoh_float(float *t, float *f); void mem_hton_double(double *t, double *f); void mem_ntoh_double(double *t, double *f);
ia64 */ | |
ia64 | (APPLE && LITTLE_ENDIAN) */ |
#define DGL_HTON_FLOAT(t,f) mem_hton_float(&t,&f) #define DGL_NTOH_FLOAT(t,f) mem_ntoh_float(&t,&f) #define DGL_HTON_DOUBLE(t,f) mem_hton_double(&t,&f)