From c71344185cc93d9322513a1d9506cb14b1c308a2 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Fri, 9 Oct 2026 00:59:02 +0000 Subject: But this day is not today, so screw it. We gotta keep em separated --- package/deps.mak | 25 ++++++++++++------------- src/include/s6-rc/repo.h | 2 ++ src/include/s6-rc/s6rc-utils.h | 16 ++++++++++++++-- src/libs6rc/deps-lib/s6rc | 2 -- src/libs6rc/s6rc_get_major.c | 21 --------------------- src/libs6rc/s6rc_read_major.c | 30 ------------------------------ src/repo/deps-lib/s6rcrepo | 3 +-- src/repo/s6rc_repo_read_major.c | 30 ++++++++++++++++++++++++++++++ src/repo/s6rc_repo_setuptodate.c | 2 +- 9 files changed, 60 insertions(+), 71 deletions(-) delete mode 100644 src/libs6rc/s6rc_get_major.c delete mode 100644 src/libs6rc/s6rc_read_major.c create mode 100644 src/repo/s6rc_repo_read_major.c diff --git a/package/deps.mak b/package/deps.mak index b1dbbf1..16e54b6 100644 --- a/package/deps.mak +++ b/package/deps.mak @@ -10,7 +10,6 @@ src/libs6rc/s6rc_db_check_revdeps.o src/libs6rc/s6rc_db_check_revdeps.lo: src/li src/libs6rc/s6rc_db_read.o src/libs6rc/s6rc_db_read.lo: src/libs6rc/s6rc_db_read.c src/include/s6-rc/s6rc-db.h src/libs6rc/s6rc_db_read_sizes.o src/libs6rc/s6rc_db_read_sizes.lo: src/libs6rc/s6rc_db_read_sizes.c src/include/s6-rc/s6rc-db.h src/libs6rc/s6rc_db_read_uint32.o src/libs6rc/s6rc_db_read_uint32.lo: src/libs6rc/s6rc_db_read_uint32.c src/include/s6-rc/s6rc-db.h -src/libs6rc/s6rc_get_major.o src/libs6rc/s6rc_get_major.lo: src/libs6rc/s6rc_get_major.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_graph_clean.o src/libs6rc/s6rc_graph_clean.lo: src/libs6rc/s6rc_graph_clean.c src/include/s6-rc/s6rc-db.h src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_graph_closure.o src/libs6rc/s6rc_graph_closure.lo: src/libs6rc/s6rc_graph_closure.c src/include/s6-rc/s6rc-db.h src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_live_state_read.o src/libs6rc/s6rc_live_state_read.lo: src/libs6rc/s6rc_live_state_read.c src/include/s6-rc/s6rc-db.h src/include/s6-rc/s6rc-utils.h @@ -20,7 +19,6 @@ src/libs6rc/s6rc_livedir_create.o src/libs6rc/s6rc_livedir_create.lo: src/libs6r src/libs6rc/s6rc_livedir_prefix.o src/libs6rc/s6rc_livedir_prefix.lo: src/libs6rc/s6rc_livedir_prefix.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_livedir_prefixsize.o src/libs6rc/s6rc_livedir_prefixsize.lo: src/libs6rc/s6rc_livedir_prefixsize.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_lock.o src/libs6rc/s6rc_lock.lo: src/libs6rc/s6rc_lock.c src/include/s6-rc/s6rc-utils.h -src/libs6rc/s6rc_read_major.o src/libs6rc/s6rc_read_major.lo: src/libs6rc/s6rc_read_major.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_read_uint.o src/libs6rc/s6rc_read_uint.lo: src/libs6rc/s6rc_read_uint.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_sanitize_dir.o src/libs6rc/s6rc_sanitize_dir.lo: src/libs6rc/s6rc_sanitize_dir.c src/include/s6-rc/s6rc-utils.h src/libs6rc/s6rc_servicedir_block.o src/libs6rc/s6rc_servicedir_block.lo: src/libs6rc/s6rc_servicedir_block.c src/include/s6-rc/s6rc-servicedir.h @@ -64,6 +62,7 @@ src/repo/s6rc_repo_makestores.o src/repo/s6rc_repo_makestores.lo: src/repo/s6rc_ src/repo/s6rc_repo_makesvlist.o src/repo/s6rc_repo_makesvlist.lo: src/repo/s6rc_repo_makesvlist.c src/include/s6-rc/repo.h src/repo/s6rc_repo_makesvlist_byname.o src/repo/s6rc_repo_makesvlist_byname.lo: src/repo/s6rc_repo_makesvlist_byname.c src/include/s6-rc/repo.h src/repo/s6rc_repo_moveservices.o src/repo/s6rc_repo_moveservices.lo: src/repo/s6rc_repo_moveservices.c src/include/s6-rc/repo.h +src/repo/s6rc_repo_read_major.o src/repo/s6rc_repo_read_major.lo: src/repo/s6rc_repo_read_major.c src/include/s6-rc/repo.h src/repo/s6rc_repo_removeinternals.o src/repo/s6rc_repo_removeinternals.lo: src/repo/s6rc_repo_removeinternals.c src/include/s6-rc/repo.h src/repo/s6rc_repo_rxnames.o src/repo/s6rc_repo_rxnames.lo: src/repo/s6rc_repo_rxnames.c src/include/s6-rc/repo.h src/repo/s6rc_repo_sanitize_setname.o src/repo/s6rc_repo_sanitize_setname.lo: src/repo/s6rc_repo_sanitize_setname.c src/include/s6-rc/repo.h @@ -92,25 +91,25 @@ src/s6-rc/s6-rc-update.o src/s6-rc/s6-rc-update.lo: src/s6-rc/s6-rc-update.c src src/s6-rc/s6-rc.o src/s6-rc/s6-rc.lo: src/s6-rc/s6-rc.c src/include/s6-rc/config.h src/include/s6-rc/s6rc.h ifeq ($(strip $(STATIC_LIBS_ARE_PIC)),) -libs6rc.a.xyzzy: src/libs6rc/s6rc_db_check_depcycles.o src/libs6rc/s6rc_db_check_pipelines.o src/libs6rc/s6rc_db_check_revdeps.o src/libs6rc/s6rc_db_read.o src/libs6rc/s6rc_db_read_sizes.o src/libs6rc/s6rc_db_read_uint32.o src/libs6rc/s6rc_get_major.o src/libs6rc/s6rc_graph_closure.o src/libs6rc/s6rc_graph_clean.o src/libs6rc/s6rc_live_state_size.o src/libs6rc/s6rc_live_state_read.o src/libs6rc/s6rc_livedir_canon.o src/libs6rc/s6rc_livedir_create.o src/libs6rc/s6rc_livedir_prefix.o src/libs6rc/s6rc_livedir_prefixsize.o src/libs6rc/s6rc_lock.o src/libs6rc/s6rc_read_major.o src/libs6rc/s6rc_read_uint.o src/libs6rc/s6rc_sanitize_dir.o src/libs6rc/s6rc_servicedir_internal.o src/libs6rc/s6rc_servicedir_block.o src/libs6rc/s6rc_servicedir_unblock.o src/libs6rc/s6rc_servicedir_copy_offline.o src/libs6rc/s6rc_servicedir_copy_online.o src/libs6rc/s6rc_servicedir_manage.o src/libs6rc/s6rc_servicedir_unsupervise.o +libs6rc.a.xyzzy: src/libs6rc/s6rc_db_check_depcycles.o src/libs6rc/s6rc_db_check_pipelines.o src/libs6rc/s6rc_db_check_revdeps.o src/libs6rc/s6rc_db_read.o src/libs6rc/s6rc_db_read_sizes.o src/libs6rc/s6rc_db_read_uint32.o src/libs6rc/s6rc_graph_closure.o src/libs6rc/s6rc_graph_clean.o src/libs6rc/s6rc_live_state_size.o src/libs6rc/s6rc_live_state_read.o src/libs6rc/s6rc_livedir_canon.o src/libs6rc/s6rc_livedir_create.o src/libs6rc/s6rc_livedir_prefix.o src/libs6rc/s6rc_livedir_prefixsize.o src/libs6rc/s6rc_lock.o src/libs6rc/s6rc_read_uint.o src/libs6rc/s6rc_sanitize_dir.o src/libs6rc/s6rc_servicedir_internal.o src/libs6rc/s6rc_servicedir_block.o src/libs6rc/s6rc_servicedir_unblock.o src/libs6rc/s6rc_servicedir_copy_offline.o src/libs6rc/s6rc_servicedir_copy_online.o src/libs6rc/s6rc_servicedir_manage.o src/libs6rc/s6rc_servicedir_unsupervise.o else -libs6rc.a.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_get_major.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_major.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo +libs6rc.a.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo endif libs6rc.pc: EXTRA_LIBS := -ls6 -lskarnet ${SPAWN_LIB} libs6rc.so.xyzzy: EXTRA_LIBS := -ls6 -lskarnet ${SPAWN_LIB} -libs6rc.so.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_get_major.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_major.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo +libs6rc.so.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo libs6rc.dylib.xyzzy: EXTRA_LIBS := -ls6 -lskarnet ${SPAWN_LIB} -libs6rc.dylib.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_get_major.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_major.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo +libs6rc.dylib.xyzzy:src/libs6rc/s6rc_db_check_depcycles.lo src/libs6rc/s6rc_db_check_pipelines.lo src/libs6rc/s6rc_db_check_revdeps.lo src/libs6rc/s6rc_db_read.lo src/libs6rc/s6rc_db_read_sizes.lo src/libs6rc/s6rc_db_read_uint32.lo src/libs6rc/s6rc_graph_closure.lo src/libs6rc/s6rc_graph_clean.lo src/libs6rc/s6rc_live_state_size.lo src/libs6rc/s6rc_live_state_read.lo src/libs6rc/s6rc_livedir_canon.lo src/libs6rc/s6rc_livedir_create.lo src/libs6rc/s6rc_livedir_prefix.lo src/libs6rc/s6rc_livedir_prefixsize.lo src/libs6rc/s6rc_lock.lo src/libs6rc/s6rc_read_uint.lo src/libs6rc/s6rc_sanitize_dir.lo src/libs6rc/s6rc_servicedir_internal.lo src/libs6rc/s6rc_servicedir_block.lo src/libs6rc/s6rc_servicedir_unblock.lo src/libs6rc/s6rc_servicedir_copy_offline.lo src/libs6rc/s6rc_servicedir_copy_online.lo src/libs6rc/s6rc_servicedir_manage.lo src/libs6rc/s6rc_servicedir_unsupervise.lo ifeq ($(strip $(STATIC_LIBS_ARE_PIC)),) -libs6rcrepo.a.xyzzy: src/repo/s6rc_repo_badpipeline.o src/repo/s6rc_repo_badrx.o src/repo/s6rc_repo_checkset.o src/repo/s6rc_repo_cleanup.o src/repo/s6rc_repo_compile.o src/repo/s6rc_repo_fillset.o src/repo/s6rc_repo_fixset.o src/repo/s6rc_repo_flattenservices.o src/repo/s6rc_repo_getserviceflags.o src/repo/s6rc_repo_list_sets.o src/repo/s6rc_repo_listalldeps.o src/repo/s6rc_repo_listcontents.o src/repo/s6rc_repo_listdeps.o src/repo/s6rc_repo_listdeps_internal.o src/repo/s6rc_repo_listrx.o src/repo/s6rc_repo_lock.o src/repo/s6rc_repo_ls.o src/repo/s6rc_repo_makedefbundle.o src/repo/s6rc_repo_makesetbundles.o src/repo/s6rc_repo_makestores.o src/repo/s6rc_repo_makesvlist.o src/repo/s6rc_repo_makesvlist_byname.o src/repo/s6rc_repo_moveservices.o src/repo/s6rc_repo_removeinternals.o src/repo/s6rc_repo_rxnames.o src/repo/s6rc_repo_sanitize_setname.o src/repo/s6rc_repo_sanitize_svname.o src/repo/s6rc_repo_setcompile.o src/repo/s6rc_repo_setcopy.o src/repo/s6rc_repo_setdelete.o src/repo/s6rc_repo_setuptodate.o src/repo/s6rc_repo_sv_bcmpr.o src/repo/s6rc_repo_sv_cmpr.o src/repo/s6rc_repo_sync.o src/repo/s6rc_repo_syncset.o src/repo/s6rc_repo_syncset_tmp.o src/repo/s6rc_repo_touch.o src/repo/s6rc_repo_touchset.o src/repo/s6rc_repo_type_check.o +libs6rcrepo.a.xyzzy: src/repo/s6rc_repo_badpipeline.o src/repo/s6rc_repo_badrx.o src/repo/s6rc_repo_checkset.o src/repo/s6rc_repo_cleanup.o src/repo/s6rc_repo_compile.o src/repo/s6rc_repo_fillset.o src/repo/s6rc_repo_fixset.o src/repo/s6rc_repo_flattenservices.o src/repo/s6rc_repo_getserviceflags.o src/repo/s6rc_repo_list_sets.o src/repo/s6rc_repo_listalldeps.o src/repo/s6rc_repo_listcontents.o src/repo/s6rc_repo_listdeps.o src/repo/s6rc_repo_listdeps_internal.o src/repo/s6rc_repo_listrx.o src/repo/s6rc_repo_lock.o src/repo/s6rc_repo_ls.o src/repo/s6rc_repo_makedefbundle.o src/repo/s6rc_repo_makesetbundles.o src/repo/s6rc_repo_makestores.o src/repo/s6rc_repo_makesvlist.o src/repo/s6rc_repo_makesvlist_byname.o src/repo/s6rc_repo_moveservices.o src/repo/s6rc_repo_read_major.o src/repo/s6rc_repo_removeinternals.o src/repo/s6rc_repo_rxnames.o src/repo/s6rc_repo_sanitize_setname.o src/repo/s6rc_repo_sanitize_svname.o src/repo/s6rc_repo_setcompile.o src/repo/s6rc_repo_setcopy.o src/repo/s6rc_repo_setdelete.o src/repo/s6rc_repo_setuptodate.o src/repo/s6rc_repo_sv_bcmpr.o src/repo/s6rc_repo_sv_cmpr.o src/repo/s6rc_repo_sync.o src/repo/s6rc_repo_syncset.o src/repo/s6rc_repo_syncset_tmp.o src/repo/s6rc_repo_touch.o src/repo/s6rc_repo_touchset.o src/repo/s6rc_repo_type_check.o else -libs6rcrepo.a.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo +libs6rcrepo.a.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_read_major.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo endif -libs6rcrepo.pc: EXTRA_LIBS := -ls6rc -ls6 -lskarnet ${SPAWN_LIB} -libs6rcrepo.so.xyzzy: EXTRA_LIBS := -ls6rc -ls6 -lskarnet ${SPAWN_LIB} -libs6rcrepo.so.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo -libs6rcrepo.dylib.xyzzy: EXTRA_LIBS := -ls6rc -ls6 -lskarnet ${SPAWN_LIB} -libs6rcrepo.dylib.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo +libs6rcrepo.pc: EXTRA_LIBS := -lskarnet ${SPAWN_LIB} +libs6rcrepo.so.xyzzy: EXTRA_LIBS := -lskarnet ${SPAWN_LIB} +libs6rcrepo.so.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_read_major.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo +libs6rcrepo.dylib.xyzzy: EXTRA_LIBS := -lskarnet ${SPAWN_LIB} +libs6rcrepo.dylib.xyzzy:src/repo/s6rc_repo_badpipeline.lo src/repo/s6rc_repo_badrx.lo src/repo/s6rc_repo_checkset.lo src/repo/s6rc_repo_cleanup.lo src/repo/s6rc_repo_compile.lo src/repo/s6rc_repo_fillset.lo src/repo/s6rc_repo_fixset.lo src/repo/s6rc_repo_flattenservices.lo src/repo/s6rc_repo_getserviceflags.lo src/repo/s6rc_repo_list_sets.lo src/repo/s6rc_repo_listalldeps.lo src/repo/s6rc_repo_listcontents.lo src/repo/s6rc_repo_listdeps.lo src/repo/s6rc_repo_listdeps_internal.lo src/repo/s6rc_repo_listrx.lo src/repo/s6rc_repo_lock.lo src/repo/s6rc_repo_ls.lo src/repo/s6rc_repo_makedefbundle.lo src/repo/s6rc_repo_makesetbundles.lo src/repo/s6rc_repo_makestores.lo src/repo/s6rc_repo_makesvlist.lo src/repo/s6rc_repo_makesvlist_byname.lo src/repo/s6rc_repo_moveservices.lo src/repo/s6rc_repo_read_major.lo src/repo/s6rc_repo_removeinternals.lo src/repo/s6rc_repo_rxnames.lo src/repo/s6rc_repo_sanitize_setname.lo src/repo/s6rc_repo_sanitize_svname.lo src/repo/s6rc_repo_setcompile.lo src/repo/s6rc_repo_setcopy.lo src/repo/s6rc_repo_setdelete.lo src/repo/s6rc_repo_setuptodate.lo src/repo/s6rc_repo_sv_bcmpr.lo src/repo/s6rc_repo_sv_cmpr.lo src/repo/s6rc_repo_sync.lo src/repo/s6rc_repo_syncset.lo src/repo/s6rc_repo_syncset_tmp.lo src/repo/s6rc_repo_touch.lo src/repo/s6rc_repo_touchset.lo src/repo/s6rc_repo_type_check.lo s6-rc-repo-init: EXTRA_LIBS := ${SPAWN_LIB} s6-rc-repo-init: src/repo/s6-rc-repo-init.o ${LIBS6RCREPO} -lskarnet s6-rc-repo-list: EXTRA_LIBS := ${SPAWN_LIB} diff --git a/src/include/s6-rc/repo.h b/src/include/s6-rc/repo.h index 0607977..6ecec15 100644 --- a/src/include/s6-rc/repo.h +++ b/src/include/s6-rc/repo.h @@ -25,6 +25,8 @@ extern int s6rc_repo_ls (char const *, stralloc *, genalloc *) ; extern char const s6rc_repo_rxnames[4][7] ; +extern uint32_t s6rc_repo_read_major (char const *) ; /* the major a db was compiled with */ + extern int s6rc_repo_makestores (char const *, char const *const *, uint16_t, char *) ; extern int s6rc_repo_fillset (char const *, char const *, char const *const *, uint32_t) ; diff --git a/src/include/s6-rc/s6rc-utils.h b/src/include/s6-rc/s6rc-utils.h index e453ade..1058dd1 100644 --- a/src/include/s6-rc/s6rc-utils.h +++ b/src/include/s6-rc/s6rc-utils.h @@ -6,6 +6,7 @@ #include #include +#include #include #include @@ -24,7 +25,18 @@ extern int s6rc_livedir_canon (char const **) ; extern int s6rc_live_state_size (char const *, uint32_t *, uint32_t *) ; extern int s6rc_live_state_read (char const *, unsigned char *, uint32_t) ; -extern uint32_t s6rc_get_major (char const *) ; /* always pass S6RC_VERSION */ -extern uint32_t s6rc_read_major (char const *) ; /* the major a db was compiled with */ +static inline uint32_t s6rc_get_major (char const *s) +{ + size_t len = 0, l ; + uint32_t acc = 0 ; + uint16_t u ; + l = uint16_scan(s + len, &u) ; + if (!l || s[len + l++] != '.') return 0 ; + len += l ; acc = acc << 16 | u ; + l = uint16_scan(s + len, &u) ; + if (!l || s[len + l++] != '.') return 0 ; + len += l ; acc = acc << 16 | u ; + return acc ; +} #endif diff --git a/src/libs6rc/deps-lib/s6rc b/src/libs6rc/deps-lib/s6rc index c16ccdf..f1a8370 100644 --- a/src/libs6rc/deps-lib/s6rc +++ b/src/libs6rc/deps-lib/s6rc @@ -4,7 +4,6 @@ s6rc_db_check_revdeps.o s6rc_db_read.o s6rc_db_read_sizes.o s6rc_db_read_uint32.o -s6rc_get_major.o s6rc_graph_closure.o s6rc_graph_clean.o s6rc_live_state_size.o @@ -14,7 +13,6 @@ s6rc_livedir_create.o s6rc_livedir_prefix.o s6rc_livedir_prefixsize.o s6rc_lock.o -s6rc_read_major.o s6rc_read_uint.o s6rc_sanitize_dir.o s6rc_servicedir_internal.o diff --git a/src/libs6rc/s6rc_get_major.c b/src/libs6rc/s6rc_get_major.c deleted file mode 100644 index 3bb9fb1..0000000 --- a/src/libs6rc/s6rc_get_major.c +++ /dev/null @@ -1,21 +0,0 @@ -/* ISC license. */ - -#include - -#include - -#include - -uint32_t s6rc_get_major (char const *s) -{ - size_t len = 0, l ; - uint32_t acc = 0 ; - uint16_t u ; - l = uint16_scan(s + len, &u) ; - if (!l || s[len + l++] != '.') return 0 ; - len += l ; acc = acc << 16 | u ; - l = uint16_scan(s + len, &u) ; - if (!l || s[len + l++] != '.') return 0 ; - len += l ; acc = acc << 16 | u ; - return acc ; -} diff --git a/src/libs6rc/s6rc_read_major.c b/src/libs6rc/s6rc_read_major.c deleted file mode 100644 index 2be5121..0000000 --- a/src/libs6rc/s6rc_read_major.c +++ /dev/null @@ -1,30 +0,0 @@ -/* ISC license. */ - -#include -#include -#include - -#include -#include - -#include - -#include - -uint32_t s6rc_read_major (char const *compiled) -{ - size_t clen = strlen(compiled) ; - ssize_t r ; - uint32_t res ; - char tmp[UINT32_FMT] ; - char fn[clen + 7] ; - memcpy(fn, compiled, clen) ; - memcpy(fn + clen, "/major", 7) ; - r = openreadnclose(fn, tmp, UINT32_FMT) ; - if (r == -1) return errno == ENOENT ? 7 : 0 ; /* up to 0.7.0.0 doesn't have db/major */ - if (!r) return 0 ; - if (tmp[r] != '\n') return (errno = EPROTO, 0) ; - tmp[r] = 0 ; - if (uint320_scan(tmp, &res) != r) return (errno = EPROTO, 0) ; - return res ; -} diff --git a/src/repo/deps-lib/s6rcrepo b/src/repo/deps-lib/s6rcrepo index 1f1cfa1..aee5f34 100644 --- a/src/repo/deps-lib/s6rcrepo +++ b/src/repo/deps-lib/s6rcrepo @@ -21,6 +21,7 @@ s6rc_repo_makestores.o s6rc_repo_makesvlist.o s6rc_repo_makesvlist_byname.o s6rc_repo_moveservices.o +s6rc_repo_read_major.o s6rc_repo_removeinternals.o s6rc_repo_rxnames.o s6rc_repo_sanitize_setname.o @@ -37,7 +38,5 @@ s6rc_repo_syncset_tmp.o s6rc_repo_touch.o s6rc_repo_touchset.o s6rc_repo_type_check.o --ls6rc --ls6 -lskarnet ${SPAWN_LIB} diff --git a/src/repo/s6rc_repo_read_major.c b/src/repo/s6rc_repo_read_major.c new file mode 100644 index 0000000..08d646b --- /dev/null +++ b/src/repo/s6rc_repo_read_major.c @@ -0,0 +1,30 @@ +/* ISC license. */ + +#include +#include +#include + +#include +#include + +#include + +#include + +uint32_t s6rc_repo_read_major (char const *compiled) +{ + size_t clen = strlen(compiled) ; + ssize_t r ; + uint32_t res ; + char tmp[UINT32_FMT] ; + char fn[clen + 7] ; + memcpy(fn, compiled, clen) ; + memcpy(fn + clen, "/major", 7) ; + r = openreadnclose(fn, tmp, UINT32_FMT) ; + if (r == -1) return errno == ENOENT ? 7 : 0 ; /* up to 0.7.0.0 doesn't have db/major */ + if (!r) return 0 ; + if (tmp[r] != '\n') return (errno = EPROTO, 0) ; + tmp[r] = 0 ; + if (uint320_scan(tmp, &res) != r) return (errno = EPROTO, 0) ; + return res ; +} diff --git a/src/repo/s6rc_repo_setuptodate.c b/src/repo/s6rc_repo_setuptodate.c index b6bd35d..f01143f 100644 --- a/src/repo/s6rc_repo_setuptodate.c +++ b/src/repo/s6rc_repo_setuptodate.c @@ -41,7 +41,7 @@ int s6rc_repo_setuptodate (char const *repo, char const *set) return -1 ; } { - uint32_t version = s6rc_read_major(dstfn) ; + uint32_t version = s6rc_repo_read_major(dstfn) ; if (!version) { strerr_warnfusys("read major version from ", dstfn) ; -- cgit v1.3.1