aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac22
-rw-r--r--paludis/Makefile.am.m42
-rw-r--r--paludis/args/Makefile.am2
-rw-r--r--paludis/dep_list/Makefile.am2
-rw-r--r--paludis/digests/Makefile.am2
-rw-r--r--paludis/environments/Makefile.am2
-rw-r--r--paludis/environments/adapted/Makefile.am2
-rw-r--r--paludis/environments/no_config/Makefile.am2
-rw-r--r--paludis/environments/paludis/Makefile.am2
-rw-r--r--paludis/environments/portage/Makefile.am2
-rw-r--r--paludis/environments/test/Makefile.am2
-rw-r--r--paludis/merger/Makefile.am2
-rw-r--r--paludis/qa/Makefile.am.m42
-rw-r--r--paludis/repositories/Makefile.am2
-rw-r--r--paludis/repositories/cran/Makefile.am2
-rw-r--r--paludis/repositories/fake/Makefile.am2
-rw-r--r--paludis/repositories/gems/Makefile.am2
-rw-r--r--paludis/repositories/gentoo/Makefile.am2
-rw-r--r--paludis/repositories/virtuals/Makefile.am2
-rw-r--r--paludis/selinux/Makefile.am2
-rw-r--r--paludis/tasks/Makefile.am2
-rw-r--r--paludis/util/Makefile.am.m42
-rw-r--r--pkg-config/Makefile.am19
-rw-r--r--pkg-config/paludis.pc.in11
25 files changed, 74 insertions, 22 deletions
diff --git a/Makefile.am b/Makefile.am
index 5bf8e1a71..a4cf3e17b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4,7 +4,7 @@ MAINTAINERCLEANFILES = Makefile.in configure config/* aclocal.m4 \
config.h config.h.in INSTALL COPYING
AUTOMAKE_OPTIONS = dist-bzip2 no-dist-gzip std-options
EXTRA_DIST = autogen.bash automake-deps-dist-hack.tmp
-SUBDIRS = misc test paludis python ruby src doc hooks eselect vim bash-completion zsh-completion
+SUBDIRS = misc test paludis python ruby src doc hooks eselect vim bash-completion zsh-completion pkg-config
DISTCHECK_CONFIGURE_FLAGS = --enable-qa --enable-ruby --enable-glsa --enable-vim --enable-python \
--with-ruby-install-dir='$${DESTDIR}$${prefix}/ruby_dir' \
diff --git a/configure.ac b/configure.ac
index 5184f34be..edd06f212 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,6 +24,10 @@ AM_INIT_AUTOMAKE(paludis, [$VERSION_FULL])
AC_LANG([C++])
PALUDIS_CXXFLAGS=
+
+PALUDIS_PC_CFLAGS=
+PALUDIS_PC_LIBS=
+PALUDIS_PC_VERSION=
dnl }}}
dnl {{{ monolithic build
@@ -216,6 +220,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_MEMORY_IS_STD_TR1=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_MEMORY_IS_STD_TR1=1"
],
[AC_MSG_RESULT([no])
AC_MSG_CHECKING([for boost::shared_ptr<>])
@@ -229,6 +234,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_MEMORY_IS_BOOST=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_MEMORY_IS_BOOST=1"
need_pointer_wrappers=yes],
[AC_MSG_RESULT([no])
AC_MSG_ERROR([Your compiler doesn't support tr1 and boost is not installed])])])
@@ -248,6 +254,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_TYPE_TRAITS_IS_STD_TR1=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_TYPE_TRAITS_IS_STD_TR1=1"
],
[AC_MSG_RESULT([no])
AC_MSG_CHECKING([for boost::remove_pointer<>])
@@ -261,6 +268,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_TYPE_TRAITS_IS_BOOST=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_TYPE_TRAITS_IS_BOOST=1"
need_type_traits_wrappers=yes],
[AC_MSG_RESULT([no])
AC_MSG_ERROR([Your compiler doesn't support tr1 and boost is not installed])])])
@@ -292,6 +300,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_FUNCTIONAL_IS_STD_TR1=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_FUNCTIONAL_IS_STD_TR1=1"
],
[AC_MSG_RESULT([no])
AC_MSG_CHECKING([for boost::bind<>])
@@ -317,6 +326,7 @@ int main(int, char **)
],
[AC_MSG_RESULT([yes])
PALUDIS_CXXFLAGS="${PALUDIS_CXXFLAGS} -DPALUDIS_TR1_FUNCTIONAL_IS_BOOST=1"
+ PALUDIS_PC_CFLAGS="${PALUDIS_PC_CFLAGS} -DPALUDIS_TR1_FUNCTIONAL_IS_BOOST=1"
need_bind_wrappers=yes],
[AC_MSG_RESULT([no])
AC_MSG_ERROR([Your compiler doesn't support tr1 and boost is not installed])])])
@@ -1070,6 +1080,17 @@ AC_SUBST([HAVE_GNU_LDCONFIG])
AM_CONDITIONAL([HAVE_GNU_LDCONFIG], test "x$HAVE_GNU_LDCONFIG" = "xyes")
dnl }}}
+dnl {{{ pkg-config
+AC_MSG_RESULT([PALUDIS_PC_CFLAGS])
+AC_SUBST([PALUDIS_PC_CFLAGS])
+PALUDIS_PC_LIBS="-lpaludis -lpaludisutil"
+AC_SUBST([PALUDIS_PC_LIBS])
+PALUDIS_PC_VERSION="${VERSION_FULL}"
+AC_SUBST([PALUDIS_PC_VERSION])
+PALUDIS_PC_SLOT="${VERSION_MAJOR}.${VERSION_MINOR}"
+AC_SUBST([PALUDIS_PC_SLOT])
+dnl }}}
+
dnl {{{ built sources
GENERATED_FILE=misc/generated-file.txt
AC_SUBST_FILE(GENERATED_FILE)
@@ -1134,6 +1155,7 @@ AC_OUTPUT(
paludis/syncers/Makefile
paludis/tasks/Makefile
paludis/util/Makefile
+ pkg-config/Makefile
python/Makefile
ruby/Makefile
ruby/demos/Makefile
diff --git a/paludis/Makefile.am.m4 b/paludis/Makefile.am.m4
index 79cd839e1..23729a326 100644
--- a/paludis/Makefile.am.m4
+++ b/paludis/Makefile.am.m4
@@ -135,7 +135,7 @@ noinst_LTLIBRARIES = libpaludismanpagethings.la
endif
-paludis_includedir = $(includedir)/paludis/
+paludis_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/
paludis_include_HEADERS = headerlist srheaderlist seheaderlist
Makefile.am : Makefile.am.m4 files.m4
diff --git a/paludis/args/Makefile.am b/paludis/args/Makefile.am
index b2ee49410..396598dd5 100644
--- a/paludis/args/Makefile.am
+++ b/paludis/args/Makefile.am
@@ -5,7 +5,7 @@ AM_CXXFLAGS = -I$(top_srcdir) @PALUDIS_CXXFLAGS@ @PALUDIS_CXXFLAGS_VISIBILITY@
TESTS = \
args_TEST
-paludis_args_includedir = $(includedir)/paludis/args/
+paludis_args_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/args/
paludis_args_include_HEADERS = \
args.hh \
diff --git a/paludis/dep_list/Makefile.am b/paludis/dep_list/Makefile.am
index 47a9abda8..a119515d2 100644
--- a/paludis/dep_list/Makefile.am
+++ b/paludis/dep_list/Makefile.am
@@ -13,7 +13,7 @@ DEFS= \
-DDATADIR=\"$(datadir)\" \
-DLIBDIR=\"$(libdir)\"
-paludis_dep_list_includedir = $(includedir)/paludis/dep_list
+paludis_dep_list_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/dep_list
paludis_dep_list_include_HEADERS = \
dep_list.hh \
query_visitor.hh \
diff --git a/paludis/digests/Makefile.am b/paludis/digests/Makefile.am
index fc804eec5..6ef48844b 100644
--- a/paludis/digests/Makefile.am
+++ b/paludis/digests/Makefile.am
@@ -4,7 +4,7 @@ SUBDIRS = .
libexecprogdir = $(libexecdir)/paludis/digests/
-paludis_digests_includedir = $(includedir)/paludis/digests/
+paludis_digests_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/digests/
paludis_digests_include_HEADERS = \
sha256.hh \
diff --git a/paludis/environments/Makefile.am b/paludis/environments/Makefile.am
index db3d70427..c2f965697 100644
--- a/paludis/environments/Makefile.am
+++ b/paludis/environments/Makefile.am
@@ -9,7 +9,7 @@ built-sources : $(BUILT_SOURCES)
lib_LTLIBRARIES = libpaludisenvironments.la
-paludis_environments_includedir = $(includedir)/paludis/environments/
+paludis_environments_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/
paludis_environments_include_HEADERS = \
environment_maker.hh
diff --git a/paludis/environments/adapted/Makefile.am b/paludis/environments/adapted/Makefile.am
index 38fabe2b2..6822935a1 100644
--- a/paludis/environments/adapted/Makefile.am
+++ b/paludis/environments/adapted/Makefile.am
@@ -21,7 +21,7 @@ libpaludisadaptedenvironment_la_LIBADD = \
lib_LTLIBRARIES = libpaludisadaptedenvironment.la
-paludis_environment_adapted_includedir = $(includedir)/paludis/environments/adapted
+paludis_environment_adapted_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/adapted
paludis_environment_adapted_include_HEADERS = \
adapted_environment.hh
diff --git a/paludis/environments/no_config/Makefile.am b/paludis/environments/no_config/Makefile.am
index 3fc49d99f..eb2fa8b1e 100644
--- a/paludis/environments/no_config/Makefile.am
+++ b/paludis/environments/no_config/Makefile.am
@@ -33,7 +33,7 @@ lib_LTLIBRARIES = libpaludisnoconfigenvironment.la
endif
-paludis_environment_no_config_includedir = $(includedir)/paludis/environments/no_config
+paludis_environment_no_config_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/no_config
paludis_environment_no_config_include_HEADERS = \
no_config_environment.hh \
no_config_environment-sr.hh
diff --git a/paludis/environments/paludis/Makefile.am b/paludis/environments/paludis/Makefile.am
index 8707a57d6..2ecea1a93 100644
--- a/paludis/environments/paludis/Makefile.am
+++ b/paludis/environments/paludis/Makefile.am
@@ -46,7 +46,7 @@ libenv_LTLIBRARIES = libpaludispaludisenvironment.la
endif
-paludis_environment_paludis_includedir = $(includedir)/paludis/environments/paludis
+paludis_environment_paludis_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/paludis
paludis_environment_paludis_include_HEADERS = \
paludis_config.hh \
paludis_environment.hh \
diff --git a/paludis/environments/portage/Makefile.am b/paludis/environments/portage/Makefile.am
index 290cda50d..e203577b0 100644
--- a/paludis/environments/portage/Makefile.am
+++ b/paludis/environments/portage/Makefile.am
@@ -28,7 +28,7 @@ libexecenv_SCRIPTS = bashrc
libenv_LTLIBRARIES = libpaludisportageenvironment.la
-paludis_environment_portage_includedir = $(includedir)/paludis/environments/portage
+paludis_environment_portage_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/portage
paludis_environment_portage_include_HEADERS = \
portage_environment.hh
diff --git a/paludis/environments/test/Makefile.am b/paludis/environments/test/Makefile.am
index b02f641cd..78990a1ee 100644
--- a/paludis/environments/test/Makefile.am
+++ b/paludis/environments/test/Makefile.am
@@ -31,7 +31,7 @@ lib_LTLIBRARIES = libpaludistestenvironment.la
endif
-paludis_environment_test_includedir = $(includedir)/paludis/environments/test
+paludis_environment_test_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/environments/test
paludis_environment_test_include_HEADERS = test_environment.hh
built-sources : $(BUILT_SOURCES)
diff --git a/paludis/merger/Makefile.am b/paludis/merger/Makefile.am
index e279289e8..1f8087948 100644
--- a/paludis/merger/Makefile.am
+++ b/paludis/merger/Makefile.am
@@ -14,7 +14,7 @@ DEFS= \
-DDATADIR=\"$(datadir)\" \
-DLIBDIR=\"$(libdir)\"
-paludis_merger_includedir = $(includedir)/paludis/merger
+paludis_merger_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/merger
paludis_merger_include_HEADERS = \
entry_type.hh \
merger.hh \
diff --git a/paludis/qa/Makefile.am.m4 b/paludis/qa/Makefile.am.m4
index 00354cb41..1bd22729e 100644
--- a/paludis/qa/Makefile.am.m4
+++ b/paludis/qa/Makefile.am.m4
@@ -100,7 +100,7 @@ lib_LTLIBRARIES = libpaludisqa.la
endif
-paludis_qaincludedir = $(includedir)/paludis/qa/
+paludis_qaincludedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/qa/
paludis_qainclude_HEADERS = headerlist srheaderlist
endif
diff --git a/paludis/repositories/Makefile.am b/paludis/repositories/Makefile.am
index db733f4ab..e1f0a9d35 100644
--- a/paludis/repositories/Makefile.am
+++ b/paludis/repositories/Makefile.am
@@ -18,7 +18,7 @@ built-sources : $(BUILT_SOURCES)
lib_LTLIBRARIES = libpaludisrepositories.la
-paludis_repositories_includedir = $(includedir)/paludis/repositories/
+paludis_repositories_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/
paludis_repositories_include_HEADERS = \
repository_maker.hh
diff --git a/paludis/repositories/cran/Makefile.am b/paludis/repositories/cran/Makefile.am
index 2df63107c..7610dff5e 100644
--- a/paludis/repositories/cran/Makefile.am
+++ b/paludis/repositories/cran/Makefile.am
@@ -22,7 +22,7 @@ paludis_repositories_lib_LTLIBRARIES = libpaludiscranrepository.la
endif
-paludis_repositories_cran_includedir = $(includedir)/paludis/repositories/cran/
+paludis_repositories_cran_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/cran/
libpaludiscranrepository_la_LDFLAGS = -version-info @VERSION_LIB_CURRENT@:@VERSION_LIB_REVISION@:0
paludis_repositories_cran_include_HEADERS = \
diff --git a/paludis/repositories/fake/Makefile.am b/paludis/repositories/fake/Makefile.am
index dcc3eeb53..4e4bf4cf0 100644
--- a/paludis/repositories/fake/Makefile.am
+++ b/paludis/repositories/fake/Makefile.am
@@ -34,7 +34,7 @@ endif
libpaludisfakerepository_la_LDFLAGS = -version-info @VERSION_LIB_CURRENT@:@VERSION_LIB_REVISION@:0
-paludis_repositories_fake_includedir = $(includedir)/paludis/repositories/fake/
+paludis_repositories_fake_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/fake/
paludis_repositories_fake_include_HEADERS = \
fake_repository.hh \
fake_repository_base.hh \
diff --git a/paludis/repositories/gems/Makefile.am b/paludis/repositories/gems/Makefile.am
index 9cf021884..10c1e3407 100644
--- a/paludis/repositories/gems/Makefile.am
+++ b/paludis/repositories/gems/Makefile.am
@@ -15,7 +15,7 @@ paludis_gems_libexecdir = $(libexecdir)/paludis/gems
paludis_repositories_lib_LTLIBRARIES = libpaludisgemsrepository.la
-paludis_repositories_gems_includedir = $(includedir)/paludis/repositories/gems/
+paludis_repositories_gems_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/gems/
libpaludisgemsrepository_la_LDFLAGS = -version-info @VERSION_LIB_CURRENT@:@VERSION_LIB_REVISION@:0
paludis_repositories_gems_include_HEADERS = \
diff --git a/paludis/repositories/gentoo/Makefile.am b/paludis/repositories/gentoo/Makefile.am
index 5051e079d..39caeeb0c 100644
--- a/paludis/repositories/gentoo/Makefile.am
+++ b/paludis/repositories/gentoo/Makefile.am
@@ -28,7 +28,7 @@ lib_LTLIBRARIES = libpaludisgentoorepositoryxmlthings.la
endif
-paludis_repositories_gentoo_includedir = $(includedir)/paludis/repositories/gentoo/
+paludis_repositories_gentoo_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/gentoo/
libpaludisgentoorepository_la_LDFLAGS = -version-info @VERSION_LIB_CURRENT@:@VERSION_LIB_REVISION@:0
paludis_repositories_gentoo_include_HEADERS = \
diff --git a/paludis/repositories/virtuals/Makefile.am b/paludis/repositories/virtuals/Makefile.am
index ddcde29e0..db4f46872 100644
--- a/paludis/repositories/virtuals/Makefile.am
+++ b/paludis/repositories/virtuals/Makefile.am
@@ -21,7 +21,7 @@ paludis_repositories_lib_LTLIBRARIES = libpaludisvirtualsrepository.la
endif
-paludis_repositories_virtuals_includedir = $(includedir)/paludis/repositories/virtuals/
+paludis_repositories_virtuals_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/repositories/virtuals/
libpaludisvirtualsrepository_la_LDFLAGS = -version-info @VERSION_LIB_CURRENT@:@VERSION_LIB_REVISION@:0
paludis_repositories_virtuals_include_HEADERS = \
diff --git a/paludis/selinux/Makefile.am b/paludis/selinux/Makefile.am
index 3067616d1..8df02e988 100644
--- a/paludis/selinux/Makefile.am
+++ b/paludis/selinux/Makefile.am
@@ -2,7 +2,7 @@ MAINTAINERCLEANFILES = Makefile.in
CLEANFILES = *~
SUBDIRS = .
-paludis_selinux_includedir = $(includedir)/paludis/selinux/
+paludis_selinux_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/selinux/
paludis_selinux_include_HEADERS = \
security_context.hh
diff --git a/paludis/tasks/Makefile.am b/paludis/tasks/Makefile.am
index 37562c791..a07b86dd1 100644
--- a/paludis/tasks/Makefile.am
+++ b/paludis/tasks/Makefile.am
@@ -20,7 +20,7 @@ check_PROGRAMS = $(TESTS)
check_SCRIPTS =
lib_LTLIBRARIES = libpaludistasks.la
-paludis_tasks_includedir = $(includedir)/paludis/tasks
+paludis_tasks_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/tasks
paludis_tasks_include_HEADERS = \
find_unused_packages_task.hh \
install_task.hh \
diff --git a/paludis/util/Makefile.am.m4 b/paludis/util/Makefile.am.m4
index e43637a34..f4de57783 100644
--- a/paludis/util/Makefile.am.m4
+++ b/paludis/util/Makefile.am.m4
@@ -100,7 +100,7 @@ lib_LTLIBRARIES = libpaludisutil.la
endif
-paludis_util_includedir = $(includedir)/paludis/util/
+paludis_util_includedir = $(includedir)/paludis-$(PALUDIS_PC_SLOT)/paludis/util/
paludis_util_include_HEADERS = headerlist srheaderlist seheaderlist
Makefile.am : Makefile.am.m4 files.m4
diff --git a/pkg-config/Makefile.am b/pkg-config/Makefile.am
new file mode 100644
index 000000000..384c9c135
--- /dev/null
+++ b/pkg-config/Makefile.am
@@ -0,0 +1,19 @@
+MAINTAINERCLEANFILES = Makefile.in
+pkgconfigdir = $(libdir)/pkgconfig/
+pkgconfig_DATA = paludis.pc
+EXTRA_DIST = paludis.pc.in
+CLEANFILES = paludis.pc
+
+built-sources : $(BUILT_SOURCES)
+ for s in $(SUBDIRS) ; do $(MAKE) -C $$s built-sources || exit 1 ; done
+
+paludis.pc : paludis.pc.in Makefile
+ sed \
+ -e "s,#PALUDIS_PC_PREFIX#,$(prefix)," \
+ -e "s,#PALUDIS_PC_LIBDIR#,$(libdir)," \
+ -e "s,#PALUDIS_PC_INCLUDEDIR#,$(includedir)/paludis-$(PALUDIS_PC_SLOT)," \
+ -e "s,#PALUDIS_PC_VERSION#,$(PALUDIS_PC_VERSION)," \
+ -e "s,#PALUDIS_PC_LIBS#,$(PALUDIS_PC_LIBS)," \
+ -e "s,#PALUDIS_PC_CFLAGS#,$(PALUDIS_PC_CFLAGS)," \
+ < $(srcdir)/paludis.pc.in > paludis.pc
+
diff --git a/pkg-config/paludis.pc.in b/pkg-config/paludis.pc.in
new file mode 100644
index 000000000..b926c4ac8
--- /dev/null
+++ b/pkg-config/paludis.pc.in
@@ -0,0 +1,11 @@
+prefix=#PALUDIS_PC_PREFIX#
+exec_prefix=${prefix}
+libdir=#PALUDIS_PC_LIBDIR#
+includedir=#PALUDIS_PC_INCLUDEDIR#
+
+Name: Paludis
+Description: The Other Package Mangler
+Version: #PALUDIS_PC_VERSION#
+Libs: -L${libdir} #PALUDIS_PC_LIBS#
+Cflags: -I${includedir} #PALUDIS_PC_CFLAGS#
+