>> + (outputs '("out")) > > Can be omitted (it’s the same as the default value.) > Removed it.
>> + (arguments >> + `(#:out-of-source? #t >> + #:phases (alist-replace >> + 'install >> + (lambda* (#:key outputs #:allow-other-keys) >> + (let ((out (assoc-ref outputs "out"))) >> + ;; We need to copy libihash.a to the output folder >> manually, >> + ;; since there is no target for that in the makefile >> + (copy-recursively "libihash" >> + (string-append out "/libihash")) > > This creates > /gnu/store/.../libihash/{libihash.a,Makefile,ihash.c,ihash.o,...}. Is > it really what’d intended? > > I would expect that the intent is to create > /gnu/store/.../{lib/libihash.a,include/ihash.h}, no? > I will create two folders, lib with libihash.a and include with ihash.h. What do you think? >> + (lambda* (#:key inputs source #:allow-other-keys) >> + (let ((glibc (assoc-ref inputs "glibc-hurd-headers"))) >> + (zero? (system* "autoreconf" "-vif")) >> + #t)) > > Can be simplified to: > > (lambda _ > (zero? (system* "autoreconf" "-vfi"))) > Simplified. > Please add a line or two in the patch saying what it does, and linking > to the original discussion. > ok, I will place a link with the discussion from bug hurd and explain what it does. >> ++if test "x$cross_compiling" = "xyes"; then >> ++ # It may be that we don't have a working libc yet, for instance >> ++ # because we're bootstrapping the cross-compilation tool chain. >> ++ # Thus, use this undocumented Autoconf macro designed for this. >> ++ AC_NO_EXECUTABLES >> ++ echo done >> ++fi > > I gather that this works as advertised, but could you confirm by > replying to > <http://lists.gnu.org/archive/html/bug-hurd/2014-04/msg00139.html>? > That would allow us to push the patch upstream. > I had to put one more line after AC_NO_EXECUTABLES, otherwise it would fail with > syntax error near unexpected token `fi'. Other than that it works. I will confirm there. >> +-# Check for Sun RPC headers and library. >> ++# Check only for Sun RPC headers. We do not need the library yet. >> + AC_CHECK_HEADER([rpc/types.h], [HAVE_SUN_RPC=yes], [HAVE_SUN_RPC=no]) >> +-AC_SEARCH_LIBS([clnt_create], [], [:], [HAVE_SUN_RPC=no]) >> ++# AC_SEARCH_LIBS([clnt_create], [], [:], [HAVE_SUN_RPC=no]) >> + AC_SUBST([HAVE_SUN_RPC]) > > What’s the problem that’s addressed here? It tries to link with a library in glibc (which at that point doesn't yet exist ), but it cant because of the AC_NO_EXECUTABLES flag saying that linking is not allowed after this flag is passed. So I am just disabling the test, to get the job done. Thanks, Manolis