# Template file for 'nim' pkgname=nim version=0.18.0 revision=2 _cversion=0.18.0 _nimbleversion=0.8.10 depends="gcc" hostmakedepends="ed" short_desc="The Nim programming language" maintainer="allan " license="MIT" homepage="https://nim-lang.org/" distfiles="https://github.com/nim-lang/Nim/archive/v${version}.tar.gz https://github.com/nim-lang/csources/archive/v${_cversion}.tar.gz>csources-${_cversion}.tar.gz https://github.com/nim-lang/nimble/archive/v${_nimbleversion}.tar.gz>nimble-${_nimbleversion}.tar.gz" checksum="9b9982f349fb96db44020a6da14fa683179b637a3d94782e2c99156ac613e187 e9aff9d58661ea852ae424ba34fc3750b45fb31982645a3038de2300bea2d17c bb1962a71448945775bba4c1fd63162fa9bb2afbaf6d6f61a5012c1c3fee59f9" build_wrksrc=Nim-$version create_wrksrc=yes post_extract() { mv csources-$_cversion $build_wrksrc/csources mkdir $build_wrksrc/dist mv nimble-$_nimbleversion $build_wrksrc/dist/nimble } do_build() { cd csources CFLAGS= LDFLAGS= sh build.sh cd .. ed lib/wrappers/openssl.nim <<-EDIT ,s/versions = "(/versions = "(.45|/ w q EDIT bin/nim c koch ./koch boot -d:release case "$XBPS_TARGET_MACHINE" in aarch64*) _arch=arm64 ;; arm*) _arch=arm esac case "$XBPS_TARGET_MACHINE" in arm*|aarch64*) ed config/nim.cfg <<-EDIT ,s/^arm.linux.gcc.exe .*/arm.linux.gcc.exe = "$CC"/ ,s/^arm.linux.gcc.linkerexe .*/arm.linux.gcc.linkerexe = "$CC"/ a arm64.linux.gcc.exe = "$CC" arm64.linux.gcc.linkerexe = "$CC" . w q EDIT bin/nim c -d:release --os:linux --cpu:$_arch --listCmd compiler/nim for _p in \ dist/nimble/src/nimble \ tools/nimgrep \ nimsuggest/nimsuggest do bin/nim c -d:release --os:linux --cpu:$_arch --listCmd $_p mv $_p bin done ;; *) ./koch tools esac } do_install() { ./koch install ${DESTDIR}/usr/lib if [ "$CROSS_BUILD" ]; then mv compiler/nim ${DESTDIR}/usr/lib/nim/bin/nim fi vmkdir usr/bin vmkdir usr/share/nim ln -sf /usr/lib/nim/bin/nim ${DESTDIR}/usr/bin/nim for _f in nimble nimsuggest nimgrep; do chmod 0755 bin/$_f cp bin/$_f ${DESTDIR}/usr/lib/nim/bin ln -sf /usr/lib/nim/bin/$_f ${DESTDIR}/usr/bin/$_f done cp -r doc examples ${DESTDIR}/usr/lib/nim ln -sf /usr/lib/nim/doc ${DESTDIR}/usr/share/nim/doc ln -sf /usr/lib/nim/examples ${DESTDIR}/usr/share/nim/examples vlicense copying.txt }