app-emulation/wine: Fix use of env vars for 9999
authorNP-Hardass <NP-Hardass@gentoo.org>
Wed, 24 Aug 2016 04:23:38 +0000 (00:23 -0400)
committerNP-Hardass <NP-Hardass@gentoo.org>
Wed, 24 Aug 2016 19:07:51 +0000 (15:07 -0400)
Package-Manager: portage-2.3.0

19 files changed:
app-emulation/wine/wine-1.8-r3.ebuild
app-emulation/wine/wine-1.8.1-r3.ebuild
app-emulation/wine/wine-1.8.2-r2.ebuild
app-emulation/wine/wine-1.8.3-r1.ebuild
app-emulation/wine/wine-1.9.10-r3.ebuild
app-emulation/wine/wine-1.9.11-r3.ebuild
app-emulation/wine/wine-1.9.12-r2.ebuild
app-emulation/wine/wine-1.9.13-r2.ebuild
app-emulation/wine/wine-1.9.14-r2.ebuild
app-emulation/wine/wine-1.9.15-r1.ebuild
app-emulation/wine/wine-1.9.16.ebuild
app-emulation/wine/wine-1.9.17.ebuild
app-emulation/wine/wine-1.9.4-r3.ebuild
app-emulation/wine/wine-1.9.5-r3.ebuild
app-emulation/wine/wine-1.9.6-r3.ebuild
app-emulation/wine/wine-1.9.7-r3.ebuild
app-emulation/wine/wine-1.9.8-r2.ebuild
app-emulation/wine/wine-1.9.9-r3.ebuild
app-emulation/wine/wine-9999.ebuild

index ad22c0939c77268578e6f0a00066ebd4acf39a07..14de6adcb3d9fcbaff901ca64cf5a4b07b2baa57 100644 (file)
@@ -246,6 +246,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -263,6 +284,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -274,19 +296,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index 56ea43cbd28a4df1dc70023fdca2e5ed4ea7a3c9..c83c20d0f5e6761b286e28827e4ce42a9b61a793 100644 (file)
@@ -247,6 +247,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -264,6 +285,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -275,19 +297,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index 22769236e171b52042b5f4be1d6a662d03a11ef7..43c0243c662d2cdbed083a06d29711f89b842df3 100644 (file)
@@ -247,6 +247,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -264,6 +285,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -275,19 +297,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index 8ef5cc90c0b2db9f2073e7ad7558b970d1d82de0..c856eceecc9b5925e444c3178bb48d6184b9289e 100644 (file)
@@ -247,6 +247,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -264,6 +285,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -275,19 +297,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index 0f8b69e87128636cedd3210df60ea50d53021db7..5012252dff4495d7188d45653b4d9c583a7c58db 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 0f8b69e87128636cedd3210df60ea50d53021db7..5012252dff4495d7188d45653b4d9c583a7c58db 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 46a6f207d6c64bdab81d445fb892aedb13e2895a..6e2868f427eff57c23ee91644e97ab1d3c369b23 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 8bedf34248187dce1a92b4144e6b52d924fd916d..8c4e720b9c4afa1dbbf024ba512f40f438aa8a10 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 8bedf34248187dce1a92b4144e6b52d924fd916d..8c4e720b9c4afa1dbbf024ba512f40f438aa8a10 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 8bedf34248187dce1a92b4144e6b52d924fd916d..8c4e720b9c4afa1dbbf024ba512f40f438aa8a10 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 8bedf34248187dce1a92b4144e6b52d924fd916d..8c4e720b9c4afa1dbbf024ba512f40f438aa8a10 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index b5dad1f472aea8553c3b5cc47535dce155a5ad04..4f8f3e98c51b3b8c1a39d48a47d3406e6930d474 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index 6a4d343f1e420adfa0382b2898ca8766d7a9b1e1..9f75de1603e50c99c5d62faa17a15f5c0f89b8f6 100644 (file)
@@ -245,6 +245,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -262,6 +283,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -273,19 +295,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index e1865137f9c89180e16b1052d8cf8ade4d21582f..c280dc551d03c22f590623bc2f6ef407e934d583 100644 (file)
@@ -244,6 +244,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -261,6 +282,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -272,19 +294,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index d91273b57d92c7f4aca3dd715058ee9701463fb0..d77474b1006138112a00fc65252d02a6cfa10263 100644 (file)
@@ -244,6 +244,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -261,6 +282,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -272,19 +294,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index d91273b57d92c7f4aca3dd715058ee9701463fb0..d77474b1006138112a00fc65252d02a6cfa10263 100644 (file)
@@ -244,6 +244,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -261,6 +282,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -272,19 +294,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index cc1f86d9239e94ee7dcb2c4d5740d1f6f9977ac6..714463ee4f89effa022e4696d6d33e4ab8d6c442 100644 (file)
@@ -244,6 +244,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -261,6 +282,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -272,19 +294,19 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
        fi
