-*- mode: org -*- #+TITLE: spine (doc_reform) (project) makefile #+DESCRIPTION: makefile for spine #+FILETAGS: :spine:build:tools: #+AUTHOR: Ralph Amissah #+EMAIL: [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] #+COPYRIGHT: Copyright (C) 2015 - 2023 Ralph Amissah #+LANGUAGE: en #+STARTUP: content hideblocks hidestars noindent entitiespretty #+PROPERTY: header-args :exports code #+PROPERTY: header-args+ :noweb yes #+PROPERTY: header-args+ :results no #+PROPERTY: header-args+ :cache no #+PROPERTY: header-args+ :padline no #+PROPERTY: header-args+ :mkdirp yes - [[./doc-reform.org][doc-reform.org]] [[../org/][org/]] * project ** version info SET VERSION :version:set:project: *** project SET VERSION #+NAME: spine_version_set #+BEGIN_SRC sh 0.12.0 #+END_SRC *** build tools if specified - meson #+NAME: meson_version_set #+BEGIN_SRC sh 0.46 #+END_SRC - soversion #+NAME: soversion_version_set #+BEGIN_SRC sh 0 #+END_SRC * dr spine_search ** spine_search makefile :makefile *** tangle #+HEADER: :tangle ../makefile #+HEADER: :noweb yes #+BEGIN_SRC makefile include .envrc-local #SpineBIN := "${SpineBIN}" # 'result/bin' #SpineOUT := "${SpineOUT}" # '/srv/www/spine' #SpinePOD := "${SpinePOD}" # '~/grotto/repo/git.repo/projects/project-spine/doc-reform-markup/spine-markup-samples/markup/pod' #SpineSearchAction := 'https://sisudoc.org/spine_search' #SpineCGIform := 'spine_search' #SpineSQLdb := 'spine.search.db' default: flake-check flake-check: nix flake update; \ nix flake check; \ echo -e 'nix flake show ❯❯\n'; \ nix flake show; \ echo -e '\n❯❯ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell" -c zsh\n'; \ echo -e '❯❯ nix develop\n❯❯ nix develop -c zsh\n'; \ echo -e '❯❯ nix build ".#spine-ldc" --print-build-logs |& nom\n❯❯ nix build ".#spine-dmd" --print-build-logs |& nom\n'; \ echo -e '❯❯ make -s\n❯❯ make -s nix-build-ldc\n❯❯ make -s nix-build-dmd\n'; \ echo -e '❯❯ make -s ldc\n❯❯ make -s dmd\n'; \ echo -e '❯❯ $(DUB) --compiler=ldc2 --build=ldc2\n❯❯ $(DUB) --compiler=dmd --build=dmd\n'; nix-devshell: echo -ne '\n❯❯ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell"\n\n❯❯ nix build ".#default" --print-build-logs\n❯❯ nix build ".#spine-search-dmd" --print-build-logs\n❯❯ nix build ".#spine-search-ldc" --print-build-logs\n❯❯ nix build ".#spine-search-gdc" --print-build-logs\n\n'; \ nix flake update && nix flake check --show-trace && nix flake show && nix develop ".#devShell" # nix build build: nix-build-default nix-build-default: nix build ".#default" --print-build-logs nix-build-dmd: nix build ".#spine-search-dmd" --print-build-logs nix-build-ldc: nix build ".#spine-search-ldc" --print-build-logs nix-build-gdc: nix build ".#spine-search-gdc" --print-build-logs get_depends: hwd=$$(echo `pwd`) && \ gwd="$${hwd}/src/ext_depends" && \ dirs=$$(echo `ls -gx $${gwd}`) && \ license_bsl="Boost Software License 1.0 (BSL-1.0)" && \ echo $${hwd} && \ echo $${gwd} && \ echo $${deps} && \ dub upgrade; \ cd $${gwd} && \ for dir in $${deps}; do \ if [ -d $${dir} ]; then \ echo $${dir} && \ if [[ "arsd" == $${dir} ]]; then \ echo $${dir} && \ rm -rf $${dir} && \ mkdir $${dir} && \ aria2c -o "$${dir}/cgi.d" "https://raw.githubusercontent.com/adamdruppe/arsd/master/cgi.d" && \ cd $${gwd}; \ elif [[ "d2sqlite3" == $${dir} ]]; then \ echo $${dir} && \ rm -rf $${dir} && \ git clone --depth=1 https://github.com/dlang-community/$${dir} && \ cd $${dir} && \ echo "$${dir} `git rev-parse HEAD | cut -c 1-8`" > ../$${dir}.meta && \ echo "https://github.com/dlang-community/$${dir}" >> ../$${dir}.meta && \ echo "$${license_bsl}" >> ../$${dir}.meta && \ cd $${gwd} && \ rm -rf $${dir}/.git; \ fi; \ fi; \ done; \ cd $${hwd} set_depends: get_depends dub describe | sed 's~$(shell echo `pwd | sed 's_/_\\/_g'`)~.~g' > dub_describe.json # cp cgi search form cp-cgi: sudo cp -vi /var/www/cgi/cgi-bin/spine_search /var/www/cgi/cgi-bin/spine_search_old && \ sudo cp -vi result/share/cgi-bin/spine_search /var/www/cgi/cgi-bin/spine_search #+END_SRC