I'd really like to see the underlying issue here fixed. (Specifically I'd like to have i386 and amd64 -dev packages installed, and usable, at the same time.) I'll be happy to provide patches if that will help.
So from what I can tell there are 4 problems: 1. curl-config --libs: This is pretty trivial to fix; if libcurl is installed in /usr/lib/x86_64-linux-gnu/, there's no need to include that path in the linker flags. Just change curl-config.in to unconditionally set CURLLIBDIR="". (As a side issue, it'd also be good if 'pkg-config --libs libcurl' behaved the same way, i.e. omit -L${libdir} from libcurl.pc.) 2. curl-config --static-libs: Is there a real need to support this option? Specifically, is there a situation where it's useful to link statically with libcurl while linking dynamically with the other libraries (e.g., -lgssapi_krb5, which in Debian is only available as a shared library)? I guess the only way to preserve the exact semantics of this command would be to rename libcurl.a to (e.g.) libcurl-static.a, and replace "@libdir@/libcurl.@libext@" with -lcurl-static. Alternatively it could be changed to something like "-Wl,-Bstatic -lcurl -Wl,-Bdynamic" but that might break some weird configurations. 3. Barely worth mentioning, curl-config --configure: I seriously doubt anyone is using this option for anything important. But one way, I suppose, to more-or-less preserve the semantics would be to replace the architecture triplets with the literal string "$(dpkg-architecture -qDEB_HOST_MULTIARCH)". 4. curlbuild.h: The simplest way to fix this would be to move all of /usr/include/curl/ to /usr/include/<triplet>/curl/. (Is that include path supported by all C compilers in Debian? It's a little unclear to me; some of the multi-arch documents mention that path, while others imply that there isn't any standard way to do arch-dependent header files.) Alternatively, just curlbuild.h could be moved, and curl.h could be modified to #include <curl/curlbuild.h> instead of #include "curlbuild.h". Of course, curl-config --cflags, and pkg-config --cflags libcurl, should continue to output nothing (the whole exercise is wasted if curl-config --cflags outputs "-I/usr/include/x86_64-linux-gnu".) The other option would be to replace curlbuild.h with a version that uses #ifdefs to include the appropriate curlbuild.h for the architecture. (This is what Fedora/RHEL have done in their libcurl-devel packages.) This could be quite complicated, given the number of architectures Debian supports. Benjamin Moody -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org