index 24ef63d8023d8638f04c789e15cfaedc9ca70787..180e41ddd9172ca2f663f6558832726d2a99e40e 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi
index b5dad1f472aea8553c3b5cc47535dce155a5ad04..4f8f3e98c51b3b8c1a39d48a47d3406e6930d474 100644 (file)
@@ -254,6 +254,27 @@ wine_build_environment_check() {
        fi
 }
 
+wine_env_vcs_vars() {
+       local pn_live_var="${PN//[-+]/_}_LIVE_COMMIT"
+       local pn_live_val="${pn_live_var}"
+       eval pn_live_val='$'${pn_live_val}
+       if [[ ! -z ${pn_live_val} ]]; then
+               if use staging || use d3d9; then
+                       eerror "Because of the multi-repo nature of ${PN}, ${pn_live_var}"
+                       eerror "cannot be used to set the commit. Instead, you may use the"
+                       eerror "environmental variables WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT."
+                       eerror
+                       return 1
+               fi
+       fi
+       if [[ ! -z ${EGIT_COMMIT} ]]; then
+               eerror "Commits must now be specified using the environmental variables"
+               eerror "WINE_COMMIT, STAGING_COMMIT, and D3D9_COMMIT"
+               eerror
+               return 1
+       fi
+}
+
 pkg_pretend() {
        wine_compiler_check || die
        wine_build_environment_check || die
@@ -271,6 +292,7 @@ pkg_pretend() {
 
 pkg_setup() {
        wine_build_environment_check || die
+       wine_env_vcs_vars || die
        if ! use staging; then
                GV=${VANILLA_GV}
                MV=${VANILLA_MV}
@@ -282,23 +304,23 @@ pkg_setup() {
 
 src_unpack() {
        if [[ ${PV} == "9999" ]] ; then
-               git-r3_src_unpack
+               EGIT_COMMIT="${WINE_COMMIT}" git-r3_src_unpack
                if use staging; then
-                       local WINE_COMMIT=${EGIT_VERSION}
+                       local CURRENT_WINE_COMMIT=${EGIT_VERSION}
 
-                       git-r3_fetch "${STAGING_EGIT_REPO_URI}"
+                       git-r3_fetch "${STAGING_EGIT_REPO_URI}" "${STAGING_COMMIT}"
                        git-r3_checkout "${STAGING_EGIT_REPO_URI}" "${STAGING_DIR}"
 
-                       local STAGING_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
+                       local COMPAT_WINE_COMMIT=$("${STAGING_DIR}/patches/patchinstall.sh" --upstream-commit) || die
 
-                       if [[ "${WINE_COMMIT}" != "${STAGING_COMMIT}" ]]; then
+                       if [[ "${CURRENT_WINE_COMMIT}" != "${COMPAT_WINE_COMMIT}" ]]; then
                                einfo "The current Staging patchset is not guaranteed to apply on this WINE commit."
                                einfo "If src_prepare fails, try emerging with the env var EGIT_COMMIT."
-                               einfo "Example: EGIT_COMMIT=${STAGING_COMMIT} emerge -1 wine"
+                               einfo "Example: WINE_COMMIT=${COMPAT_WINE_COMMIT} emerge -1 wine"
                        fi
                fi
                if use d3d9; then
-                       git-r3_fetch "${D3D9_EGIT_REPO_URI}"
+                       git-r3_fetch "${D3D9_EGIT_REPO_URI}" "${D3D9_COMMIT}"
                        git-r3_checkout "${D3D9_EGIT_REPO_URI}" "${D3D9_DIR}"
                fi
        fi