Skip to content

Commit

Permalink
icu/proj/geo/gdal extras
Browse files Browse the repository at this point in the history
  • Loading branch information
pmp-p committed Aug 20, 2024
1 parent 96d6654 commit f4bca5e
Show file tree
Hide file tree
Showing 5 changed files with 123 additions and 81 deletions.
41 changes: 1 addition & 40 deletions scripts/cpython-build-emsdk-deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,46 +32,7 @@ done

if ${EXTRA:-false}
then
for pkg in $ROOT/sources.extra/*.sh
do
cd $ROOT
chmod +x $pkg
echo "
Third party : $pkg
"
if $pkg
then
echo "$pkg : done"
else
echo "
Failed to build extra $pkg
"
exit 54
fi
done


# those depend on nanoX/microwindows compiled above
if [ -d $ROOT/sources.extra/x11 ]
then
for pkg in $ROOT/sources.extra/x11/*.sh
do
cd $ROOT
chmod +x $pkg
echo "
Third party (X11) : $pkg
"
$pkg
done
fi
. scripts/cpython-build-emsdk-extra.sh
fi

cd $ROOT
Expand Down
45 changes: 45 additions & 0 deletions scripts/cpython-build-emsdk-extra.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/bin/bash

. ${CONFIG:-config}

for pkg in $ROOT/sources.extra/*.sh
do
cd $ROOT
chmod +x $pkg
echo "
Third party : $pkg
"
if $pkg
then
echo "$pkg : done"
else
echo "
Failed to build extra $pkg
"
exit 54
fi
done


# those depend on nanoX/microwindows compiled above
if [ -d $ROOT/sources.extra/x11 ]
then
for pkg in $ROOT/sources.extra/x11/*.sh
do
cd $ROOT
chmod +x $pkg
echo "
Third party (X11) : $pkg
"
$pkg
done
fi


33 changes: 20 additions & 13 deletions sources.extra/3000-libxml2-libicu.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,27 @@

. ${CONFIG:-config}

. scripts/emsdk-fetch.sh

cd ${ROOT}/src

if [ -d icu ]
if [ -d src/icu ]
then
echo ok
else
wget -c https://github.com/unicode-org/icu/releases/download/release-75-1/icu4c-75_1-src.tgz
tar xfz icu4c-75_1-src.tgz

pushd ${ROOT}/src
wget -c https://github.com/unicode-org/icu/releases/download/release-75-1/icu4c-75_1-src.tgz
tar xfz icu4c-75_1-src.tgz
popd
fi

if [ -f $PREFIX/lib/libicui18n.a ]
then
echo "
already built in $PREFIX/lib/
$PREFIX/lib/libicui18n.a already built
"
else
. scripts/emsdk-fetch.sh

mkdir -p $ROOT/build/libicu

pushd $ROOT/build/libicu
if emconfigure $ROOT/src/icu/source/configure --prefix=$PREFIX \
--disable-shared --enable-static \
Expand All @@ -32,14 +33,20 @@ else
grep -v DDEFAULT_ICU_PLUGINS ./common/Makefile > ./common/Makefile.patched
rm ./common/Makefile && ln ./common/Makefile.patched ./common/Makefile
emmake make install
else
echo "
fi
popd

if [ -f $PREFIX/lib/libicui18n.a ]
then
echo -n
else
echo "
failed to build ICU
"
exit 38
fi
popd
exit 49

fi
fi

42 changes: 29 additions & 13 deletions sources.extra/5000-proj.sh
Original file line number Diff line number Diff line change
@@ -1,35 +1,51 @@
#!/bin/bash

. scripts/emsdk-fetch.sh
. ${CONFIG:-config}

cd ${ROOT}/src

if [ -d libproj ]

if [ -d src/libproj ]
then
echo ok
else
wget -c https://download.osgeo.org/proj/proj-9.4.0.tar.gz
tar xvfz proj-9.4.0.tar.gz
mv proj-9.4.0 libproj

pushd libproj
# patch
pushd ${ROOT}/src
wget -c https://download.osgeo.org/proj/proj-9.4.0.tar.gz
tar xvfz proj-9.4.0.tar.gz
mv proj-9.4.0 libproj
pushd libproj
# patch
popd
popd
fi


if [ -f $PREFIX/lib/libproj.a ]
then
echo "
already built in $PREFIX/lib/libproj.a
$PREFIX/lib/libproj.a already built
"
else
. scripts/emsdk-fetch.sh

mkdir -p $ROOT/build/libproj

pushd $ROOT/build/libproj
emcmake cmake ../../src/libproj \
-DCMAKE_INSTALL_PREFIX=$PREFIX -DENABLE_TIFF=NO -DENABLE_CURL=NO -DUSE_EXTERNAL_GTEST=NO -DBUILD_PROJSYNC=no
emmake make -j $(nproc) install
EMCC_CFLAGS="-sDISABLE_EXCEPTION_CATCHING=1" emcmake cmake ../../src/libproj \
-DCMAKE_INSTALL_PREFIX=$PREFIX -DENABLE_TIFF=NO -DENABLE_CURL=NO -DUSE_EXTERNAL_GTEST=NO -DBUILD_PROJSYNC=no
EMCC_CFLAGS="-sDISABLE_EXCEPTION_CATCHING=1" emmake make -j $(nproc) install
popd

if [ -f $PREFIX/lib/libproj.a ]
then
echo -n
else
echo "
failed to build PROJ
"
exit 47
fi
fi


Expand Down
43 changes: 28 additions & 15 deletions sources.extra/7000-gdal.sh
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
#!/bin/bash

. scripts/emsdk-fetch.sh
. ${CONFIG:-config}

cd ${ROOT}/src
DO_PATCH=true

DO_PATCH=false

if [ -d libgdal ]
if [ -d src/libgdal ]
then
echo ok
else
wget -c https://github.com/OSGeo/gdal/releases/download/v3.9.1/gdal-3.9.1.tar.gz
tar xfz gdal-3.9.1.tar.gz
mv gdal-3.9.1 libgdal
pushd libgdal
if $DO_PATCH
then
patch -p1 <<END
pushd ${ROOT}/src
wget -c https://github.com/OSGeo/gdal/releases/download/v3.9.1/gdal-3.9.1.tar.gz
tar xfz gdal-3.9.1.tar.gz
mv gdal-3.9.1 libgdal
pushd libgdal
if $DO_PATCH
then
patch -p1 <<END
--- gdal-3.9.1/port/cpl_recode_iconv.cpp
+++ libgdal/port/cpl_recode_iconv.cpp
@@ -297,8 +297,7 @@
Expand All @@ -39,9 +38,9 @@ else
if (nConverted == static_cast<size_t>(-1))
{
END
fi
fi
popd
popd

fi

if [ -f $PREFIX/lib/libgdal.a ]
Expand All @@ -51,6 +50,8 @@ then
"
else

. scripts/emsdk-fetch.sh

mkdir -p $ROOT/build/libgdal
pushd $ROOT/build/libgdal

Expand Down Expand Up @@ -95,6 +96,18 @@ END
emmake make install
mv ${ICONV_H}.save ${ICONV_H}
popd
[ -f $PREFIX/lib/libgdal.a ] || exit 98

fi

if [ -f $PREFIX/lib/libgdal.a ]
then
echo -n
else
echo "
failed to build GDAL
"
exit 110
fi

0 comments on commit f4bca5e

Please sign in to comment.