On 17.05.2012, at 03:36, Mikus Grinbergs wrote: >>>>> This is not going to work on ARM; the target was said to be XO-1 >> Feedback for <activity_developer> to ensure that it does something >> sensible on ARM, like "sorry, your computer is too new for this >> activity" > > On 05/16/2012 07:42 PM, James Cameron wrote: >> I think Sugar leans toward architecture independence in the .xo files, >> but it's something that could be raised again with Sugar Labs. > > It should be feasible to "test before you run" -- but this Activity includes > a binary, and as far as I know ARM machine instructions are not the same as > x86 machine instructions -- and including TWO binaries (one for each > architecture) leads to ".xo bloat". > > And, from my limited knowledge (I haven't kept up), the design for Activities > does NOT include a way for Activities to __test__ whether dependent RPMs are > provided by the runtime environment. Dependencies have traditionally been > addressed by __including__ them in the .xo package -- but that just means > *more* architecture-dependent files. > > mikus
Executables tend to be small compared to data files. For users, a "fat" bundle containing multiple architectures is arguably simplest. You could use something like this: ARCH=`uname -m` BIN="$SUGAR_BUNDLE_PATH/bin-$ARCH" exec $BIN/myexecutable ... and have both a "bin-i686" and "bin-arm7vl" directory (and lib dirs if needed). As an example, there is a DrGeo activity bundle that supports both architectures (last time I looked, the ARM part included way too many files, but it appears to work): http://people.sugarlabs.org/rafael/UY/ (the proper way here would have been installing a newer Squeak VM in the system, but bundling it inside the activity is a good short-term workaround). - Bert - _______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel