diff --git a/subr/pkg_install_pkgconfig.subr b/subr/pkg_install_pkgconfig.subr
index 43c0d60..432c1d6 100644
--- a/subr/pkg_install_pkgconfig.subr
+++ b/subr/pkg_install_pkgconfig.subr
@@ -6,7 +6,7 @@ pkg_install_pkgconfig() {
 	local _pc_path;
 	for _pc_path in $(find "${PKG_DESTDIR}" -name \*.pc); do 
 		if grep -Eq '^libdir=[^$]+$' "${_pc_path}"; then
-			sed -i	-e '/^libdir=[^$]\+$/s/^libdir=\(.\+\)$/libdir=${exec_prefix}\1/'	\
+			sed -i"" -e '/^libdir=[^$]\+$/s/^libdir=\(.\+\)$/libdir=${exec_prefix}\1/'	\
 				-e '/^exec_prefix=$/s/^.*$/exec_prefix=${prefix}/'			\
 					"${_pc_path}";
 		fi;
diff --git a/vars/glib.vars b/vars/glib.vars
new file mode 100644
index 0000000..86de74e
--- /dev/null
+++ b/vars/glib.vars
@@ -0,0 +1,17 @@
+#
+# set -o errexit -o noglob are assumed.
+#
+
+pkg_glib_install_pkgconfig_post() {
+	local _pc_path;
+	for _pc_path in $(find "${PKG_DESTDIR}"/lib/pkgconfig -name \*.pc); do
+		sed -i"" -e '/^Libs:\s/s/-L\${libdir}/& -lffi -lpcre -lz/'	\
+			"${_pc_path}";
+	done;
+};
+
+pkg_glib_host_install_pkgconfig_post() {
+	pkg_glib_install_pkgconfig_post;
+};
+
+# vim:filetype=sh
diff --git a/vars/glib_host.vars b/vars/glib_host.vars
new file mode 120000
index 0000000..e3369ea
--- /dev/null
+++ b/vars/glib_host.vars
@@ -0,0 +1 @@
+glib.vars
\ No newline at end of file