mirror of
https://git.gfz-potsdam.de/naaice/iphreeqc.git
synced 2025-12-15 16:18:22 +01:00
cleaning up r-build
This commit is contained in:
parent
de3cd91cff
commit
547c6ed33d
18
.github/workflows/cmake.yml
vendored
18
.github/workflows/cmake.yml
vendored
@ -122,21 +122,13 @@ jobs:
|
|||||||
shell: Rscript {0}
|
shell: Rscript {0}
|
||||||
|
|
||||||
- name: versioning
|
- name: versioning
|
||||||
run: ./jenkins-R-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
||||||
|
|
||||||
# - name: versioning
|
- name: build
|
||||||
# run: ./jenkins-dist.sh -v ${{ needs.init.outputs.VER }} -r ${{ needs.init.outputs.REL }} -d ${{ needs.init.outputs.DATE }}
|
run: cd R && make build
|
||||||
|
|
||||||
# - name: R
|
- name: check
|
||||||
# run: |
|
run: cd R && make check
|
||||||
# cd R
|
|
||||||
# mkdir -p phreeqc/man
|
|
||||||
# mkdir -p phreeqc/src/phreeqcpp
|
|
||||||
# mkdir -p phreeqc/R
|
|
||||||
# mkdir -p phreeqc/data
|
|
||||||
# echo "# Generated by roxygen2: do not edit by hand" > phreeqc/NAMESPACE
|
|
||||||
# DATE=$(date -d ${{ needs.init.outputs.DATE }} "+%Y-%m-%d")
|
|
||||||
# make VERSION=${{ needs.init.outputs.VER }} RELEASE_DATE=$DATE build
|
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v2
|
- uses: actions/upload-artifact@v2
|
||||||
with:
|
with:
|
||||||
|
|||||||
82
R/Makefile
82
R/Makefile
@ -1,19 +1,36 @@
|
|||||||
|
# phreeqc TOPDIR
|
||||||
|
# ├── data DATADIR
|
||||||
|
# ├── inst INST
|
||||||
|
# ├── man MAN
|
||||||
|
# ├── R
|
||||||
|
# └── src IDEST
|
||||||
|
# └── phreeqcpp DEST
|
||||||
|
#
|
||||||
|
|
||||||
CP=cp -f
|
CP=cp -f
|
||||||
TOPDIR=phreeqc
|
TOPDIR ?= phreeqc
|
||||||
IDEST=phreeqc/src
|
IDEST=$(TOPDIR)/src
|
||||||
DEST=phreeqc/src/phreeqcpp
|
DEST=$(TOPDIR)/src/phreeqcpp
|
||||||
ISRC=../src
|
ISRC=../src
|
||||||
SRC=../src/phreeqcpp
|
SRC=../src/phreeqcpp
|
||||||
INST=phreeqc/inst
|
INST=$(TOPDIR)/inst
|
||||||
DBDIR=../database
|
DBDIR=../database
|
||||||
DATADIR=phreeqc/data
|
DATADIR=$(TOPDIR)/data
|
||||||
EXDIR=../phreeqc3-examples
|
EXDIR=../phreeqc3-examples
|
||||||
MAN=phreeqc/man
|
MAN=$(TOPDIR)/man
|
||||||
|
R=$(TOPDIR)/R
|
||||||
|
|
||||||
SVN_URL := http://internalbrr.cr.usgs.gov/svn_GW
|
_TOPDIR := $(shell mkdir -p $(TOPDIR))
|
||||||
RELEASE ?= $(shell svn info $(SVN_URL) | egrep "Revision:" | cut -b 10- | ( read one two ; echo $$one ) )
|
_IDEST := $(shell mkdir -p $(IDEST))
|
||||||
|
_DEST := $(shell mkdir -p $(DEST))
|
||||||
|
_INST := $(shell mkdir -p $(INST))
|
||||||
|
_DATADIR := $(shell mkdir -p $(DATADIR))
|
||||||
|
_MAN := $(shell mkdir -p $(MAN))
|
||||||
|
_R := $(shell mkdir -p $(R))
|
||||||
|
|
||||||
|
RELEASE ?= $(shell curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/rel.py | python3 -)
|
||||||
RELEASE_DATE ?= $(shell date "+%Y-%m-%d")
|
RELEASE_DATE ?= $(shell date "+%Y-%m-%d")
|
||||||
VERSION ?= 1.0
|
VERSION ?= $(shell curl -sS https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/next_ver.sh | /bin/sh)
|
||||||
|
|
||||||
DBS = \
|
DBS = \
|
||||||
Amm.ascii \
|
Amm.ascii \
|
||||||
@ -281,11 +298,12 @@ $(DATADIR)/examples.rda : $(EXS) build-examples.R
|
|||||||
R --no-save --no-restore CMD BATCH build-examples.R
|
R --no-save --no-restore CMD BATCH build-examples.R
|
||||||
rm -f .RData
|
rm -f .RData
|
||||||
|
|
||||||
roxygenize $(MAN)/phreeqc-package.Rd : phreeqc/R/phreeqc.R
|
# roxygenize $(MAN)/phreeqc-package.Rd : $(R)/phreeqc.R
|
||||||
rm -f $(RDFILES)
|
# rm -f $(RDFILES)
|
||||||
rm -f .RData
|
# rm -f .RData
|
||||||
R --no-save --no-restore CMD BATCH roxygenize.R
|
# # R --no-save --no-restore CMD BATCH roxygenize.R
|
||||||
touch $(MAN)/phreeqc-package.Rd
|
# # touch $(MAN)/phreeqc-package.Rd
|
||||||
|
# Rscript -e 'devtools::document(pkg = "phreeqc")'
|
||||||
|
|
||||||
|
|
||||||
##$(PSRC): $(DEST)
|
##$(PSRC): $(DEST)
|
||||||
@ -809,8 +827,18 @@ $(INST)/ex2 : ../phreeqc3-examples/ex2
|
|||||||
|
|
||||||
########################################
|
########################################
|
||||||
|
|
||||||
|
roxygenize $(MAN)/phreeqc-package.Rd : $(R)/phreeqc.R
|
||||||
|
rm -f $(RDFILES)
|
||||||
|
rm -f .RData
|
||||||
|
# R --no-save --no-restore CMD BATCH roxygenize.R
|
||||||
|
# touch $(MAN)/phreeqc-package.Rd
|
||||||
|
Rscript -e 'devtools::document(pkg = "phreeqc")'
|
||||||
|
|
||||||
check : all
|
check : all
|
||||||
Rscript -e "devtools::check('phreeqc')"
|
Rscript -e "devtools::check(pkg = 'phreeqc')"
|
||||||
|
|
||||||
|
# check_built :
|
||||||
|
# Rscript -e "devtools::check_built()"
|
||||||
|
|
||||||
valgrind : install
|
valgrind : install
|
||||||
R -d "valgrind --tool=memcheck --leak-check=full" --vanilla < valgrind.R 2>&1 | tee valgrind.full.out
|
R -d "valgrind --tool=memcheck --leak-check=full" --vanilla < valgrind.R 2>&1 | tee valgrind.full.out
|
||||||
@ -818,12 +846,14 @@ valgrind : install
|
|||||||
install : all
|
install : all
|
||||||
R CMD INSTALL --build phreeqc
|
R CMD INSTALL --build phreeqc
|
||||||
|
|
||||||
|
$(TOPDIR)/R/phreeqc.R : phreeqc.R.in export_sed
|
||||||
|
|
||||||
phreeqc/R/phreeqc.R : export_sed
|
$(TOPDIR)/DESCRIPTION : DESCRIPTION.in export_sed
|
||||||
|
|
||||||
phreeqc/DESCRIPTION : export_sed
|
$(TOPDIR)/inst/CITATION : CITATION.in export_sed
|
||||||
|
|
||||||
export_sed :
|
.PHONY: export_sed
|
||||||
|
export_sed : check-vars
|
||||||
sed \
|
sed \
|
||||||
-e 's/@VERSION@/$(VERSION)/g' \
|
-e 's/@VERSION@/$(VERSION)/g' \
|
||||||
< DESCRIPTION.in > $(TOPDIR)/DESCRIPTION
|
< DESCRIPTION.in > $(TOPDIR)/DESCRIPTION
|
||||||
@ -831,6 +861,9 @@ export_sed :
|
|||||||
-e 's/@VERSION@/$(VERSION)/g' \
|
-e 's/@VERSION@/$(VERSION)/g' \
|
||||||
-e 's/@RELEASE_DATE@/$(RELEASE_DATE)/g' \
|
-e 's/@RELEASE_DATE@/$(RELEASE_DATE)/g' \
|
||||||
< phreeqc.R.in > $(TOPDIR)/R/phreeqc.R
|
< phreeqc.R.in > $(TOPDIR)/R/phreeqc.R
|
||||||
|
echo "# Generated by roxygen2: do not edit by hand" > $(TOPDIR)/NAMESPACE
|
||||||
|
$(CP) CITATION $(TOPDIR)/inst/CITATION
|
||||||
|
$(CP) LICENSE.note $(TOPDIR)/LICENSE.note
|
||||||
|
|
||||||
build : all
|
build : all
|
||||||
R CMD build --resave-data phreeqc
|
R CMD build --resave-data phreeqc
|
||||||
@ -847,10 +880,19 @@ $(IDEST)/R.cpp : R.cpp
|
|||||||
< $< > $@
|
< $< > $@
|
||||||
|
|
||||||
$(IDEST):
|
$(IDEST):
|
||||||
mkdir $(IDEST)
|
mkdir -p $(IDEST)
|
||||||
|
|
||||||
$(DEST):
|
$(DEST):
|
||||||
mkdir $(DEST)
|
mkdir -p $(DEST)
|
||||||
|
|
||||||
clean :
|
clean :
|
||||||
rm -f $(PSRC) $(XSRC) $(DEST)/*.o $(IDEST)/*.o $(DEST)/*.so
|
rm -f $(PSRC) $(XSRC) $(DEST)/*.o $(IDEST)/*.o $(DEST)/*.so
|
||||||
|
|
||||||
|
.PHONY: check-vars
|
||||||
|
check-vars:
|
||||||
|
ifndef VERSION
|
||||||
|
$(error VERSION is undefined)
|
||||||
|
endif
|
||||||
|
ifndef RELEASE_DATE
|
||||||
|
$(error RELEASE_DATE is undefined)
|
||||||
|
endif
|
||||||
|
|||||||
@ -4,28 +4,28 @@
|
|||||||
# set DATE
|
# set DATE
|
||||||
#
|
#
|
||||||
if [ -z "$DATE" ]; then
|
if [ -z "$DATE" ]; then
|
||||||
DATE=$(date "+%x")
|
DATE=$(date "+%x")
|
||||||
fi
|
fi
|
||||||
DATE=$(date -d $DATE "+%Y-%m-%d")
|
DATE=$(date -d $DATE --rfc-3339=date)
|
||||||
|
|
||||||
#
|
#
|
||||||
# set VER
|
# set VER
|
||||||
#
|
#
|
||||||
if [ -z "$VER" ]; then
|
if [ -z "$VER" ]; then
|
||||||
###wget https://cran.r-project.org/package=phreeqc -O index.xhtml 2> /dev/null
|
###wget https://cran.r-project.org/package=phreeqc -O index.xhtml 2> /dev/null
|
||||||
###VER=`xmlstarlet sel -t -m "/_:html/_:body/_:table[1]/_:tr[1]/_:td[2]" -v . -n index.xhtml 2> /dev/null`
|
###VER=`xmlstarlet sel -t -m "/_:html/_:body/_:table[1]/_:tr[1]/_:td[2]" -v . -n index.xhtml 2> /dev/null`
|
||||||
VER=$(curl https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/phreeqc-version.txt)
|
VER=$(curl https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/phreeqc-version.txt)
|
||||||
ver_major=$(echo "$VER" | cut -d '.' -f 1)
|
ver_major=$(echo "$VER" | cut -d '.' -f 1)
|
||||||
ver_minor=$(echo "$VER" | cut -d '.' -f 2)
|
ver_minor=$(echo "$VER" | cut -d '.' -f 2)
|
||||||
ver_patch=$(echo "$VER" | cut -d '.' -f 3)
|
ver_patch=$(echo "$VER" | cut -d '.' -f 3)
|
||||||
ver_patch=$((ver_patch+1))
|
ver_patch=$((ver_patch+1))
|
||||||
else
|
else
|
||||||
ver_major=$(echo "$VER" | cut -d '.' -f 1)
|
ver_major=$(echo "$VER" | cut -d '.' -f 1)
|
||||||
ver_minor=$(echo "$VER" | cut -d '.' -f 2)
|
ver_minor=$(echo "$VER" | cut -d '.' -f 2)
|
||||||
ver_patch=$(echo "$VER" | cut -d '.' -f 3)
|
ver_patch=$(echo "$VER" | cut -d '.' -f 3)
|
||||||
fi
|
fi
|
||||||
if [ -z "$ver_major" ] || [ -z "$ver_minor" ] || [ -z "$ver_patch" ]; then
|
if [ -z "$ver_major" ] || [ -z "$ver_minor" ] || [ -z "$ver_patch" ]; then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
VER="${ver_major}.${ver_minor}.${ver_patch}"
|
VER="${ver_major}.${ver_minor}.${ver_patch}"
|
||||||
export VER
|
export VER
|
||||||
@ -36,16 +36,11 @@ export VER
|
|||||||
curl https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/ver.py -o ver.py
|
curl https://raw.githubusercontent.com/usgs-coupled/phreeqc-version/main/ver.py -o ver.py
|
||||||
HEAD=$(python3 ver.py)
|
HEAD=$(python3 ver.py)
|
||||||
if [ -z "$REL" ]; then
|
if [ -z "$REL" ]; then
|
||||||
REL="$HEAD"
|
REL="$HEAD"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# sed files
|
# sed files
|
||||||
/bin/sh jenkins-dist.sh -v ${VER} -r ${REL} -d ${DATE} -pr ${TAG}
|
/bin/sh jenkins-dist.sh -v ${VER} -r ${REL} -d ${DATE} -pr ${TAG}
|
||||||
cd R
|
cd R
|
||||||
mkdir -p phreeqc/man
|
make VERSION=${VER} RELEASE_DATE=${DATE} build
|
||||||
mkdir -p phreeqc/src/phreeqcpp
|
|
||||||
mkdir -p phreeqc/R
|
|
||||||
mkdir -p phreeqc/data
|
|
||||||
echo "# Generated by roxygen2: do not edit by hand" > phreeqc/NAMESPACE
|
|
||||||
# make VERSION=${VER} RELEASE_DATE=${DATE} build
|
|
||||||
make VERSION=${VER} RELEASE_DATE=${DATE} check
|
make VERSION=${VER} RELEASE_DATE=${DATE} check
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user