The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)


Packaging/SDL

From Mer Wiki
(Difference between revisions)
Jump to: navigation, search
(SDL packaging checklist)
 
 
(5 intermediate revisions by one user not shown)
Line 1: Line 1:
Packaging of SDL2 and related libraries. We use [[Nemo/Development#With_tar_git_service|tar_git]] for packaging.
+
Packaging of SDL2 and related libraries. We use [[Nemo/Development#With_tar_git_service|tar_git]] for packaging and <code>git-remote-hg</code> for integrating the upstream Mercurial repository into our Git packaging repository.
 +
 
 +
* Upstream website: http://libsdl.org/
 +
* Upstream VCS: https://hg.libsdl.org/
 +
 
 +
== TODO ==
 +
 
 +
* Cleanup / move away old branches (<code>rpm</code> and <code>master</code>)
 +
* Remove master branch or make master branch point to default branch from hg
  
 
== Current approach ==
 
== Current approach ==
Line 6: Line 14:
 
* Branch is <code>nemo</code>
 
* Branch is <code>nemo</code>
 
* Token (<code>tar_git</code>) is also <code>nemo</code>
 
* Token (<code>tar_git</code>) is also <code>nemo</code>
* Package name in [https://build.merproject.org/project/packages?project=nemo:devel:mw nemo:devel:mw], Git repository, Hg repository:
+
* Old ChangeLog (from pre-April 2014 developments) entries are imported via <code>rpm/*.changes</code>
** '''libsdl2''': https://github.com/nemomobile-packages/libsdl (upstream: https://hg.libsdl.org/SDL/)
+
* RPM package name, OBS package name in [https://build.merproject.org/project/packages?project=nemo:devel:mw nemo:devel:mw]: Git repository (upstream Hg repository):
** '''libsdl2-image''': https://github.com/nemomobile-packages/libsdl-image (upstream: https://hg.libsdl.org/SDL_image/)
+
** '''SDL2''', '''libsdl2''': https://github.com/nemomobile-packages/libsdl (upstream: https://hg.libsdl.org/SDL/)
** '''libsdl2-mixer''': https://github.com/nemomobile-packages/libsdl-mixer (upstream: https://hg.libsdl.org/SDL_mixer/)
+
** '''SDL2_image''', '''libsdl2-image''': https://github.com/nemomobile-packages/libsdl-image (upstream: https://hg.libsdl.org/SDL_image/)
** '''libsdl2-ttf''': https://github.com/nemomobile-packages/libsdl-ttf (upstream: https://hg.libsdl.org/SDL_ttf/)
+
** '''SDL2_mixer''', '''libsdl2-mixer''': https://github.com/nemomobile-packages/libsdl-mixer (upstream: https://hg.libsdl.org/SDL_mixer/)
 +
** '''SDL2_ttf''', '''libsdl2-ttf''': https://github.com/nemomobile-packages/libsdl-ttf (upstream: https://hg.libsdl.org/SDL_ttf/)
 +
** '''SDL2_net''', '''libsdl2-net''': https://github.com/nemomobile-packages/libsdl-net (upstream: https://hg.libsdl.org/SDL_net/)
 +
* Deprecated packages:
 +
** '''SDL2_sound''', from: http://hg.icculus.org/icculus/SDL_sound/
 +
* Needs rebasing:
 +
** '''SDL2_gfx''', from: http://cms.ferzkopp.net/index.php/software/13-sdl-gfx
  
 
=== Packaging new upstream releases ===
 
=== Packaging new upstream releases ===
Line 17: Line 31:
 
# <code>cd SDL</code>
 
# <code>cd SDL</code>
 
# Add nemo remote: <code>git remote add nemo git@github.com:nemomobile-packages/libsdl.git</code>
 
# Add nemo remote: <code>git remote add nemo git@github.com:nemomobile-packages/libsdl.git</code>
 +
# <code>git fetch nemo</code>
 
# Checkout the "nemo" branch: <code>git checkout nemo</code>
 
# Checkout the "nemo" branch: <code>git checkout nemo</code>
 
# Merge a new upstream release: <code>git merge release-2.x.y</code> (potentially drop local patches merged upstream)
 
# Merge a new upstream release: <code>git merge release-2.x.y</code> (potentially drop local patches merged upstream)

Latest revision as of 11:57, 21 April 2014

Packaging of SDL2 and related libraries. We use tar_git for packaging and git-remote-hg for integrating the upstream Mercurial repository into our Git packaging repository.

Contents

[edit] TODO

  • Cleanup / move away old branches (rpm and master)
  • Remove master branch or make master branch point to default branch from hg

[edit] Current approach

[edit] Packaging new upstream releases

  1. Clone upstream: git clone hg::https://hg.libsdl.org/SDL/
  2. cd SDL
  3. Add nemo remote: git remote add nemo git@github.com:nemomobile-packages/libsdl.git
  4. git fetch nemo
  5. Checkout the "nemo" branch: git checkout nemo
  6. Merge a new upstream release: git merge release-2.x.y (potentially drop local patches merged upstream)
  7. Update version in rpm/*.spec, reset release to 1
  8. Run a test build: mb2 build
  9. Commit spec file changes, message: [nemo] New upstream release 2.x.y
  10. Push changes: git push nemo nemo
  11. Tag as nemo/VERSION-RELEASE (e.g. nemo/2.0.0-1)
  12. Push tag: git push nemo nemo/2.0.0-1

[edit] Packaging local changes / patches

  1. Clone nemo: git clone git@github.com:nemomobile-packages/libsdl.git
  2. cd libsdl
  3. Checkout the "nemo" branch: git checkout nemo
  4. Make changes
  5. Run a test build: mb2 build
  6. Increment release number in rpm/*.spec
  7. Commit with message [nemo] DESCRIPTION OF CHANGES
  8. Push changes: git push nemo nemo
  9. Tag as nemo/VERSION-RELEASE (e.g. nemo/2.0.0-2)
  10. Push tag: git push nemo nemo/2.0.0-2

[edit] Previously

  • Using hg-fast-export for importing from hg to git
  • Branch is rpm
  • Token is nemo
Personal tools