genode-ehmry/Tupfile

64 lines
2.3 KiB
Plaintext

include_rules
ifndef SCULPT_VERSION
error CONFIG_SCULPT_VERSION is undefined
endif
SHORT_SUM = b2sum -l24
: $(DEPOT_DIR)/<raw-archives> $(DEPOT_DIR)/<bin-archives> |> \
for f in %<raw-archives> %<bin-archives>; do \
awk -F '/' '{print "s|local/"$2"/"$3"|@(PUBLIC_USER)/"$2"/"$3"/"$4"|"}' $f >> %o; done; \
|> $(VERSIONS_SED_FILE)
# Generate a listing of all raw archives
: $(DEPOT_DIR)/<raw-archives> |> \
for f in %<raw-archives>; do cat $f >> %o; done; \
|> $(RAW_LISTING)
# Generate a listing of all raw archives
: $(DEPOT_DIR)/<bin-archives> |> \
for f in %<bin-archives>; do tail -n1 $f >> %o; done; \
|> $(BIN_LISTING)
# Generate a listing of all binary archives
: $(DEPOT_DIR)/<pkg-archives> |> \
$(SHORT_SUM) %<pkg-archives> | awk -F '/' \
'/_ARCHIVES/ {print "s|_/pkg/"$4"/current|@(PUBLIC_USER)/pkg/"$4"/"substr($0,0,6)"|"}' > %o; \
|> $(PKG_SED_FILE)
# Generate sed commands for replacing package versions
: index.xml | pkg.sed |> sed -f pkg.sed %f | xz > %o \
|> public/@(PUBLIC_USER)/index/@(SCULPT_VERSION).xz
: $(DEPOT_DIR)/<raw-archives> $(DEPOT_DIR)/<bin-archives> $(DEPOT_DIR)/<pkg-archives> |> \
echo PUBLIC_USER=@(PUBLIC_USER) >> %o; \
echo PUBLIC_ARCH=@(TUP_ARCH) >> %o; \
echo "all: public/@(PUBLIC_USER)/index/@(SCULPT_VERSION).xz.sig" >> %o; \
echo %%.xz.sig: %%.xz >> %o; \
echo " @echo sign \$<" >> %o; \
echo " @gpg --detach-sign --digest-algo SHA256 --no-tty --local-user @(PUBLIC_KEY) < \$< > tmp" >> %o; \
echo " @mv tmp \$@" >> %o; \
for f in %<raw-archives>; do \
awk -F '/' -f errata/raw.mk.awk $f >> %o; done; \
for f in %<bin-archives>; do \
awk -F '/' -f errata/bin.mk.awk $f >> %o; done; \
$(SHORT_SUM) %<pkg-archives> | awk -f errata/pkg.mk.awk >> %o; \
|> Makefile
# Generate the makefile for creating signed package tarballs
DEPOT_INDEX_FILE = $(DEPOT_DIR)/index/@(SCULPT_VERSION)
PUBLIC_INDEX_FILE = $(PUBLIC_DIR)/index/@(SCULPT_VERSION)
AWK_RUNTIME_PATH = awk -v RS=' ' -F '/' \
'{print " <pkg path=\"local/pkg/"$4"/current\"/>"}'
: $(DEPOT_DIR)/<runtime> $(DEPOT_DIR)/<libretro-runtimes> |> ^ generate index^ \
echo '<index>' > %o; \
echo ' <index name="Libretro">' >> %o; \
echo %<libretro-runtimes> | $(AWK_RUNTIME_PATH) >> %o; \
echo ' </index>' >> %o; \
echo %<runtime> | $(AWK_RUNTIME_PATH) >> %o; \
echo '</index>' >> %o |> $(DEPOT_INDEX_FILE) {index}
# Generate the depot index file