diff options
| author | Marc Schiffbauer <marc@schiffbauer.net> | 2011-01-16 23:25:40 +0100 |
|---|---|---|
| committer | Marc Schiffbauer <marc@schiffbauer.net> | 2011-01-16 23:25:40 +0100 |
| commit | fe7b194bb64ed602b9544425354292455588ed43 (patch) | |
| tree | b670ca55b7fe63b99f56455b5deabfa7e76d5022 /eclass/kde4-meta.eclass | |
| parent | 3f2699fe49dd9f1504ebff2f8b152207b7d63c79 (diff) | |
| download | kde-fe7b194bb64ed602b9544425354292455588ed43.tar.gz kde-fe7b194bb64ed602b9544425354292455588ed43.tar.bz2 kde-fe7b194bb64ed602b9544425354292455588ed43.zip | |
added intitial support for kde-base live builds from git to eclasses and functions
Diffstat (limited to 'eclass/kde4-meta.eclass')
| -rw-r--r-- | eclass/kde4-meta.eclass | 48 |
1 files changed, 35 insertions, 13 deletions
diff --git a/eclass/kde4-meta.eclass b/eclass/kde4-meta.eclass index 425ad8519fc..c80cc88f6f7 100644 --- a/eclass/kde4-meta.eclass +++ b/eclass/kde4-meta.eclass @@ -77,6 +77,14 @@ case ${BUILD_TYPE} in ESVN_PROJECT="${KMNAME}${ESVN_PROJECT_SUFFIX}" ;; esac + elif [[ "${KDE_SCM}" == "git" ]]; then + case ${KMNAME} in + kdepim|kdepim-runtime) + EGIT_REPO_URI="git://anongit.kde.org/${KMNAME}" + EGIT_PROJECT="${KMNAME}" + ;; + esac + fi ;; esac @@ -147,17 +155,19 @@ kde4-meta_src_unpack() { debug-print-function ${FUNCNAME} "$@" if [[ ${BUILD_TYPE} = live ]]; then + migrate_store_dir if [[ "$KDE_SCM" == "svn" ]]; then - migrate_store_dir S="${WORKDIR}/${P}" mkdir -p "${S}" ESVN_RESTRICT="export" subversion_src_unpack subversion_wc_info subversion_bootstrap elif [[ "${KDE_SCM}" == "git" ]]; then - ?? + S="${WORKDIR}/${P}" + mkdir -p "${S}" + EGIT_HAS_SUBMODULES=1 + git_src_unpack fi - kde4-meta_src_extract else kde4-meta_src_extract @@ -175,31 +185,43 @@ kde4-meta_src_extract() { debug-print-function ${FUNCNAME} "$@" if [[ ${BUILD_TYPE} = live ]]; then - local rsync_options subdir kmnamedir targetdir + local rsync_options subdir kmnamedir targetdir wc_path escm # Export working copy to ${S} einfo "Exporting parts of working copy to ${S}" kde4-meta_create_extractlists + rsync_options="--progress -v --group --links --owner --perms --quiet --exclude=.svn/ --exclude=.git/" - rsync_options="--group --links --owner --perms --quiet --exclude=.svn/" + case "${KDE_SCM}" in + svn) + wc_path="${ESVN_WC_PATH}" + escm="{ESVN}" + ;; + git) + wc_path="${EGIT_STORE_DIR}/${EGIT_PROJECT}" + escm="{EGIT}" + ;; + *) + die "Unknown value for KDE_SCM in kde4-meta_src_extract(): ${KDE_SCM}" + esac # Copy ${KMNAME} non-recursively (toplevel files) - rsync ${rsync_options} "${ESVN_WC_PATH}"/${kmnamedir}* "${S}" \ - || die "${ESVN}: can't export toplevel files to '${S}'." + rsync ${rsync_options} "${wc_path}"/${kmnamedir}* "${S}" \ + || die "${escm}: can't export toplevel files to '${S}'." # Copy cmake directory - if [[ -d "${ESVN_WC_PATH}/${kmnamedir}cmake" ]]; then - rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}cmake" "${S}" \ - || die "${ESVN}: can't export cmake files to '${S}'." + if [[ -d "${wc_path}/${kmnamedir}cmake" ]]; then + rsync --recursive ${rsync_options} "${wc_path}/${kmnamedir}cmake" "${S}" \ + || die "${escm}: can't export cmake files to '${S}'." fi # Copy all subdirectories for subdir in $(__list_needed_subdirectories); do targetdir="" - if [[ $subdir = doc/* && ! -e "$ESVN_WC_PATH/$kmnamedir$subdir" ]]; then + if [[ $subdir = doc/* && ! -e "$wc_path/$kmnamedir$subdir" ]]; then continue fi [[ ${subdir%/} = */* ]] && targetdir=${subdir%/} && targetdir=${targetdir%/*} && mkdir -p "${S}/${targetdir}" - rsync --recursive ${rsync_options} "${ESVN_WC_PATH}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \ - || die "${ESVN}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'." + rsync --recursive ${rsync_options} "${wc_path}/${kmnamedir}${subdir%/}" "${S}/${targetdir}" \ + || die "${escm}: can't export subdirectory '${subdir}' to '${S}/${targetdir}'." done if [[ ${KMNAME} = kdebase-runtime && ${PN} != kdebase-data ]]; then |
