Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
859ecac
first build on kami
carlodefalco Apr 1, 2024
ed0e2dc
add instructions for building on kami
carlodefalco Apr 1, 2024
11049c0
more occurrences of python packages
carlodefalco Apr 1, 2024
42092de
download over http
carlodefalco Apr 1, 2024
719552e
update octave
carlodefalco Apr 1, 2024
da99402
update eigen
carlodefalco Apr 1, 2024
4263a5b
add sundials and rapidjson
carlodefalco Apr 1, 2024
d6568de
add sundials and rapidjson
carlodefalco Apr 1, 2024
3d8036a
update qhull
carlodefalco Apr 1, 2024
8e348c6
upgrade octave
carlodefalco Apr 1, 2024
32b20ee
Update Dockerfile
carlodefalco Apr 3, 2024
163062a
Install TeXinfo before bison
carlodefalco Apr 3, 2024
c05a793
Update Dockerfile
carlodefalco Apr 3, 2024
08a26d2
Update Dockerfile
carlodefalco Apr 3, 2024
793999b
parallel build
carlodefalco Apr 3, 2024
19e2653
fix trilinos
carlodefalco Apr 3, 2024
8c26923
fix deal.II
carlodefalco Apr 3, 2024
514e296
add sundials module
carlodefalco Apr 3, 2024
1e94494
correct shasum for qhull
carlodefalco Apr 3, 2024
44a81a0
Update README.md
carlodefalco Apr 3, 2024
00a9f2e
Update README.md
carlodefalco Apr 3, 2024
f4a0dde
force links
carlodefalco Apr 3, 2024
6be7ec5
Update README.md
carlodefalco Apr 3, 2024
c1dd4e9
Add note about --squash
carlodefalco Apr 4, 2024
0db326c
remove reference to /u/sw/
carlodefalco Apr 5, 2024
6561115
fix libxml2 location
carlodefalco Apr 6, 2024
3169b54
upgrade openssh
carlodefalco Apr 7, 2024
6bac68c
upgrade libssh2
carlodefalco Apr 7, 2024
5a8b999
upgrade openssl
carlodefalco Apr 7, 2024
9533709
gold has been depracated so substitute with ld
carlodefalco Apr 7, 2024
ff55543
Merge branch 'pcafrica:main' into kami
carlodefalco Apr 7, 2024
aca10ff
we cannot assume that ld.gold exists
carlodefalco Apr 7, 2024
3eb676d
fix octave installation prefix
carlodefalco Apr 7, 2024
8252eac
fix tbb library path
carlodefalco Apr 7, 2024
ba47a40
new package octave_file_io
carlodefalco Apr 7, 2024
bf94432
upgrade p4est
carlodefalco Apr 9, 2024
195c400
updates to more packages
carlodefalco May 10, 2024
0ede223
optimize by default
carlodefalco May 10, 2024
c70cb39
store source for hostname workname
carlodefalco May 14, 2024
a587744
fix libdir names
carlodefalco May 30, 2024
a03c6ea
two new packages
carlodefalco May 30, 2024
fd08544
fix dependencies
carlodefalco May 30, 2024
71447cb
add missing libraries
carlodefalco Jul 2, 2024
35f0359
download fixed source and remove local patch
carlodefalco Jul 2, 2024
74f8c79
remove patch applied upstream
carlodefalco Jul 2, 2024
3b1f10f
Merge branch 'main' into kami
pcafrica Jul 3, 2024
7a10f68
Restore Dockerfile and README.md
pcafrica Jul 4, 2024
cf71241
Remove bimpp
pcafrica Jul 4, 2024
7ef681a
Remove most Python packages
pcafrica Jul 4, 2024
1d6b7b6
Fix Dockerfile
pcafrica Jul 4, 2024
3edf10f
Cleanup Trilinons + PETSc
pcafrica Jul 4, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ RUN tar czvf ${mkOutputBasename}-toolchain.tar.gz ${mkPrefix}
SHELL ["/bin/bash", "-c"]

RUN printf "\n# mk.\n\
source /u/sw/etc/profile\n\
source ${mkPrefix}/etc/profile\n\
module load gcc-glibc\n" >> ${mkBashrc}


