On Oct 19, 2013, at 3:59 PM, John Ralls <[email protected]> wrote:
> If you mean you did
>
> - echo
> "XDG_DATA_DIRS=$(prefix)/share:{XDG_DATA_DIRS}:/usr/local/share/:/usr/share/"
> >> [email protected]; \
> + echo
> "XDG_DATA_DIRS=$(prefix)/share:${XDG_DATA_DIRS}:/usr/local/share/:/usr/share/"
> >> [email protected]; \
>
> then I think that's right and what Geert meant to do in the first place.
Not quite. I changed it so it takes either the run time or compile time value,
preferring the run time value:
+ echo
"XDG_DATA_DIRS=$(prefix)/share:{XDG_DATA_DIRS}:$(XDG_DATA_DIRS):/usr/local/share/:/usr/share/"
>> [email protected]; \
> Environment.in is munged, then parsed in gnucash-bin.c. I don't think that
> the separators are passed as-is to the OS.
Right. Actually it uses the GLib key-value file parser to parse the file and
this requires semicolon delimiters between values. I changed the value for
XDG_DATA_DIRS to use ";" instead of ":". I also changed environment_override
in gnucash-bin.c to skip null values in path lists so a missing XDG_DATA_DIRS
won't clutter up the list.
I'll check these changes in later when I'm sure they work.
Mike
_______________________________________________
gnucash-devel mailing list
[email protected]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel