123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- #!/usr/bin/env bash
- set -e
- [ "$GLUON_IMAGEDIR" -a "$GLUON_PACKAGEDIR" -a "$LEDE_TARGET" -a "$GLUON_RELEASE" -a "$GLUON_SITEDIR" ] || exit 1
- default_factory_ext='.bin'
- default_factory_suffix='-squashfs-factory'
- default_sysupgrade_ext='.bin'
- default_sysupgrade_suffix='-squashfs-sysupgrade'
- output=
- profile=
- aliases=
- factory_ext=
- factory_suffix=
- sysupgrade_ext=
- sysupgrade_suffix=
- mkdir -p "${GLUON_IMAGEDIR}/factory" "${GLUON_IMAGEDIR}/sysupgrade"
- if [ "$(expr match "$LEDE_TARGET" '.*-.*')" -gt 0 ]; then
- LEDE_BINDIR="${LEDE_TARGET//-/\/}"
- else
- LEDE_BINDIR="${LEDE_TARGET}/generic"
- fi
- SITE_CODE="$(scripts/site.sh site_code)"
- PACKAGE_PREFIX="gluon-${SITE_CODE}-${GLUON_RELEASE}"
- copy() {
- [ "${output}" ] || return 0
- want_device "${output}" || return 0
- if [ "$factory_ext" ]; then
- rm -f "${GLUON_IMAGEDIR}/factory/gluon-"*"-${output}${factory_ext}"
- cp "lede/bin/targets/${LEDE_BINDIR}/lede-${LEDE_TARGET}${profile}${factory_suffix}${factory_ext}" \
- "${GLUON_IMAGEDIR}/factory/gluon-${SITE_CODE}-${GLUON_RELEASE}-${output}${factory_ext}"
- for alias in $aliases; do
- rm -f "${GLUON_IMAGEDIR}/factory/gluon-"*"-${alias}${factory_ext}"
- ln -s "gluon-${SITE_CODE}-${GLUON_RELEASE}-${output}${factory_ext}" \
- "${GLUON_IMAGEDIR}/factory/gluon-${SITE_CODE}-${GLUON_RELEASE}-${alias}${factory_ext}"
- done
- fi
- if [ "$sysupgrade_ext" ]; then
- rm -f "${GLUON_IMAGEDIR}/sysupgrade/gluon-"*"-${output}-sysupgrade${sysupgrade_ext}"
- cp "lede/bin/targets/${LEDE_BINDIR}/lede-${LEDE_TARGET}${profile}${sysupgrade_suffix}${sysupgrade_ext}" \
- "${GLUON_IMAGEDIR}/sysupgrade/gluon-${SITE_CODE}-${GLUON_RELEASE}-${output}-sysupgrade${sysupgrade_ext}"
- for alias in $aliases; do
- rm -f "${GLUON_IMAGEDIR}/sysupgrade/gluon-"*"-${alias}-sysupgrade${sysupgrade_ext}"
- ln -s "gluon-${SITE_CODE}-${GLUON_RELEASE}-${output}-sysupgrade${sysupgrade_ext}" \
- "${GLUON_IMAGEDIR}/sysupgrade/gluon-${SITE_CODE}-${GLUON_RELEASE}-${alias}-sysupgrade${sysupgrade_ext}"
- done
- fi
- }
- . scripts/common.inc.sh
- device() {
- copy
- output="$1"
- profile="-$2"
- aliases=
- factory_ext="$default_factory_ext"
- factory_suffix="$default_factory_suffix"
- sysupgrade_ext="$default_sysupgrade_ext"
- sysupgrade_suffix="$default_sysupgrade_suffix"
- }
- factory_image() {
- copy
- output="$1"
- aliases=
- if [ "$3" ]; then
- profile="-$2"
- factory_ext="$3"
- else
- profile=""
- factory_ext="$2"
- fi
- factory_suffix=
- sysupgrade_ext=
- sysupgrade_suffix=
- }
- sysupgrade_image() {
- copy
- output="$1"
- aliases=
- if [ "$3" ]; then
- profile="-$2"
- sysupgrade_ext="$3"
- else
- profile=""
- sysupgrade_ext="$2"
- fi
- factory_ext=
- factory_suffix=
- sysupgrade_suffix=
- }
- alias() {
- aliases="$aliases $1"
- }
- factory() {
- if [ "$2" ]; then
- factory_suffix="$1"
- factory_ext="$2"
- else
- factory_ext="$1"
- fi
- if [ -z "$profile" ]; then
- default_factory_ext="$factory_ext"
- default_factory_suffix="$factory_suffix"
- fi
- }
- sysupgrade() {
- if [ "$2" ]; then
- sysupgrade_suffix="$1"
- sysupgrade_ext="$2"
- else
- sysupgrade_ext="$1"
- fi
- if [ -z "$output" ]; then
- default_sysupgrade_ext="$sysupgrade_ext"
- default_sysupgrade_suffix="$sysupgrade_suffix"
- fi
- }
- . targets/"$1"; copy
- # Copy opkg repo
- if [ -z "$DEVICES" ]; then
- rm -f "$GLUON_PACKAGEDIR"/*/"$LEDE_BINDIR"/*
- rmdir -p "$GLUON_PACKAGEDIR"/*/"$LEDE_BINDIR" 2>/dev/null || true
- mkdir -p "${GLUON_PACKAGEDIR}/${PACKAGE_PREFIX}/${LEDE_BINDIR}"
- cp "lede/bin/targets/${LEDE_BINDIR}/packages"/* "${GLUON_PACKAGEDIR}/${PACKAGE_PREFIX}/${LEDE_BINDIR}"
- fi
|