Description: Character set conversion library
Version: @UCW_VERSION@
Cflags: -I${incdir}
-Libs: -L${libdir} -lucw-charset@UCW_ABI_SUFFIX@${picsuffix}
+Libs: -L${libdir} @SO_LINK_PATH@ -lucw-charset@UCW_ABI_SUFFIX@${picsuffix}
Requires.private: @DEPS@
Description: UCW image library
Version: @UCW_VERSION@
Cflags: -I${incdir}
-Libs: -L${libdir} -lucw-images@UCW_ABI_SUFFIX@${picsuffix}
+Libs: -L${libdir} @SO_LINK_PATH@ -lucw-images@UCW_ABI_SUFFIX@${picsuffix}
Libs.private: @LIBIMAGES_LIBS@
Requires.private: @DEPS@
Description: A library of utility functions and data structures
Version: @UCW_VERSION@
Cflags: -I${incdir}
-Libs: -L${libdir} -lucw@UCW_ABI_SUFFIX@${picsuffix}
+Libs: -L${libdir} @SO_LINK_PATH@ -lucw@UCW_ABI_SUFFIX@${picsuffix}
Libs.private: @LIBUCW_LIBS@
# Extra flags for compiling and linking shared libraries
Set("CSHARED" => '-fPIC');
+Set("SO_LINK_PATH" => '');
if (IsSet("CONFIG_LOCAL")) {
Set("SONAME_PREFIX" => "lib/");
Append("LOPT" => "-Wl,--rpath-link -Wl,run");
} else {
Set("SONAME_PREFIX" => "");
Append("LOPT" => "-Wl,--rpath-link -Wl,run/lib");
+ if (IsSet("CONFIG_SHARED") && !(Get("INSTALL_LIB_DIR") eq "/usr/lib")) {
+ Set("SO_LINK_PATH" => "-Wl,--rpath " . Get("INSTALL_LIB_DIR"));
+ AtWrite {
+ # FIXME: This is a hack. GCC would otherwise fail to link binaries.
+ my $libdir = Get("INSTALL_LIB_DIR");
+ if (!(-d $libdir)) {
+ `install -d -m 755 $libdir`; Fail("Cannot create $libdir") if $?;
+ }
+ };
+ }
}
if (IsSet("CONFIG_DARWIN")) {
Set("LSHARED" => '-dynamiclib -install_name $(SONAME_PREFIX)$(@F)$(SONAME_SUFFIX) -undefined dynamic_lookup');
Description: XML parser for LibUCW project
Version: @UCW_VERSION@
Cflags: -I${incdir}
-Libs: -L${libdir} -lucw-xml@UCW_ABI_SUFFIX@${picsuffix}
+Libs: -L${libdir} @SO_LINK_PATH@ -lucw-xml@UCW_ABI_SUFFIX@${picsuffix}
Requires.private: @DEPS@