summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-27reimplement package patching and update-patches logicPhil Sutter
This works by using git as backend for all the dirty work. This means that patches are not just applied, but committed separately on top of the base sources (which are put into an initial commit). A final empty commit marks the end of the applied patch series, which allows to have multiple sets of patches to apply on top of each other. So a git history might look like this: - OpenADK patch marker: 0000 (this is the initial commit, containing the unpatched sources) - patch 1 of series 1 - patch 2 of series 1 - patch 3 of series 1 - OpenADK patch marker: 0001 - patch 1 of series 2 - patch 2 of series 2 - OpenADK patch marker: 0002 In addition to the separating empty commits, for every patch series metadata files are added (which are used for update-patches): __patchfiles__: A list of the patches' file names __patchdir__: The directory containing the applied patches Since patches might have to be unzipped first and in order to allow calling git-am just once for each patch series, the patches (along with above metadata files) are cached in dedicated directories: .git/patch_tmp/NNNN (where NNNN is the series number with leading zeroes [so shell globbing returns them in the right order]). In case update-patches is called later, update_patches.sh works it's way reverse through the git history, searching for commits named 'OpenADK patch marker: NNNN'. For each one it finds, it uses the metadata info to first remove all source patch files, then export the history in between using git-format-patch. To change patches or add new ones, the user has to use git-rebase in order to get things where they need to be for update_patches.sh to put stuff at the right place. For an example, here is how to change patch 3 of series 1 in the sample history above: - make desired code changes - commit them, ideally using --fixup option - call 'git rebase -i --autosquash <hash of OpenADK patch marker: 0000>' Using --fixup and --autosquash is convenient, since it automatically edits the rebase todo as intended. It's optional though, editing the todo manually will do just fine as well. Signed-off-by: Phil Sutter <phil@nwl.cc>
2016-03-27or1k: sync kernel configWaldemar Brodkorb
2016-03-27linux: add OpenADK startup patchWaldemar Brodkorb
2016-03-27or1k: update kernel and gccWaldemar Brodkorb
2016-03-27newlib: update to latest 2.2.x/2.3.x versionsWaldemar Brodkorb
2016-03-26frv: resolve remaining issues to check toolchain compileWaldemar Brodkorb
2016-03-26firefox: update to version 45.0Waldemar Brodkorb
2016-03-26sh2: fix elf2flt buildWaldemar Brodkorb
2016-03-25bfin: add binutils bugfix from Bug report 17334Waldemar Brodkorb
2016-03-25samba: update to 4.4.0Waldemar Brodkorb
2016-03-25ntfs-3g: update to version 2016.2.22Waldemar Brodkorb
2016-03-25nmap: update to 7.11Waldemar Brodkorb
2016-03-25mc: update to 4.8.16Waldemar Brodkorb
2016-03-25glib: update to version 2.48.0Waldemar Brodkorb
2016-03-25allow to choose drivers for generic support, reported by OliverWaldemar Brodkorb
2016-03-25frv: update uClibc-ng configWaldemar Brodkorb
2016-03-25simplify qemu options, hide block choiceWaldemar Brodkorb
2016-03-24disable for musl, pthread mutex problemWaldemar Brodkorb
2016-03-24postfix: update to version 3.1.0Waldemar Brodkorb
2016-03-24dovecot: update to version 2.2.22Waldemar Brodkorb
2016-03-22nfc: add driver and library for nfc-nci chipsWaldemar Brodkorb
2016-03-21kodi: add gentoo patches to work with ffmpeg3Waldemar Brodkorb
2016-03-20add lm32 support to elf2fltWaldemar Brodkorb
2016-03-20cris: hack around broken driver patchWaldemar Brodkorb
2016-03-19add basic bits and bytes for stm32f429 supportWaldemar Brodkorb
2016-03-19elf2flt: switch to uclinux-dev versionWaldemar Brodkorb
2016-03-19qemu-m68k-q800: add disk supportWaldemar Brodkorb
2016-03-19libssh2: use same section as for libsshWaldemar Brodkorb
2016-03-19cmake: update to 3.5.0Waldemar Brodkorb
2016-03-19nmap: update to version 7.10Waldemar Brodkorb
2016-03-19git: update to 2.7.4Waldemar Brodkorb
2016-03-19arc: add patches for gcc from buildrootWaldemar Brodkorb
2016-03-18arc: use stable tags for binutils/gccWaldemar Brodkorb
2016-03-18use shallow clone for headWaldemar Brodkorb
2016-03-18m68k: fix ethernet driver compileWaldemar Brodkorb
2016-03-17arm noMMU doesn't need a wrapperWaldemar Brodkorb
2016-03-16u-boot: update to latestWaldemar Brodkorb
2016-03-16linux: bump versionWaldemar Brodkorb
2016-03-16disable uClibc-ng obstack, gdb/binutils has its own copyWaldemar Brodkorb
2016-03-16valgrind: add backport patch from svn for correct mips linkingWaldemar Brodkorb
2016-03-16gdb: remove unspecific patchWaldemar Brodkorb
2016-03-16linux: update kernel to 4.4.5Waldemar Brodkorb
2016-03-15ethtool: update to latest version 4.5Waldemar Brodkorb
2016-03-15expat: update to latest version 2.1.1Waldemar Brodkorb
2016-03-14exit if kernel not foundWaldemar Brodkorb
2016-03-14arc: disable obstack, not usable with newer binutils/gdbWaldemar Brodkorb
2016-03-13update uClibc-ng to 1.0.13Waldemar Brodkorb
2016-03-13ffmpeg: update to latest versionWaldemar Brodkorb
2016-03-13lvm: update to latest versionWaldemar Brodkorb
2016-03-13clamav: update to latest versionWaldemar Brodkorb