diff --git a/configure b/configure index 3e7bd77..0a14e10 100755 --- a/configure +++ b/configure @@ -141,6 +141,9 @@ install: uninstall: ${NINJA} ${NINJA_OPT} uninstall +release: + ${NINJA} ${NINJA_OPT} release + check: ${MESONTEST} ${NINJA_OPT} END diff --git a/meson.build b/meson.build index 9b0f5d8..0100ab6 100644 --- a/meson.build +++ b/meson.build @@ -27,3 +27,7 @@ cargo_release = custom_target('cargo-build', install_dir: hammond_bindir, command: [cargo_script, '@CURRENT_SOURCE_DIR@', '@OUTPUT@']) +run_target('release', command: ['scripts/release.sh', + meson.project_name() + '-' + hammond_version + ], + depends: [cargo_release]) diff --git a/scripts/cargo.sh b/scripts/cargo.sh old mode 100644 new mode 100755 diff --git a/scripts/release.sh b/scripts/release.sh new file mode 100755 index 0000000..9715f8b --- /dev/null +++ b/scripts/release.sh @@ -0,0 +1,41 @@ +#!/bin/sh + +VERSION=$1 +DEST=${MESON_BUILD_ROOT} +DIST=$DEST/dist/$VERSION + + +cd "${MESON_SOURCE_ROOT}" +mkdir -p $DIST + +# copying files +cp -rf hammond-data $DIST +cp -rf hammond-gtk $DIST +cp -rf hammond-downloader $DIST +cp build.rs $DIST +cp Cargo.toml $DIST +cp configure $DIST +cp meson.build $DIST +cp Hammond.doap $DIST +cp LICENSE $DIST +cp README.md $DIST +# cp -rf assets/org.gnome.Hammond.desktop $DIST +cp -rf assets $DIST +cp -rf scripts $DIST + +# cargo vendor +cargo vendor +mkdir $DIST/.cargo +cat < $DIST/.cargo/config +[source.crates-io] +replace-with = "vendored-sources" + +[source.vendored-sources] +directory = "vendor" +EOF +cp -rf vendor $DIST/ + +# packaging +cd $DEST/dist +tar -czvf $VERSION.tar.gz $VERSION +