Expand Down
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,8 @@ Use `module avail` or `module spider` to check the available packages.
A `Docker` image built upon [`Ubuntu`](https://hub.docker.com/_/ubuntu)
(`x86-64` architecture) with `mk` installed is available
[here](https://hub.docker.com/r/pcafrica/mk).

### TODO

Docker has deprecated and removed the `--squash` option.
We should use [multi-stage builds](https://docs.docker.com/build/building/multi-stage/) instead.
14 changes: 10 additions & 4 deletions base/automake/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

pkgname=automake
_pkgver=1.16
pkgver=$_pkgver.3
archive=$pkgname-$pkgver.tar.gz
sum=b36e3877d961c1344351cc97b35b683a4dfadc0c
pkgver=$_pkgver.5
archive=$pkgname-$pkgver.tar.xz
sum=32fb36e73568271ff506b60c55a6170b67681375

dstdir=$mkToolchainBase

Expand All @@ -22,12 +22,18 @@ build() {
}

package() {
message "running package() in ${PWD}"
make -C $pkgname-$pkgver install
rm -f "$dstdir"/bin/aclocal; ln -sf aclocal-$_pkgver "$dstdir"/bin/aclocal
rm -f "$dstdir"/bin/automake; ln -sf automake-$_pkgver "$dstdir"/bin/automake
if [[ -d "$dstdir"/share/aclocal ]]; then
if [[ -d "$dstdir"/share/aclocal && ! -h "$dstdir"/share/aclocal ]]; then
mv -v "$dstdir"/share/aclocal/* "$dstdir"/share/aclocal-$_pkgver/
rmdir "$dstdir"/share/aclocal
elif [[ -h "$dstdir"/share/aclocal && ! "$dstdir"/share/aclocal -ef "$dstdir"/share/aclocal-$_pkgver ]]; then
mv -v "$dstdir"/share/aclocal/* "$dstdir"/share/aclocal-$_pkgver/
unlink "$dstdir"/share/aclocal
elif [[ -h "$dstdir"/share/aclocal && "$dstdir"/share/aclocal -ef "$dstdir"/share/aclocal-$_pkgver ]]; then
unlink "$dstdir"/share/aclocal
fi
ln -svf aclocal-$_pkgver "$dstdir"/share/aclocal
}
15 changes: 8 additions & 7 deletions base/cmake/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
#!/bin/bash

pkgname=cmake
pkgver=3.28.1
pkgver=3.29.0
archive=$pkgname-$pkgver.tar.gz
sum=7e75b96ea2ca80cc70af6223e094495da3efc03c
sum=eb0782641723651a19d337bb4301bc493e5efb33

dstdir=$mkToolchainBase

build() {
download https://www.cmake.org/files/v${pkgver%.*}/$archive
download https://github.com/Kitware/CMake/releases/download/v$pkgver/$pkgname-$pkgver.tar.gz
check $archive $sum
extract $archive

pushd $pkgname-$pkgver
message "Configuring $pkgname"
export VERBOSE=1
export LC_ALL=C
./configure --prefix="$dstdir" --parallel=$pkgJobs \
--mandir=/share/man --docdir=/share/doc/cmake \
--no-system-libs --no-qt-gui \
--sphinx-man
--mandir=share/man --docdir=share/doc/cmake \
--no-system-libs --no-qt-gui
message "Compiling $pkgname"
make
LC_ALL=C make V=1 -j1
popd
}

Expand Down
4 changes: 2 additions & 2 deletions base/emacs/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=emacs
pkgver=27.2
pkgver=29.3
archive=$pkgname-$pkgver.tar.xz
sum=8d18e2bfb6e28cf060ce7587290954e9c582aa25
sum=876fe639e4841c29550d94ed869f1d6754626002

dstdir=$mkToolchainBase

Expand Down
8 changes: 4 additions & 4 deletions base/htop/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#!/bin/bash

pkgname=htop
pkgver=3.0.5
archive=$pkgver.tar.gz
sum=de974e38e2c8d5900a4ab363111cb0544d391547
pkgver=3.3.0
archive=$pkgname-$pkgver.tar.xz
sum=1b20a1aae696f0c00fa27be426121c38eae25146

dstdir=$mkToolchainBase

build() {
download https://github.com/$pkgname-dev/$pkgname/archive/$archive
download https://github.com/$pkgname-dev/htop/releases/download/$pkgver/$pkgname-$pkgver.tar.xz
check $archive $sum
extract $archive

Expand Down
7 changes: 4 additions & 3 deletions base/libssh2/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=libssh2
pkgver=1.9.0
pkgver=1.11.0
archive=$pkgname-$pkgver.tar.gz
sum=21e98282b103307a16792e5e2d4c99beaf0b3b9c
sum=fbdb4751a4bc93e895e9c3426f7f80b437d250fe

dstdir=$mkToolchainBase

Expand All @@ -16,7 +16,8 @@ build() {
message "Configuring $pkgname"
./configure --build=$TARGET --prefix="$dstdir" --disable-silent-rules \
--disable-static --disable-rpath --disable-examples-build \
--with-libz --with-crypto=openssl
--with-libz --with-crypto=openssl --disable-sshd-tests \
--disable-docker-tests
message "Building $pkgname"
make
popd
Expand Down
6 changes: 3 additions & 3 deletions base/libtool/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=libtool
pkgver=2.4.6
archive=$pkgname-$pkgver.tar.gz
sum=25b6931265230a06f0fc2146df64c04e5ae6ec33
pkgver=2.4.7
archive=$pkgname-$pkgver.tar.xz
sum=0c90f1b046ea9cd7b32a4b5a6a9df4b46ddb637a

dstdir=$mkToolchainBase

Expand Down
19 changes: 10 additions & 9 deletions base/libxml2/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
#!/bin/bash

pkgname=libxml2
pkgver=2.9.12
archive=$pkgname-$pkgver.tar.gz
sum=339fe5bb2a7d0c13f068c26d8f7cd194c13f9a2a
pkgver=2.12
pkgpatchlev=6
archive=$pkgname-$pkgver.$pkgpatchlev.tar.xz
sum=78f051918795f2885168cb4becde4e2c9f94c78c

dstdir=$mkToolchainBase

build() {
download http://xmlsoft.org/sources/$archive
download https://download.gnome.org/sources/libxml2/$pkgver/$archive
check $archive $sum
extract $archive

pushd $pkgname-$pkgver
pushd $pkgname-$pkgver.$pkgpatchlev
# (2.9.10 with Python 3.9) https://bugzilla.redhat.com/show_bug.cgi?id=1808343
sed -i "s|TRUE|true|g" encoding.c
if [[ -e "$srcdir"/$pkgname-$pkgver.patch ]]; then
if [[ -e "$srcdir"/$pkgname-$pkgver.$pkgpatchlev.patch ]]; then
message "Applying patch to $pkgname"
patch -p1 -i "$srcdir"/$pkgname-$pkgver.patch
patch -p1 -i "$srcdir"/$pkgname-$pkgver.$pkgpatchlev.patch
fi

message "Configuring $pkgname"
Expand All @@ -29,8 +30,8 @@ build() {
}

package() {
make -C $pkgname-$pkgver install
pushd $pkgname-$pkgver/python
make -C $pkgname-$pkgver.$pkgpatchlev install
pushd $pkgname-$pkgver.$pkgpatchlev/python
sed -i "s|\"/usr/include\",$||g" setup.py
sed -i "s|\"/usr/local/include\",$||g" setup.py
sed -i "s|\"/opt/include\",$||g" setup.py
Expand Down
2 changes: 1 addition & 1 deletion base/mercurial/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ pkgver=5.8
dstdir=$mkToolchainBase

package() {
pip install -I --prefix="$dstdir" "$pkgname==$pkgver"
pip install -I --prefix="$dstdir" "$pkgname"
}
4 changes: 2 additions & 2 deletions base/ninja/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=ninja
pkgver=1.10.2
pkgver=1.11.1
archive=v$pkgver.tar.gz
sum=8d2e8c1c070c27fb9dc46b4a6345bbb1de7ccbaf
sum=938723cdfc7a6f7c8f84c83b9a2cecdf1e5e1ad3

dstdir=$mkToolchainBase

Expand Down
6 changes: 3 additions & 3 deletions base/openmpi/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=openmpi
pkgver=4.1.2
pkgver=5.0.2
archive=$pkgname-$pkgver.tar.bz2
sum=193242d2e1684dd5310a797ebff85c2f
sum=18b05755c842b2a0a87b1baa2a6ea34e8fd516c7
dstdir=$mkToolchainBase

install_ofed() {
Expand Down Expand Up @@ -131,7 +131,7 @@ package() {
--without-libltdl --disable-dlopen \
--enable-pretty-print-stacktrace \
$with_valgrind $with_ib $with_tm \
--with-hwloc="$mkToolchainBase"
--with-hwloc="$mkToolchainBase" --disable-sphinx
message "Compiling $pkgname"
make install
popd
Expand Down
4 changes: 2 additions & 2 deletions base/openssh/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=openssh
pkgver=8.6p1
pkgver=9.7p1
archive=$pkgname-$pkgver.tar.gz
sum=8f9f0c94317baeb97747d6258f3997b4542762c0
sum=ce8985ea0ea2f16a5917fd982ade0972848373cc

dstdir=$mkToolchainBase

Expand Down
15 changes: 8 additions & 7 deletions base/openssl/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
#!/bin/bash

pkgname=openssl
pkgver=1.1.1k
archive=OpenSSL_${pkgver//./_}.tar.gz
sum=95a5b6a0f9e866b1b131d71ec13b7f2b83a93da1
pkgver=3.2.1
archive=$pkgname-$pkgver.tar.gz
sum=9668723d65d21a9d13e985203ce8c27ac5ecf3ae

dstdir=$mkToolchainBase

build() {
download https://github.com/openssl/openssl/archive/$archive
download https://github.com/openssl/openssl/releases/download/$pkgname-$pkgver/$archive
check $archive $sum
extract $archive

pushd $pkgname-OpenSSL_${pkgver//./_}
pushd $pkgname-$pkgver
message "Configuring $pkgname"
KERNEL_BITS=64 \
./config --prefix="$dstdir" --openssldir="$dstdir"/etc/ssl --libdir=lib \
Expand All @@ -24,7 +24,7 @@ build() {

package() {
# installing openssl
make -C $pkgname-OpenSSL_${pkgver//./_} MANDIR="$dstdir"/share/man MANSUFFIX=ssl install
make -C $pkgname-$pkgver MANDIR="$dstdir"/share/man MANSUFFIX=ssl install
sed -i "1s:/usr/bin/perl:$(which perl):" "$dstdir"/bin/c_rehash
sed -i "1s:/usr/bin/perl:$(which perl):" "$dstdir"/etc/ssl/misc/tsget

Expand All @@ -40,7 +40,8 @@ package() {
sed -i "1s:/bin/bash:$(which bash):" "$dstdir"/libexec/ssl/make-ca

"$dstdir"/libexec/ssl/make-ca -f -g


chmod u+w "$dstdir"/etc/ssl/certs
ln -s "$dstdir"/etc/pki/tls/certs/ca-bundle.crt "$dstdir"/etc/ssl/certs/ca-bundle.crt
ln -s "$dstdir"/etc/pki/tls/certs/ca-bundle.crt "$dstdir"/etc/ssl/certs/ca-certificates.crt
}
2 changes: 1 addition & 1 deletion base/packages.txt
Original file line number Diff line number Diff line change
Expand Up @@ -248,7 +248,7 @@ dependencies:
Portable Hardware Locality is a portable abstraction of hierarchical
architectures.

openmpi: hwloc, libnl, libtool, valgrind
openmpi: hwloc, libnl, libtool, valgrind, sphinx
The Open MPI Project is an open source Message Passing Interface
implementation that is developed and maintained by a consortium of
academic, research, and industry partners.
Expand Down
3 changes: 2 additions & 1 deletion base/perl/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ build() {
-Dman1dir="$dstdir/share/man/man1" -Dman1ext=1perl \
-Dman3dir="$dstdir/share/man/man3" -Dman3ext=3perl \
-Dlocincpth="${mkToolchainPrefix}/include ${mkToolchainBase}/include" \
-Dloclibpth="${mkToolchainPrefix}/lib ${mkToolchainBase}/lib"
-Dloclibpth="${mkToolchainPrefix}/lib ${mkToolchainBase}/lib" \
-Dlibswanted="pthread db gdbm dl ld m"

message "Compiling $pkgname"
make
Expand Down
17 changes: 11 additions & 6 deletions base/python/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
#!/bin/bash

pkgname=python
pkgver=3.9.6
pkgver=3.12.2
archive=Python-$pkgver.tar.xz
sum=05826c93a178872958f6685094ee3514e53ba653
sum=040eac171c17062253042f7faafea830b03bf07b

dstdir=$mkToolchainBase

Expand All @@ -20,19 +20,23 @@ build() {
# ensure to use system libraries
rm -rf Modules/{expat,zlib,_ctypes/{darwin,libffi}*}
# fixing the system paths
sed -i "s:/usr/include:$mkToolchainBase/include:g" setup.py
sed -i "s:/usr/lib:$mkToolchainBase/lib:g" setup.py
if [[ -r setup.py ]]; then
sed -i "s:/usr/include:$mkToolchainBase/include:g" setup.py
sed -i "s:/usr/lib:$mkToolchainBase/lib:g" setup.py
fi
message "Configuring $pkgname"
# --with-dbmliborder=bdb:gdbm
# Use this switch if you want to build Python DBM Module against Berkeley
# DB instead of GDBM
# --enable-optimizations
# A release build with all optimizations active
message "TARGET is ${TARGET}"
./configure --build=$TARGET --prefix="$dstdir" --enable-shared \
--with-openssl=$mkToolchainBase --enable-ipv6 \
--with-system-expat --with-system-ffi --without-ensurepip \
--with-system-expat --without-ensurepip \
--with-dbmliborder=bdb:gdbm:ndbm \
--enable-optimizations
--enable-optimizations LIBFFI_CFLAGS="-I${mkToolchainBase}/include" \
LIBFFI_CFLAGS="-L${mkToolchainBase}/lib -lffi"
message "Compiling $pkgname"
make
popd
Expand All @@ -41,6 +45,7 @@ build() {
package() {
make -C Python-$pkgver install
ln -svf python3 "$dstdir"/bin/python
ln -svf python3-config "$dstdir"/bin/python-config

# linker cache is not updated
export LD_LIBRARY_PATH="$dstdir"/lib
Expand Down
2 changes: 1 addition & 1 deletion base/sphinx/PKGBUILD
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ pkgver=5.0.0
dstdir=$mkToolchainBase

package() {
pip install -I --prefix="$dstdir" "$pkgname==$pkgver"
pip install -I --prefix="$dstdir" "$pkgname"
}

6 changes: 3 additions & 3 deletions base/vim/PKGBUILD
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#!/bin/bash

pkgname=vim
pkgver=8.2
pkgver=9.0
archive=$pkgname-$pkgver.tar.bz2
sum=463c71ce8289923810ee594751a9f38200ad82e2
sum=ff061751df99a5baff557c60a2ab5344f9f9e70d

dstdir=$mkToolchainBase

build() {
download ftp://ftp.vim.org/pub/vim/unix/$archive
download http://ftp.vim.org/pub/vim/unix/$archive
check $archive $sum
extract $archive

Expand Down
2 changes: 1 addition & 1 deletion mk.config.in
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ BUGURL=https://github.com/pcafrica/mk/issues
# Compiler flags
# Compiler flags for the native cpu architecture can be retrieved with the
# command gcc -march=native -Q --help=target (look for march).
CFLAGS="-O2 -DNDEBUG -pipe -mtune=generic"
CFLAGS="-O2 -DNDEBUG -pipe -mtune=native"
CXXFLAGS=$CFLAGS
FCFLAGS=$CFLAGS

Expand Down
Loading