Christopher Allan Webber <cweb...@dustycloud.org> writes: >>> +(define-public guile-for-guile-emacs >>> [...] >>> + (inputs >>> + `(("gettext" ,gnu-gettext) >> >> Sure it shouldn't be in native-inputs? I'm guessing autogen uses it. > > So, could someone describe the difference between inputs and > native-inputs? The manual provides no clarity! I never know where it > goes and why... I just mime what other packages are doing.
Perhaps a bug report should be opened about the absence of documentation on native and propagated inputs... When an input is in native-inputs instead of inputs, then it is ensured during cross-compilation that the version present during the build of the package will be for the platform on which the build is happening; this is necessary if executables from the input will be run during the build, such as the autotools suite, bash, gcc, etc. (The latter are implicit native inputs of the gnu-build-system AFAIK.) Gettext will probably be run on the source code to extract localizable strings; if so then it should be a native input. If it were just a shared library like libpng, or a program that will be used during use of the package (such as the 'git' input to 'magit'), then it needn't be a native input since no executables from it will be run during the build and it doesn't matter if it's for another platform. Hope that helps! Taylan