From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pat LaVarre Subject: big-endian udfct_1_0r2 Date: 08 Oct 2003 12:09:04 -0600 Sender: linux-fsdevel-owner@vger.kernel.org Message-ID: <1065636544.7602.49.camel@patehci2> References: <1065553341.8172.45.camel@patehci2> <20031007204951.A25423@falcon.csc.calpoly.edu> <1065631289.6625.34.camel@patehci2> <1065631668.6625.48.camel@patehci2> <1065635511.7602.38.camel@patehci2> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Cc: linux_udf@hpesjro.fc.hp.com Return-path: Received: from email-out1.iomega.com ([147.178.1.82]:50390 "EHLO email.iomega.com") by vger.kernel.org with ESMTP id S261689AbTJHSJR (ORCPT ); Wed, 8 Oct 2003 14:09:17 -0400 To: linux-fsdevel@vger.kernel.org In-Reply-To: <1065635511.7602.38.camel@patehci2> List-Id: linux-fsdevel.vger.kernel.org > http://www.extra.research.philips.com/udf/download.html > For big endian platforms, > ENDIAN_SWAP must be defined at compilation time. Anyone here already working on fixing that feature? I'm too new myself to know how socially correct C code in linux does distinguish big-endian from little-endian. Perhaps the first fragment that leaps to my mind is: static inline int lil() { int const i = 1; return *(char const *)&i; } I'm too new to have tried that fragment in many gcc and linux. I would be disappointed, though not really surprised, to discover that the gcc of wherever we see udf disks in fact doesn't support that kind of constant as well as a #define constant. Could be that an initialised const union of char with int might work better. Pat LaVarre