summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRudolf Polzer <divVerent@xonotic.org>2013-11-24 17:27:11 +0100
committerRudolf Polzer <divVerent@xonotic.org>2013-11-24 17:34:29 +0100
commit6be09f6c39481ebbf3fae603351b2ac28d48f4b2 (patch)
treef6e3220a24885a0cf3662e156591ca7d46d356c7
parenta2e29450da9e245fb8a8c764f5b0ab23e08d3f66 (diff)
downloadmpv-build-6be09f6c39481ebbf3fae603351b2ac28d48f4b2.tar.bz2
mpv-build-6be09f6c39481ebbf3fae603351b2ac28d48f4b2.tar.xz
Get rid of submodules.
-rw-r--r--.gitmodules12
m---------ffmpeg0
-rw-r--r--force-head12
m---------fribidi0
m---------libass0
m---------mpv0
-rwxr-xr-xupdate97
7 files changed, 64 insertions, 57 deletions
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index 8f14252..0000000
--- a/.gitmodules
+++ /dev/null
@@ -1,12 +0,0 @@
-[submodule "mpv"]
- path = mpv
- url = https://github.com/mpv-player/mpv.git
-[submodule "ffmpeg"]
- path = ffmpeg
- url = git://source.ffmpeg.org/ffmpeg.git
-[submodule "libass"]
- path = libass
- url = https://code.google.com/p/libass/
-[submodule "fribidi"]
- path = fribidi
- url = git://anongit.freedesktop.org/fribidi/fribidi.git
diff --git a/ffmpeg b/ffmpeg
deleted file mode 160000
-Subproject 48f37664a8b5bc43fc3dad5784f32ea2267d38a
diff --git a/force-head b/force-head
deleted file mode 100644
index 4608ea2..0000000
--- a/force-head
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-update_master() {
- git fetch && git checkout -f origin/master
-}
-
-update_master
-( cd fribidi && update_master ; )
-( cd libass && update_master ; )
-( cd ffmpeg && update_master ; )
-( cd mpv && update_master ; )
-
diff --git a/fribidi b/fribidi
deleted file mode 160000
-Subproject fecb73185c223cf1db5533ed6cb55b035563c1e
diff --git a/libass b/libass
deleted file mode 160000
-Subproject dacfe5efa293b6e0d41a8b3154626a9fa54c2ff
diff --git a/mpv b/mpv
deleted file mode 160000
-Subproject 78adec6c9c861e513ba369871562df5af871a53
diff --git a/update b/update
index 063243a..260f544 100755
--- a/update
+++ b/update
@@ -1,63 +1,94 @@
#!/bin/sh
-do_submodules()
+set -e
+
+# Extremely generic helper.
+verbose()
{
- set -ex
- echo >&2 "Executing: git submodule sync"
- git submodule sync
- echo >&2 "Executing: git submodule update --init"
- git submodule update --init
+ echo >&2 "$PWD\$ $*"
+ "$@"
}
-do_gitmaster()
+# Repository configuration.
+allrepos()
+{
+ # subdir tagprefix \
+ # url
+ "$@" 'ffmpeg' 'n' \
+ 'git://source.ffmpeg.org/ffmpeg.git'
+ "$@" 'fribidi' '' \
+ 'git://anongit.freedesktop.org/fribidi/fribidi.git'
+ "$@" 'libass' '' \
+ 'https://code.google.com/p/libass/'
+ "$@" 'mpv' 'v' \
+ 'https://github.com/mpv-player/mpv.git'
+}
+
+# Shorthand for simple commands that just are run in the subdirectory.
+car()
+{
+ echo "$1"
+}
+foreach()
+{
+ for repo in `allrepos car`; do
+ cd "$repo"
+ "$@"
+ cd ..
+ done
+}
+
+# Clone all missing repositories.
+do_prepare_repo()
+{
+ if ! [ -d "$1" ]; then
+ verbose git clone "$3" "$1"
+ fi
+}
+do_prepare()
{
- set -ex
- git submodule foreach 'git checkout master'
- git submodule foreach 'git pull --rebase'
- git submodule foreach 'git remote prune origin'
+ allrepos do_prepare_repo
}
-do_releasetag_submodule()
+# Switch all repositories to master, and fetch/pull.
+do_gitmaster()
{
- (
- cd "$1"
- version=`git tag | grep "^$2[0-9]" | sort -V | tail -n 1`
- git checkout --detach refs/tags/"$version"
- )
+ do_prepare
+ foreach verbose git checkout master
+ foreach verbose git pull --rebase
+ foreach verbose git remote prune origin
}
+# Switch all repositories to the latest release tag.w
+do_releasetag_repo()
+{
+ cd "$1"
+ version=`git tag | grep "^$2[0-9]" | sort -V | tail -n 1`
+ verbose git checkout --detach refs/tags/"$version"
+ cd ..
+}
do_releasetag()
{
- set -ex
- git submodule foreach 'git fetch'
- git submodule foreach 'git remote prune origin'
- do_releasetag_submodule ffmpeg 'n'
- do_releasetag_submodule fribidi ''
- do_releasetag_submodule libass ''
- do_releasetag_submodule mpv 'v'
+ do_prepare
+ foreach verbose git fetch
+ foreach verbose git remote prune origin
+ allrepos do_releasetag_repo
}
if [ x"$1" != x"--skip-selfupdate" ]; then
- (
- set -ex
- git pull --rebase
- )
+ verbose git pull --rebase
exec "$0" --skip-selfupdate "$@"
fi
shift
case "$1" in
- --submodule|'')
- do_submodules
- ;;
--master)
do_gitmaster
;;
- --release)
+ --release|'')
do_releasetag
;;
*)
- echo >&2 "$0 --submodule"
echo >&2 "$0 --master"
echo >&2 "$0 --release"
exit 0