# Allows us to use lib64/lib32 as path for GAC. Snatched from Fedora, # altered to be easily sedded. # Sed this file to have the proper libdir: # sed -i -e "s:@MONOLIBDIR@:$(get_libdir):" FILENAME # http://cvs.fedoraproject.org/viewvc/rpms/mono/devel/mono-libdir-126.patch?view=log Index: mono-1.1.16/mcs/tools/cilc/res-Makefile =================================================================== --- mono-1.1.16.orig/mcs/tools/cilc/res-Makefile +++ mono-1.1.16/mcs/tools/cilc/res-Makefile @@ -2,7 +2,7 @@ include defs.mk LIBNAME = $(shell echo $(basename $(SONAME)) | sed -e 's/^lib//') HTARGET = $(prefix)/include/$(LIBNAME)/ -LIBTARGET = $(prefix)/lib/ +LIBTARGET = $(libdir) CFLAGS += -static -fpic $(shell pkg-config --cflags glib-2.0 gobject-2.0 mono) $(EXTRAINCLUDES) -I. --- mono-1.1.16.1/mono/metadata/assembly.c.libdir 2006-08-17 17:52:42.000000000 +0200 +++ mono-1.1.16.1/mono/metadata/assembly.c 2006-08-17 17:56:21.000000000 +0200 @@ -521,7 +521,7 @@ } config = g_build_filename (base, "etc", NULL); - lib = g_build_filename (base, "lib", NULL); + lib = g_build_filename (base, "@MONOLIBDIR@", NULL); mono = g_build_filename (lib, "mono/1.0", NULL); if (stat (mono, &buf) == -1) fallback (); @@ -1844,7 +1844,7 @@ if (extra_gac_paths) { paths = extra_gac_paths; while (!res && *paths) { - gacpath = g_build_path (G_DIR_SEPARATOR_S, *paths, "lib", "mono", "gac", aname->name, NULL); + gacpath = g_build_path (G_DIR_SEPARATOR_S, *paths, "@MONOLIBDIR@", "mono", "gac", aname->name, NULL); res = probe_for_partial_name (gacpath, fullname, aname, status); g_free (gacpath); paths++; @@ -1908,7 +1908,7 @@ paths = extra_gac_paths; while (!image && *paths) { fullpath = g_build_path (G_DIR_SEPARATOR_S, *paths, - "lib", "mono", "gac", subpath, NULL); + "@MONOLIBDIR@", "mono", "gac", subpath, NULL); image = mono_image_open (fullpath, NULL); g_free (fullpath); paths++; @@ -2058,7 +2058,7 @@ if (extra_gac_paths) { paths = extra_gac_paths; while (!result && *paths) { - fullpath = g_build_path (G_DIR_SEPARATOR_S, *paths, "lib", "mono", "gac", subpath, NULL); + fullpath = g_build_path (G_DIR_SEPARATOR_S, *paths, "@MONOLIBDIR@", "mono", "gac", subpath, NULL); result = mono_assembly_open_full (fullpath, status, refonly); g_free (fullpath); paths++; --- mono-1.1.16.1/mcs/tools/gacutil/driver.cs.libdir 2006-08-17 15:40:14.000000000 +0200 +++ mono-1.1.16.1/mcs/tools/gacutil/driver.cs 2006-08-17 15:40:19.000000000 +0200 @@ -667,7 +667,7 @@ private static string EnsureLib (string dir) { DirectoryInfo d = new DirectoryInfo (dir); - if (d.Name == "lib") + if (d.Name == "lib" || d.Name == "@MONOLIBDIR@") return dir; return Path.Combine (dir, "lib"); }