[[!meta copyright="Copyright © 2010, 2012, 2013, 2014, 2015 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] There is a repository for maintenance of [[/glibc]] for the Hurd's needs: . It's mainly used for testing glibc's master branch, but with all the patches that we need on top of it, and also for development and sharing of (Hurd-specific) glibc patches. This repository uses [[TopGit]]. History: *A plan for the Hurd-specific glibc repository*, [[!message-id "878wbp81ed.fsf@dirichlet.schwinge.homeip.net"]]. # Relation to Debian glibc For a lot of topic branches there is a correspondence to a Debian glibc patch, and vice-versa, which is also indicated by the Debian glibc patch files' names. Debian glibc is based on EGLIBC 2.13 and the Savannah hurd/glibc.git one is tracking sourceware master. The Savannah hurd/glibc.git one does not/not yet include [[libpthread|open_issues/libpthread]], [[open_issues/packaging_libpthread]]. # Usage ## Clone $ git init $ git remote add savannah git://git.savannah.gnu.org/hurd/glibc.git $ git remote update $ tg remote --populate savannah tg: Remote savannah can now follow TopGit topic branches. tg: Populating local topic branches from remote 'savannah'... From git://git.savannah.gnu.org/hurd/glibc.git * [new branch] refs/top-bases/t/_dl_random -> savannah/top-bases/t/_dl_random * [new branch] refs/top-bases/t/accept4 -> savannah/top-bases/t/accept4 [...] * [new branch] refs/top-bases/tschwinge/Roger_Whittaker -> savannah/top-bases/tschwinge/Roger_Whittaker tg: Adding branch t/_dl_random... tg: Adding branch t/accept4... [...] tg: Adding branch tschwinge/Roger_Whittaker... tg: The remote 'savannah' is now the default source of topic branches. ## Use tschwinge's Working Branch $ git checkout tschwinge/Roger_Whittaker ## Integrate a New Branch A new (TopGit) branch has been published upstream: $ tg remote --populate savannah tg: Remote savannah can now follow TopGit topic branches. tg: Populating local topic branches from remote 'savannah'... remote: Counting objects: 28, done. remote: Compressing objects: 100% (19/19), done. remote: Total 20 (delta 13), reused 1 (delta 0) Unpacking objects: 100% (20/20), done. From git://git.savannah.gnu.org/hurd/glibc.git * [new branch] t/unwind-resume.c -> savannah/t/unwind-resume.c * [new branch] refs/top-bases/t/unwind-resume.c -> savannah/top-bases/t/unwind-resume.c tg: Skipping branch t/____longjmp_chk: Already exists [...] tg: Skipping branch t/tlsdesc.sym: Already exists tg: Adding branch t/unwind-resume.c... tg: Skipping branch t/verify.h: Already exists tg: Skipping branch tschwinge/Roger_Whittaker: Already exists tg: The remote 'savannah' is now the default source of topic branches. Make `tschwinge/Roger_Whittaker` (the current branch) depend on it: $ tg depend add t/unwind-resume.c [tschwinge/Roger_Whittaker 63f11ff] New TopGit dependency: t/unwind-resume.c 1 files changed, 1 insertions(+), 0 deletions(-) tg: Updating base with t/unwind-resume.c changes... Auto-merging .topdeps Auto-merging .topmsg Merge made by recursive. nptl/sysdeps/pthread/Makefile | 12 ++---------- sysdeps/gnu/Makefile | 18 ++++++++++++++++-- .../pthread => sysdeps/gnu}/rt-unwind-resume.c | 0 .../pthread => sysdeps/gnu}/unwind-resume.c | 4 ++-- 4 files changed, 20 insertions(+), 14 deletions(-) rename {nptl/sysdeps/pthread => sysdeps/gnu}/rt-unwind-resume.c (100%) rename {nptl/sysdeps/pthread => sysdeps/gnu}/unwind-resume.c (93%) tg: The tschwinge/Roger_Whittaker head is up-to-date wrt. its remote branch. tg: Updating tschwinge/Roger_Whittaker against new base... Merge made by recursive. nptl/sysdeps/pthread/Makefile | 12 ++---------- sysdeps/gnu/Makefile | 18 ++++++++++++++++-- .../pthread => sysdeps/gnu}/rt-unwind-resume.c | 0 .../pthread => sysdeps/gnu}/unwind-resume.c | 4 ++-- 4 files changed, 20 insertions(+), 14 deletions(-) rename {nptl/sysdeps/pthread => sysdeps/gnu}/rt-unwind-resume.c (100%) rename {nptl/sysdeps/pthread => sysdeps/gnu}/unwind-resume.c (93%) # Maintenance ## Tags Occasionally push new tags from the sourceware repository to the Savannah one: $ git fetch sourceware $ git tag | grep ^glibc- | sed 's%^%tag %' | xargs git push savannah