aboutsummaryrefslogtreecommitdiff
path: root/paludis/repositories
diff options
context:
space:
mode:
authorAvatar Saleem Abdulrasool <compnerd@compnerd.org> 2016-07-19 22:50:04 -0700
committerAvatar Saleem Abdulrasool <compnerd@compnerd.org> 2016-11-30 08:25:19 -0800
commita8c9e5d64d9a5a0382fccaa98220d22cbaf9b55f (patch)
treecfded8a49cfc5b7e52ab2615d24a74c5fa7b479e /paludis/repositories
parent9cb3984eb0e0829d4f05b6116f6ae572bc44d21b (diff)
downloadpaludis-a8c9e5d64d9a5a0382fccaa98220d22cbaf9b55f.tar.gz
paludis-a8c9e5d64d9a5a0382fccaa98220d22cbaf9b55f.tar.xz
build: introduce cmake based build system
Diffstat (limited to 'paludis/repositories')
-rw-r--r--paludis/repositories/CMakeLists.txt8
-rw-r--r--paludis/repositories/accounts/CMakeLists.txt17
-rw-r--r--paludis/repositories/e/CMakeLists.txt158
-rw-r--r--paludis/repositories/e/eapis/CMakeLists.txt23
-rw-r--r--paludis/repositories/e/ebuild/0/CMakeLists.txt39
-rw-r--r--paludis/repositories/e/ebuild/1/CMakeLists.txt7
-rw-r--r--paludis/repositories/e/ebuild/2/CMakeLists.txt14
-rw-r--r--paludis/repositories/e/ebuild/3/CMakeLists.txt6
-rw-r--r--paludis/repositories/e/ebuild/4/CMakeLists.txt10
-rw-r--r--paludis/repositories/e/ebuild/5/CMakeLists.txt9
-rw-r--r--paludis/repositories/e/ebuild/6/CMakeLists.txt11
-rw-r--r--paludis/repositories/e/ebuild/CMakeLists.txt35
-rw-r--r--paludis/repositories/e/ebuild/exheres-0/CMakeLists.txt43
-rw-r--r--paludis/repositories/e/ebuild/paludis-1/CMakeLists.txt6
-rw-r--r--paludis/repositories/e/ebuild/pbin-1/CMakeLists.txt7
-rw-r--r--paludis/repositories/e/ebuild/utils/4/CMakeLists.txt17
-rw-r--r--paludis/repositories/e/ebuild/utils/5/CMakeLists.txt7
-rw-r--r--paludis/repositories/e/ebuild/utils/CMakeLists.txt97
-rw-r--r--paludis/repositories/e/ebuild/utils/exheres-0/CMakeLists.txt58
-rw-r--r--paludis/repositories/fake/CMakeLists.txt24
-rw-r--r--paludis/repositories/gemcutter/CMakeLists.txt25
-rw-r--r--paludis/repositories/repository/CMakeLists.txt8
-rw-r--r--paludis/repositories/unavailable/CMakeLists.txt14
-rw-r--r--paludis/repositories/unpackaged/CMakeLists.txt15
-rw-r--r--paludis/repositories/unwritten/CMakeLists.txt13
25 files changed, 671 insertions, 0 deletions
diff --git a/paludis/repositories/CMakeLists.txt b/paludis/repositories/CMakeLists.txt
new file mode 100644
index 000000000..1198e3412
--- /dev/null
+++ b/paludis/repositories/CMakeLists.txt
@@ -0,0 +1,8 @@
+
+foreach(repository ${PALUDIS_ALL_REPOSITORIES})
+ string(TOUPPER ${repository} repository_uppercase)
+ if(ENABLE_${repository_uppercase}_REPOSITORY)
+ add_subdirectory(${repository})
+ endif()
+endforeach()
+
diff --git a/paludis/repositories/accounts/CMakeLists.txt b/paludis/repositories/accounts/CMakeLists.txt
new file mode 100644
index 000000000..0f38ccf35
--- /dev/null
+++ b/paludis/repositories/accounts/CMakeLists.txt
@@ -0,0 +1,17 @@
+
+paludis_add_library(libpaludisaccountsrepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_exceptions.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_handler.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_repository_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_dep_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/accounts_installed_mask.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/installed_accounts_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dummy_accounts_handler.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/passwd_accounts_handler.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+
+paludis_add_test(accounts_repository GTEST)
+
diff --git a/paludis/repositories/e/CMakeLists.txt b/paludis/repositories/e/CMakeLists.txt
new file mode 100644
index 000000000..65a3d44a2
--- /dev/null
+++ b/paludis/repositories/e/CMakeLists.txt
@@ -0,0 +1,158 @@
+
+add_subdirectory(eapis)
+add_subdirectory(ebuild)
+
+if(ENABLE_XML)
+ add_definitions(-DENABLE_XML)
+
+ paludis_add_library(libpaludiserepositoryxmlthings
+ "${CMAKE_CURRENT_SOURCE_DIR}/xml_things.cc")
+ target_include_directories(libpaludiserepositoryxmlthings
+ PRIVATE
+ ${LIBXML2_INCLUDE_DIR})
+ target_link_libraries(libpaludiserepositoryxmlthings
+ PRIVATE
+ ${LIBXML2_LIBRARIES})
+endif()
+
+paludis_add_library(libpaludiserepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/a_finder.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/aa_visitor.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/can_skip_phase.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/check_fetched_files_visitor.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/check_userpriv.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dep_parser.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/do_fetch_action.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/do_info_action.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/do_install_action.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/do_pretend_action.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/do_pretend_fetch_action.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_choice_value.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_installed_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_installed_repository_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_choices_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_keywords_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_mask.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_exceptions.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_news.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_params.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_sets.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_slot_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_string_set_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_stripper.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/eapi.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/eapi_phase.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ebuild.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ebuild_flat_metadata_cache.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ebuild_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/eclass_mtimes.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exndbam_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exndbam_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exheres_layout.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exheres_mask_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exheres_profile.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/extra_distribution_data.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fetch_visitor.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/file_suffixes.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/info_metadata_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/iuse.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pretend_fetch_visitor.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fix_locked_dependencies.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/glsa.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/layout.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/licence_groups.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/make_archive_strings.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/make_use.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/manifest2_reader.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/mask_info.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/memoised_hashes.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/metadata_xml.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/myoption.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/myoptions_requirements_verifier.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/parse_annotations.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/parse_dependency_label.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/parse_plain_text_label.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/parse_uri_label.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin_merger.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/permitted_directories.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pipe_command_handler.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/profile.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/required_use_verifier.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/source_uri_finder.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/spec_tree_pretty_printer.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional_layout.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional_mask_file.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional_mask_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional_profile.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional_profile_file.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/use_desc.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/xml_things_handle.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vdb_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vdb_merger.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vdb_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vdb_unmerger.cc"
+ SE_SOURCES
+ "${CMAKE_CURRENT_SOURCE_DIR}/dep_parser.se"
+ "${CMAKE_CURRENT_SOURCE_DIR}/iuse.se"
+ "${CMAKE_CURRENT_SOURCE_DIR}/e_repository_params.se")
+
+foreach(test
+ aa_visitor
+ dep_parser
+ fix_locked_dependencies
+ source_uri_finder)
+ paludis_add_test(${test} GTEST)
+endforeach()
+foreach(test
+ vdb_repository
+ vdb_repository_TEST_eapis
+ vdb_repository_TEST_cache
+ e_repository
+ e_repository_TEST_0
+ e_repository_TEST_1
+ e_repository_TEST_2
+ e_repository_TEST_3
+ e_repository_TEST_4
+ e_repository_TEST_5
+ e_repository_TEST_6
+ e_repository_TEST_ever
+ e_repository_TEST_exheres_0
+ e_repository_TEST_exlibs
+ e_repository_TEST_phases
+ e_repository_TEST_replacing
+ e_repository_TEST_symlink_rewriting
+ exndbam_repository
+ depend_rdepend
+ e_repository_sets
+ ebuild_flat_metadata_cache
+ fetch_visitor
+ vdb_merger
+ vdb_unmerger)
+ paludis_add_test(${test} GTEST)
+endforeach()
+
+if(ENABLE_XML)
+ paludis_add_test(xml_things GTEST)
+endif()
+
+if(ENABLE_PBINS)
+ paludis_add_test(e_repository_TEST_pbin GTEST)
+endif()
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/traditional.exclude"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ebuild_entries_suffixes.conf"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_DATADIR}/paludis")
+if(ENABLE_XML)
+ install(TARGETS
+ libpaludiserepositoryxmlthings
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBDIR}")
+endif()
+
diff --git a/paludis/repositories/e/eapis/CMakeLists.txt b/paludis/repositories/e/eapis/CMakeLists.txt
new file mode 100644
index 000000000..2b818d6b8
--- /dev/null
+++ b/paludis/repositories/e/eapis/CMakeLists.txt
@@ -0,0 +1,23 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/0.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/1.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/2.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/3.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/4.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/5.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/6.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exheres-0.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/paludis-1.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+0.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+1.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+2.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+3.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+4.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+5.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+6.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+exheres-0.conf"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pbin-1+paludis-1.conf"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_DATADIR}/paludis/eapis")
+
diff --git a/paludis/repositories/e/ebuild/0/CMakeLists.txt b/paludis/repositories/e/ebuild/0/CMakeLists.txt
new file mode 100644
index 000000000..dba97c2e2
--- /dev/null
+++ b/paludis/repositories/e/ebuild/0/CMakeLists.txt
@@ -0,0 +1,39 @@
+
+paludis_add_test(conditional_functions BASH EBUILD_MODULE_SUFFIXES 0)
+paludis_add_test(list_functions BASH EBUILD_MODULE_SUFFIXES 0)
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/build_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_infovars.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_init.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_initrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_initmisc.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_loadenv.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_metadata.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_killold.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_killoldrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_saveenv.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_tidyup.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_tidyuprm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_variable.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/conditional_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/eclass_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/list_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_config.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_info.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_nofetch.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_postinst.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_postrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_preinst.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_prerm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_pretend.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_setup.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/portage_stubs.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_compile.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_install.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_test.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_unpack.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/0")
+
diff --git a/paludis/repositories/e/ebuild/1/CMakeLists.txt b/paludis/repositories/e/ebuild/1/CMakeLists.txt
new file mode 100644
index 000000000..124992bbd
--- /dev/null
+++ b/paludis/repositories/e/ebuild/1/CMakeLists.txt
@@ -0,0 +1,7 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_compile.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/1")
+
diff --git a/paludis/repositories/e/ebuild/2/CMakeLists.txt b/paludis/repositories/e/ebuild/2/CMakeLists.txt
new file mode 100644
index 000000000..4e2987b58
--- /dev/null
+++ b/paludis/repositories/e/ebuild/2/CMakeLists.txt
@@ -0,0 +1,14 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/eclass_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_nofetch.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_compile.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_configure.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_install.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_prepare.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_test.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_unpack.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/2")
+
diff --git a/paludis/repositories/e/ebuild/3/CMakeLists.txt b/paludis/repositories/e/ebuild/3/CMakeLists.txt
new file mode 100644
index 000000000..0cf81f5a8
--- /dev/null
+++ b/paludis/repositories/e/ebuild/3/CMakeLists.txt
@@ -0,0 +1,6 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/3")
+
diff --git a/paludis/repositories/e/ebuild/4/CMakeLists.txt b/paludis/repositories/e/ebuild/4/CMakeLists.txt
new file mode 100644
index 000000000..1523c4690
--- /dev/null
+++ b/paludis/repositories/e/ebuild/4/CMakeLists.txt
@@ -0,0 +1,10 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_bad_required_use.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_pretend.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_install.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/die_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/4")
+
diff --git a/paludis/repositories/e/ebuild/5/CMakeLists.txt b/paludis/repositories/e/ebuild/5/CMakeLists.txt
new file mode 100644
index 000000000..767dc4efa
--- /dev/null
+++ b/paludis/repositories/e/ebuild/5/CMakeLists.txt
@@ -0,0 +1,9 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_test.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/usex.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/list_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/5")
+
diff --git a/paludis/repositories/e/ebuild/6/CMakeLists.txt b/paludis/repositories/e/ebuild/6/CMakeLists.txt
new file mode 100644
index 000000000..8693c86b6
--- /dev/null
+++ b/paludis/repositories/e/ebuild/6/CMakeLists.txt
@@ -0,0 +1,11 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/build_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/list_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/multilib_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_install.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_prepare.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/6")
+
diff --git a/paludis/repositories/e/ebuild/CMakeLists.txt b/paludis/repositories/e/ebuild/CMakeLists.txt
new file mode 100644
index 000000000..f30533451
--- /dev/null
+++ b/paludis/repositories/e/ebuild/CMakeLists.txt
@@ -0,0 +1,35 @@
+
+add_subdirectory(0)
+add_subdirectory(1)
+add_subdirectory(2)
+add_subdirectory(3)
+add_subdirectory(4)
+add_subdirectory(5)
+add_subdirectory(6)
+add_subdirectory(exheres-0)
+add_subdirectory(paludis-1)
+add_subdirectory(pbin-1)
+add_subdirectory(utils)
+
+paludis_add_test(kernel_functions BASH
+ EBUILD_MODULE_SUFFIXES 0
+ TEST_RUNNER "${CMAKE_CURRENT_SOURCE_DIR}/run_test.bash")
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/binary_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/die_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ebuild.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/kernel_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/install_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/multilib_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pipe_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/sandbox.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/sydbox.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/source_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/usage_error.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/write_vdb_entry.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/write_binary_ebuild.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis")
+
diff --git a/paludis/repositories/e/ebuild/exheres-0/CMakeLists.txt b/paludis/repositories/e/ebuild/exheres-0/CMakeLists.txt
new file mode 100644
index 000000000..4d114d474
--- /dev/null
+++ b/paludis/repositories/e/ebuild/exheres-0/CMakeLists.txt
@@ -0,0 +1,43 @@
+
+paludis_add_test(conditional_functions BASH EBUILD_MODULE_SUFFIXES exheres-0)
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/build_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_infovars.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_init.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_initrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_initmisc.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_loadenv.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_metadata.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_killold.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_killoldrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_saveenv.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_tidyup.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_variable.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/conditional_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ever_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/exlib_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/list_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_bad_options.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_config.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_info.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_nofetch.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_postinst.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_postrm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_preinst.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_prerm.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_pretend.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/pkg_setup.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/portage_stubs.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_compile.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_configure.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_fetch_extra.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_install.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_test.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_test_expensive.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_prepare.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/src_unpack.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/exheres-0")
+
diff --git a/paludis/repositories/e/ebuild/paludis-1/CMakeLists.txt b/paludis/repositories/e/ebuild/paludis-1/CMakeLists.txt
new file mode 100644
index 000000000..101a0b5b0
--- /dev/null
+++ b/paludis/repositories/e/ebuild/paludis-1/CMakeLists.txt
@@ -0,0 +1,6 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/output_functions.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/paludis-1")
+
diff --git a/paludis/repositories/e/ebuild/pbin-1/CMakeLists.txt b/paludis/repositories/e/ebuild/pbin-1/CMakeLists.txt
new file mode 100644
index 000000000..4d4dc44a2
--- /dev/null
+++ b/paludis/repositories/e/ebuild/pbin-1/CMakeLists.txt
@@ -0,0 +1,7 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_installbin.bash"
+ "${CMAKE_CURRENT_SOURCE_DIR}/builtin_pivotbin.bash"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/pbin-1")
+
diff --git a/paludis/repositories/e/ebuild/utils/4/CMakeLists.txt b/paludis/repositories/e/ebuild/utils/4/CMakeLists.txt
new file mode 100644
index 000000000..9fedda764
--- /dev/null
+++ b/paludis/repositories/e/ebuild/utils/4/CMakeLists.txt
@@ -0,0 +1,17 @@
+
+foreach(bannedscript
+ dohard
+ dosed)
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/banned_in_eapi_4"
+ "${CMAKE_CURRENT_BINARY_DIR}/${bannedscript}"
+ @ONLY)
+endforeach()
+
+install(PROGRAMS
+ "${CMAKE_CURRENT_SOURCE_DIR}/docompress"
+ "${CMAKE_CURRENT_BINARY_DIR}/dohard"
+ "${CMAKE_CURRENT_BINARY_DIR}/dosed"
+ "${CMAKE_CURRENT_SOURCE_DIR}/banned_in_eapi_4"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils/4")
+
diff --git a/paludis/repositories/e/ebuild/utils/5/CMakeLists.txt b/paludis/repositories/e/ebuild/utils/5/CMakeLists.txt
new file mode 100644
index 000000000..29a19c70e
--- /dev/null
+++ b/paludis/repositories/e/ebuild/utils/5/CMakeLists.txt
@@ -0,0 +1,7 @@
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/doheader"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newheader"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils/5")
+
diff --git a/paludis/repositories/e/ebuild/utils/CMakeLists.txt b/paludis/repositories/e/ebuild/utils/CMakeLists.txt
new file mode 100644
index 000000000..9b34bedf1
--- /dev/null
+++ b/paludis/repositories/e/ebuild/utils/CMakeLists.txt
@@ -0,0 +1,97 @@
+
+add_subdirectory(4)
+add_subdirectory(5)
+add_subdirectory(exheres-0)
+
+foreach(prep all;allstrip;allman;allinfo;strip;man;info;docs;alldocs)
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/prep.in"
+ "${CMAKE_CURRENT_BINARY_DIR}/prep${prep}"
+ @ONLY)
+endforeach()
+
+if(ENABLE_PBINS)
+ add_executable(unpaxinate
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpaxinate.cc")
+ target_link_libraries(unpaxinate
+ PRIVATE
+ ${LibArchive_LIBRARIES})
+endif()
+
+add_executable(print_exports
+ "${CMAKE_CURRENT_SOURCE_DIR}/print_exports.cc")
+add_executable(locked_pipe_command
+ "${CMAKE_CURRENT_SOURCE_DIR}/locked_pipe_command.cc")
+add_executable(strip_tar_corruption
+ "${CMAKE_CURRENT_SOURCE_DIR}/strip_tar_corruption.cc")
+
+paludis_add_test(wrapped_getfsize BASH
+ EBUILD_MODULE_SUFFIXES 0
+ TEST_RUNNER "${CMAKE_CURRENT_SOURCE_DIR}/run_test.bash")
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/canonicalise"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dobin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doconfd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dodir"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dodoc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doenvd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doexe"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dohard"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dohtml"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doinfo"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doinitd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doins"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dolib"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dolib.a"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dolib.so"
+ "${CMAKE_CURRENT_SOURCE_DIR}/doman"
+ "${CMAKE_CURRENT_SOURCE_DIR}/domo"
+ "${CMAKE_CURRENT_SOURCE_DIR}/donewins"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dosbin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dosed"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dosym"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ecompress"
+ "${CMAKE_CURRENT_SOURCE_DIR}/ecompressdir"
+ "${CMAKE_CURRENT_SOURCE_DIR}/emake"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fowners"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fperms"
+ "${CMAKE_CURRENT_SOURCE_DIR}/keepdir"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newbin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newconfd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newdoc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newenvd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newexe"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newinitd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newins"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newlib.a"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newlib.so"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newman"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newsbin"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepall"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallstrip"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepstrip"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallman"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepman"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallinfo"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepinfo"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepdocs"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepalldocs"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpack"
+ "${CMAKE_CURRENT_SOURCE_DIR}/wrapped_ldconfig"
+ "${CMAKE_CURRENT_SOURCE_DIR}/wrapped_getfsize"
+ "${CMAKE_CURRENT_SOURCE_DIR}/wrapped_getmtime"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils")
+install(TARGETS
+ print_exports
+ locked_pipe_command
+ strip_tar_corruption
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils")
+if(ENABLE_PBINS)
+ install(TARGETS
+ unpaxinate
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils")
+endif()
+
diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/CMakeLists.txt b/paludis/repositories/e/ebuild/utils/exheres-0/CMakeLists.txt
new file mode 100644
index 000000000..ca219ec2d
--- /dev/null
+++ b/paludis/repositories/e/ebuild/utils/exheres-0/CMakeLists.txt
@@ -0,0 +1,58 @@
+
+foreach(bannedscript
+ prepall
+ prepallstrip
+ prepstrip
+ prepallman
+ prepman
+ prepallinfo
+ prepinfo
+ prepdocs
+ prepalldocs
+ dohard
+ donewins
+ dosed
+ dohtml
+ ecompress
+ ecompressdir
+ fperms
+ fowners)
+ configure_file("${CMAKE_CURRENT_SOURCE_DIR}/banned_in_eapi_exheres-0"
+ "${CMAKE_CURRENT_BINARY_DIR}/${bannedscript}"
+ @ONLY)
+endforeach()
+
+install(PROGRAMS
+ "${CMAKE_CURRENT_BINARY_DIR}/dohard"
+ "${CMAKE_CURRENT_BINARY_DIR}/dohtml"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dolib"
+ "${CMAKE_CURRENT_SOURCE_DIR}/dosbin"
+ "${CMAKE_CURRENT_BINARY_DIR}/dosed"
+ "${CMAKE_CURRENT_BINARY_DIR}/donewins"
+ "${CMAKE_CURRENT_SOURCE_DIR}/emake"
+ "${CMAKE_CURRENT_BINARY_DIR}/fperms"
+ "${CMAKE_CURRENT_BINARY_DIR}/fowners"
+ "${CMAKE_CURRENT_SOURCE_DIR}/herebin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/hereconfd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/hereenvd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/hereinitd"
+ "${CMAKE_CURRENT_SOURCE_DIR}/hereins"
+ "${CMAKE_CURRENT_SOURCE_DIR}/heresbin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/newsbin"
+ "${CMAKE_CURRENT_SOURCE_DIR}/nonfatal"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepall"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallstrip"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepstrip"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallman"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepman"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepallinfo"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepinfo"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepdocs"
+ "${CMAKE_CURRENT_BINARY_DIR}/prepalldocs"
+ "${CMAKE_CURRENT_BINARY_DIR}/ecompress"
+ "${CMAKE_CURRENT_BINARY_DIR}/ecompressdir"
+ "${CMAKE_CURRENT_SOURCE_DIR}/strip"
+ "${CMAKE_CURRENT_SOURCE_DIR}/banned_in_eapi_exheres-0"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBEXECDIR}/paludis/utils/exheres-0")
+
diff --git a/paludis/repositories/fake/CMakeLists.txt b/paludis/repositories/fake/CMakeLists.txt
new file mode 100644
index 000000000..2dfbc9f1e
--- /dev/null
+++ b/paludis/repositories/fake/CMakeLists.txt
@@ -0,0 +1,24 @@
+
+paludis_add_library(libpaludisfakerepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/dep_parser.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_repository_base.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_installed_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_package_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+add_dependencies(libpaludisfakerepository libpaludisutil_SE)
+
+paludis_add_test(fake_repository GTEST)
+paludis_add_test(fake_installed_repository GTEST)
+# paludis_add_test(dep_parser)
+
+install(FILES
+ "${CMAKE_CURRENT_SOURCE_DIR}/dep_parser.hh"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_repository.hh"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_repository_base.hh"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_installed_repository.hh"
+ "${CMAKE_CURRENT_SOURCE_DIR}/fake_package_id.hh"
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_INCLUDEDIR}/paludis-${PALUDIS_PKG_CONFIG_SLOT}/paludis/repositories/fake")
+
diff --git a/paludis/repositories/gemcutter/CMakeLists.txt b/paludis/repositories/gemcutter/CMakeLists.txt
new file mode 100644
index 000000000..cca527b8f
--- /dev/null
+++ b/paludis/repositories/gemcutter/CMakeLists.txt
@@ -0,0 +1,25 @@
+
+paludis_add_library(libpaludisgemcutterrepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/gemcutter_dependencies_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/gemcutter_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/gemcutter_uri_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/gemcutter_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/gemcutter_repository_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/json_common.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/json_things_handle.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+
+paludis_add_library(libpaludisgemcutterrepositoryjsonthings
+ json_things.cc)
+target_include_directories(libpaludisgemcutterrepositoryjsonthings
+ PRIVATE
+ ${Jansson_INCLUDE_DIRS})
+target_link_libraries(libpaludisgemcutterrepositoryjsonthings
+ PRIVATE
+ ${Jansson_LIBRARIES})
+
+install(TARGETS
+ libpaludisgemcutterrepositoryjsonthings
+ DESTINATION
+ "${CMAKE_INSTALL_FULL_LIBDIR}")
diff --git a/paludis/repositories/repository/CMakeLists.txt b/paludis/repositories/repository/CMakeLists.txt
new file mode 100644
index 000000000..b8cff913d
--- /dev/null
+++ b/paludis/repositories/repository/CMakeLists.txt
@@ -0,0 +1,8 @@
+
+paludis_add_library(libpaludisrepositoryrepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/repository_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/repository_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/repository_repository_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+
diff --git a/paludis/repositories/unavailable/CMakeLists.txt b/paludis/repositories/unavailable/CMakeLists.txt
new file mode 100644
index 000000000..6fad5cc7b
--- /dev/null
+++ b/paludis/repositories/unavailable/CMakeLists.txt
@@ -0,0 +1,14 @@
+
+paludis_add_library(libpaludisunavailablerepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_package_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_repository_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_repository_dependencies_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_mask.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_repository_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unavailable_repository_file.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+
+paludis_add_test(unavailable_repository GTEST)
+
diff --git a/paludis/repositories/unpackaged/CMakeLists.txt b/paludis/repositories/unpackaged/CMakeLists.txt
new file mode 100644
index 000000000..e2361f45d
--- /dev/null
+++ b/paludis/repositories/unpackaged/CMakeLists.txt
@@ -0,0 +1,15 @@
+
+paludis_add_library(libpaludisunpackagedrepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/exceptions.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpackaged_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpackaged_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpackaged_key.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unpackaged_stripper.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/installed_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/installed_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+
+paludis_add_test(unpackaged_repository GTEST)
+paludis_add_test(installed_repository GTEST)
+
diff --git a/paludis/repositories/unwritten/CMakeLists.txt b/paludis/repositories/unwritten/CMakeLists.txt
new file mode 100644
index 000000000..61d223ae3
--- /dev/null
+++ b/paludis/repositories/unwritten/CMakeLists.txt
@@ -0,0 +1,13 @@
+
+paludis_add_library(libpaludisunwrittenrepository
+ OBJECT_LIBRARY
+ "${CMAKE_CURRENT_SOURCE_DIR}/unwritten_repository.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unwritten_id.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unwritten_mask.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unwritten_repository_store.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/unwritten_repository_file.cc"
+ "${CMAKE_CURRENT_SOURCE_DIR}/registration.cc")
+add_dependencies(libpaludisunwrittenrepository libpaludisutil_SE)
+
+paludis_add_test(unwritten_repository GTEST)
+