diff options
Diffstat (limited to 'templates/base')
-rw-r--r-- | templates/base/01_setup_pkg_revision.sh | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/templates/base/01_setup_pkg_revision.sh b/templates/base/01_setup_pkg_revision.sh new file mode 100644 index 000000000..af82c0988 --- /dev/null +++ b/templates/base/01_setup_pkg_revision.sh @@ -0,0 +1,68 @@ +# use a function to be neutral with other fragments +function 01_setup_pkg_revision() { + # BASH_SOURCE can't be used as this fragment is concatenated in a larger script + local THIS=meta-agl/templates/base/01_setup_pkg_revision.sh + + # RPMREVISION and LOCALCONF must be set previously in the setup script + [[ -z "$RPMREVISION" || -z "$LOCALCONF" ]] && return 0 + + echo "INFO: using RPM revision schema $RPMREVISION" + + cat <<EOF >> $LOCALCONF + +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +# fragment { +# generated by $THIS "$RPMREVISION" +# + +EOF + + case "$RPMREVISION" in + prservice*) + [[ $RPMREVISION =~ ^prservice(:([^ \t\n]+))?$ ]] && { + echo "PRSERV_HOST ?= \"${BASH_REMATCH[2]:-localhost:0}\"" >> $LOCALCONF + } || { + echo "ERROR ($THIS): invalid address specified for PR Service" + return 1 + } + ;; + timestamp) + AGL_PR=$(date --utc '+%Y%m%d.%H%M%S') + cat <<'EOF' >> $LOCALCONF +# to re-generate AGL_PR the same way as aglsetup does, run: +# echo "AGL_PR ?= \"$(date --utc '+%Y%m%d.%H%M%S')\"" +EOF + echo "AGL_PR ?= \"${AGL_PR}\"" >> $LOCALCONF; + cat <<'EOF' >> $LOCALCONF +PKGR_append = ".${AGL_PR}" +PKGV = "${@ '${PV}'.replace('AUTOINC','${AGL_PR}')}" +BB_HASHBASE_WHITELIST_append = " PKGR PKGV" +EOF + ;; + value:*) + echo "AGL_PR ?= \"${RPMREVISION#value:}\"" >> $LOCALCONF; + cat <<'EOF' >> $LOCALCONF +PKGR_append = ".${AGL_PR}" +PKGV = "${@ '${PV}'.replace('AUTOINC','${AGL_PR}')}" +BB_HASHBASE_WHITELIST_append = " PKGR PKGV" +EOF + ;; + none) + # do nothing + ;; + *) + echo "ERROR ($THIS): unknown package revision method '$REVISION'" + return 1 + ;; + esac + + cat <<'EOF' >> $LOCALCONF + +# +# } +# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # +EOF + +} + +01_setup_pkg_revision |