Last active
October 2, 2021 16:40
-
-
Save robe2/0e84da5354a7d44981bdc2b7804ac61e to your computer and use it in GitHub Desktop.
mingwgcc81 dependencies needed for PostGIS 3.1-PostGIS3.2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export OS_BUILD=64 | |
export GCC_TYPE=gcc81 | |
PROJECTS=/projects | |
SOURCES=/sources | |
mkdir ${PROJECTS} | |
mkdir ${SOURCES} | |
if [[ "${OS_BUILD}" == "" && "$1" == "" ]] ; then | |
echo "Usage: makedependencies OS_BUILD" | |
echo " OS_BUILD = 32|64" | |
echo " or export OS_BUILD=xx" | |
exit 1 | |
fi | |
if [[ "${OS_BUILD}" == "64" ]] ; then | |
export MINGHOST=x86_64-w64-mingw32 | |
export PG_BITS= | |
else | |
export MINGHOST=i686-w64-mingw32 | |
export PG_BITS=w32 | |
fi | |
CMAKE_PATH=/cmake | |
cd ${PROJECTS} | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
cd ${PROJECTS} | |
#zlib (needed for sqlite, openjpeg, and gdal) | |
if false; then | |
#export PATH=/mingw | |
cd ${SOURCES} | |
export ZLIB_VER=1.2.11 | |
#wget --no-check-certificate http://zlib.net/zlib-1.2.11.tar.gz | |
rm -rf zlib-${ZLIB_VER} | |
tar xvfz zlib-${ZLIB_VER}.tar.gz | |
cd zlib-${ZLIB_VER} | |
export REL_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
make install -fwin32/Makefile.gcc SHARED_MODE=1 INCLUDE_PATH=${REL_PATH}/include LIBRARY_PATH=${REL_PATH}/lib BINARY_PATH=${REL_PATH}/bin | |
#make && make install | |
fi | |
#build openssl | |
if false; then | |
cd ${PROJECTS} | |
mkdir ssl | |
cd ssl | |
cd ${SOURCES} | |
export PATH="/mingw/bin:/bin" | |
export SSL_VER=1.1.1c | |
#export SSL_VER=1.0.2g | |
#wget https://www.openssl.org/source/openssl-${SSL_VER}.tar.gz | |
rm -rf openssl-${SSL_VER} | |
tar xvfz openssl-${SSL_VER}.tar.gz | |
cd openssl-${SSL_VER} | |
SSL_REL_PATH=${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE} | |
make clean | |
./configure mingw64 --prefix=${SSL_REL_PATH} shared | |
make | |
make install | |
fi | |
#build curl | |
if false; then | |
cd ${PROJECTS} | |
mkdir curl | |
cd curl | |
cd ${SOURCES} | |
export PATH="/mingw/bin:/bin" | |
export CURL_VER=7.73.0 | |
export ZLIB_VER=1.2.11 | |
export SSL_VER=1.1.1c | |
export PATH="${PATH}:${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
wget --no-check-certificate http://curl.haxx.se/download/curl-${CURL_VER}.tar.gz | |
rm -rf curl-${CURL_VER} | |
tar xvfz curl-${CURL_VER}.tar.gz | |
cd curl-${CURL_VER} | |
CURL_REL_PATH=${PROJECTS}/curl/rel-curl-${CURL_VER}w${OS_BUILD}${GCC_TYPE} | |
#LIBXML_PATH=${PROJECTS}/libxml/rel-libxml2-2.7.8w${OS_BUILD}${GCC_TYPE} | |
make clean | |
./configure --enable-shared --disable-static --prefix=${CURL_REL_PATH} --with-ssl=${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE} --with-zlib=${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
make | |
make install | |
cd ${CURL_REL_PATH}/bin | |
strip *.dll | |
fi | |
#SQLite3 library | |
if false; then | |
export ZLIB_VER=1.2.11 | |
export ZLIB_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
echo $PATH | |
cd ${SOURCES} | |
#exit | |
export PATH="/bin:/mingw/bin:/mingw/include:${ZLIB_PATH}/bin:${ZLIB_PATH}/lib:${ZLIB_PATH}/include" | |
#xport SQLVER=3240000 | |
#export SQLVER=3280000 | |
export SQLVER=3300100 | |
export SQLYR=2019 | |
#export ZLIB_VER=1.2.11 | |
#export PATH="/projects/zlib/rel-zlib${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}:${PATH}" | |
#export PKG_CONFIG_PATH=/projects/zlib/rel-zlib${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig | |
#export SQLVER=3160200 | |
#export SQLYR=2017 | |
#rm sqlite-autoconf-${SQLVER}.tar.gz | |
wget --no-check-certificate https://www.sqlite.org/${SQLYR}/sqlite-autoconf-${SQLVER}.tar.gz | |
rm -rf sqlite-autoconf-${SQLVER} | |
tar xvfz sqlite-autoconf-${SQLVER}.tar.gz | |
cd sqlite-autoconf-${SQLVER} | |
export "CFLAGS=-O3 -DSQLITE_ENABLE_STAT3=1 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_TREE_EXPLAIN=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1 -DSQLITE_ENABLE_FTS5=1 -DSQLITE_ENABLE_COLUMN_METADATA=1" | |
sh configure | |
#./configure --help | |
#exit | |
#./configure --target=${MINGHOST} --enable-shared=yes --enable-static=no --prefix=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE} | |
./configure --target=${MINGHOST} --prefix=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE} | |
#gcc -shared -link sqlite3.c -o sqlite3.dll | |
make | |
make install-strip | |
make check | |
exit | |
fi | |
if false; then | |
cd ${PROJECTS} | |
LIBICONV_VER=1.16 | |
wget --no-parent -O /sources/libiconv-${LIBICONV_VER}.tar.gz http://ftp.gnu.org/gnu/libiconv/libiconv-${LIBICONV_VER}.tar.gz | |
rm -rf libiconv-${LIBICONV_VER} | |
tar xvfz /sources/libiconv-${LIBICONV_VER}.tar.gz | |
cd libiconv-${LIBICONV_VER} | |
export LFLAGS="-static-libgcc" | |
./configure --build=${MINGHOST} --target=${MINGHOST} --prefix=${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
make check | |
rm -rf ${PROJECTS}/libiconv-${LIBICONV_VER} | |
fi | |
if false; then | |
cd ${SOURCES} | |
rm -rf CUnit-2.1-2 | |
rm -rf CUnit-2.1-3 | |
#wget --no-parent -O ${SOURCES}/CUnit-2.1-2-src.tar.bz2 http://iweb.dl.sourceforge.net/project/cunit/CUnit/2.1-2/CUnit-2.1-2-src.tar.bz2 | |
tar xvf CUnit-2.1-2-src.tar.bz2 | |
cd CUnit-2.1-2 | |
# libtoolize -f -c -i \ | |
# && aclocal \ | |
# && autoconf \ | |
# && automake --gnu --add-missing \ | |
./configure --target=${MINGHOST} --prefix=/mingw/${MINGHOST} | |
make clean | |
make && make install | |
make check | |
cd .. | |
rm -rf ${SOURCES}/CUnit-2.1-3 | |
fi | |
if false; then | |
export LIBXML_VER=2.9.9 | |
mkdir ${PROJECTS}/libxml | |
cd ${PROJECTS}/libxml | |
cd ${SOURCES} | |
export LIBICONV_VER=1.15 | |
export PATH="/bin:/mingw/bin:/mingw/include:/bin" | |
export CURL_VER=7.61.1 | |
export SSL_VER=1.0.2g | |
export CURL_REL_PATH=${PROJECTS}/curl/rel-curl-${CURL_VER}w${OS_BUILD}${GCC_TYPE} | |
#export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/bin:${CURL_REL_PATH}/include" | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
#had to rename C:\ming64gcc81\mingw64\x86_64-w64-mingw32\lib\libz.a to libz.a.old so didn't get picked up | |
#wget -O libxml2-${LIBXML_VER}.tar.gz ftp://xmlsoft.org/libxml2/libxml2-${LIBXML_VER}.tar.gz | |
rm -rf libxml2-${LIBXML_VER} | |
tar xvfz libxml2-${LIBXML_VER}.tar.gz | |
cd libxml2-${LIBXML_VER} | |
./configure --prefix=${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE} --target=${MINGHOST} --with-threads=no --enable-shared CFLAGS=-O2 | |
make clean | |
make | |
make install | |
make check | |
cd .. | |
rm -rf ${PROJECTS}/libxml/libxml2-${LIBXML_VER} | |
fi | |
if false; then | |
#This is needed for ST_GeomFromGeoJSON and family | |
mkdir ${PROJECTS}/json-c | |
cd ${PROJECTS}/json-c | |
export JSON_VER=0.12 | |
#rm json-c-${JSON_VER}.zip | |
cd ${SOURCES} | |
#wget --no-check-certificate --output-document=${SOURCES}/json-c-${JSON_VER}.zip https://github.com/json-c/json-c/archive/json-c-${JSON_VER}.zip | |
rm -rf json-c-${JSON_VER} | |
unzip ${SOURCES}/json-c-${JSON_VER}.zip | |
mv json-c-json-c-${JSON_VER} json-c-${JSON_VER} | |
cd json-c-${JSON_VER} | |
## had to compile with -w (disable warnings otherwise it gave errors) | |
# note we use --enable-static -disable-shared so we don't have a small itsy bitsy json..dll we need to distribute | |
# this will force json support to be embedded directly in postgis-.dll | |
export VERBOSE=1 | |
./configure --target=${MINGHOST} \ | |
--prefix=${PROJECTS}/json-c/rel-${JSON_VER}w${OS_BUILD}${GCC_TYPE} --enable-static --disable-shared CFLAGS=-w | |
make | |
make install | |
make check #fails for some reason | |
#after install change lib/libjson-c.la file from library_names='' to library_names='libjson-c.a' | |
#for some reason install fails to copy this file | |
#cp json_object_iterator.h ${PROJECTS}/json-c/rel-${JSON_VER}w${OS_BUILD}${GCC_TYPE}/include/json/json_object_iterator.h | |
fi | |
#needed for proj 7+ | |
if false; then | |
cd ${SOURCES} | |
export TIFF_VER=4.1.0 | |
export ZLIB_VER=1.2.11 | |
export ZLIB_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
#wget http://download.osgeo.org/libtiff/tiff-${TIFF_VER}.tar.gz | |
tar xvfz tiff-${TIFF_VER}.tar.gz | |
cd tiff-${TIFF_VER} | |
LDFLAGS="-L${ZLIB_PATH}/lib" \ | |
./configure --disable-static --enable-shared --prefix=${PROJECTS}/tiff/rel-tiff-${TIFF_VER}w${OS_BUILD}${GCC_TYPE} --build=${MINGHOST} | |
make | |
make check | |
make install | |
fi | |
if false; then | |
#export PROJ_VER=7.1.1 | |
export PROJ_VER=7.2.0 | |
export TIFF_VER=4.1.0 | |
export TIFF_PATH=/projects/tiff/rel-tiff-${TIFF_VER}w${OS_BUILD}${GCC_TYPE} | |
#export DATUM_VER=1.8 | |
#export DATUM_VER=world-1.0RC1 | |
export DATUM_VER=world-1.0 | |
export DATUM_VER_NA=north-america-1.2 | |
export DATA_VER=1.3 | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:/cmake/bin" | |
export ZLIB_VER=1.2.11 | |
export ZLIB_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
#wget --no-check-certificate http://zlib.net/zlib-1.2.11.tar.gz | |
export PATH="/bin:/mingw/bin:/mingw/include:${ZLIB_PATH}/bin:${ZLIB_PATH}/lib:${ZLIB_PATH}/include" | |
export CURL_VER=7.73.0 | |
export CURL_PATH=/projects/curl/rel-curl-${CURL_VER}w${OS_BUILD}${GCC_TYPE} | |
export PKG_CONFIG_PATH=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${ZLIB_PATH}/lib/pkgconfig:${TIFF_PATH}/lib/pkgconfig:${CURL_PATH}/lib/pkgconfig | |
export PATH=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/bin:${CURL_PATH}/bin:${PATH} | |
echo $PKG_CONFIG_PATH | |
#exit | |
cd ${SOURCES} | |
rm -rf proj-${PROJ_VER} | |
#wget https://ftp.osuosl.org/pub/osgeo/download/proj/proj-${PROJ_VER}.tar.gz | |
#wget https://download.osgeo.org/proj/proj-data-${DATA_VER}.tar.gz | |
#wget http://download.osgeo.org/proj/proj-datumgrid-${DATUM_VER}.zip | |
#wget https://download.osgeo.org/proj/proj-datumgrid-n${DATUM_VER_NA}.zip | |
tar xvfz proj-${PROJ_VER}.tar.gz | |
tar xvfz proj-data-${DATA_VER}.tar.gz -d proj-${PROJ_VER}/data/ | |
cd proj-${PROJ_VER} | |
make clean | |
#cd nad | |
#unzip ../../proj-datumgrid-${DATUM_VER}.zip | |
#cd .. | |
LDFLAGS="-L${ZLIB_PATH}/lib -L${CURL_PATH}/lib -L${CURL_PATH}/bin" \ | |
./configure --enable-shared --disable-static --prefix=${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} --build=${MINGHOST} | |
#/cmake/bin/cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS:bool=on -DTIFF_LIBRARY:PATH=${TIFF_PATH}/lib/libtiff.dll.a -DTIFF_INCLUDE_DIR:PATH=${TIFF_PATH}/include -DCMAKE_INSTALL_PREFIX:PATH=${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} | |
#exit | |
#make clean | |
make && make install | |
cd ${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} | |
strip bin/*.dll | |
exit | |
fi | |
## building PROJ 7.1 | |
if false; then | |
#export PROJ_VER=5.2.0 | |
export PROJ_VER=7.1.0 | |
#export DATUM_VER=1.8 | |
#export DATUM_VER=world-1.0RC1 | |
export DATUM_VER=world-1.0 | |
export DATUM_VER_NA=north-america-1.2 | |
export PROJ_DATA=1.1 | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
export ZLIB_VER=1.2.11 | |
export ZLIB_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
#wget --no-check-certificate http://zlib.net/zlib-1.2.11.tar.gz | |
export PATH="/bin:/mingw/bin:/mingw/include:${ZLIB_PATH}/bin:${ZLIB_PATH}/lib:${ZLIB_PATH}/include" | |
export PATH=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/bin:${PATH} | |
export PKG_CONFIG_PATH=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${ZLIB_PATH}/lib/pgconfig | |
cd ${SOURCES} | |
rm -rf proj-${PROJ_VER} | |
#wget https://download.osgeo.org/proj/proj-${PROJ_VER}.tar.gz | |
#wget https://download.osgeo.org/proj/proj-data-${PROJ_DATA}.tar.gz | |
tar xvfz proj-${PROJ_VER}.tar.gz | |
tar xvfz ../proj-${PROJ_VER}.tar.gz -d proj-${PROJ_VER}/data/ | |
cd proj-${PROJ_VER} | |
make clean | |
#cd nad | |
#unzip ../../proj-datumgrid-${DATUM_VER}.zip | |
#cd .. | |
LDFLAGS="-L${ZLIB_PATH}/lib" \ | |
./configure --enable-shared --disable-static --prefix=${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} --build=${MINGHOST} | |
#exit | |
#make clean | |
make && make install | |
cd ${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} | |
strip bin/*.dll | |
exit | |
fi | |
#compile freexl | |
if false; then | |
export PATH="/mingw/usr/bin:/mingw/bin:/mingw/include:/mingw/lib:/bin:${PROJECTS}/rel-libiconv-1.15w${OS_BUILD}${GCC_TYPE}/bin" | |
cd ${PROJECTS} | |
mkdir freexl | |
export FREEXL_VER=1.0.6 | |
cd ${SOURCES} | |
wget http://www.gaia-gis.it/gaia-sins/freexl-${FREEXL_VER}.tar.gz | |
rm -rf freexl-${FREEXL_VER} | |
tar xvfz freexl-${FREEXL_VER}.tar.gz | |
cd freexl-${FREEXL_VER} | |
export FREEXL_REL_PATH=${PROJECTS}/freexl/rel-freexl-${FREEXL_VER}w${OS_BUILD}${GCC_TYPE} | |
./configure --disable-static --enable-shared --prefix=${FREEXL_REL_PATH} | |
make && make install | |
make check | |
fi | |
#compile openjpeg | |
if false; then | |
cd ${PROJECTS} | |
mkdir openjpeg | |
export OPENJPEG_VER=2.3.1 | |
cd ${SOURCES} | |
export ZLIB_VER=1.2.11 | |
#export PATH="$PATH:${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
export ZLIB_PATH=/projects/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
export PATH="/cmake/bin:/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
#wget https://github.com/uclouvain/openjpeg/archive/v${OPENJPEG_VER}.tar.gz -O openjpeg-${OPENJPEG_VER}.tar.gz | |
rm -rf openjpeg-${OPENJPEG_VER} | |
tar xvfz openjpeg-${OPENJPEG_VER}.tar.gz | |
rm -rf build | |
mkdir -p build | |
cd build | |
#export PATH="/cmake/bin:/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
/cmake/bin/cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DBUILD_PKGCONFIG_FILES=on -DBUILD_SHARED_LIBS:bool=on -DZLIB_LIBRARY:PATH=${ZLIB_PATH}/lib/libz.a -DZLIB_INCLUDE_DIR:PATH=${ZLIB_PATH}/include -DCMAKE_INSTALL_PREFIX:PATH=${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE} ../openjpeg-${OPENJPEG_VER} | |
#after install edit the lib/pkgconfig file to get rid of windows paths e.g C:/.. should be /projects/.. | |
#cd openjpeg-${OPENJPEG_VER} | |
#autoconf | |
#./configure --prefix=${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
#make check | |
fi | |
## build expat needed for ogr XLSX support | |
if false; then | |
cd ${PROJECTS} | |
mkdir expat | |
EXPAT_VER=2.2.10 | |
EXPAT_VERWU=R_2_2_10 | |
cd ${SOURCES} | |
#rm -rf expat-${EXPAT_VER}.tar.gz | |
#need to download expat from here | |
wget https://github.com/libexpat/libexpat/archive/${EXPAT_VERWU}.tar.gz -O expat-${EXPAT_VER}.tar.gz | |
#exit | |
rm -rf expat-${EXPAT_VER} | |
tar xvfz expat-${EXPAT_VER}.tar.gz | |
mv libexpat-${EXPAT_VERWU} expat-${EXPAT_VER} | |
cd expat-${EXPAT_VER}/expat | |
sh buildconf.sh | |
#had to put in --without-xmlwf wide-format otherwise looks for docbook and fails install | |
./configure --host=${MINGHOST} --target=${MINGHOST} --without-xmlwf --prefix=${PROJECTS}/expat/rel-expat-${EXPAT_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
#doc build fails, that's okay | |
fi | |
# build protobuf | |
if false; then | |
export PATH="/mingw/bin:/mingw/include:/bin" | |
cd ${PROJECTS} | |
mkdir protobuf | |
cd ${PROJECTS}/protobuf | |
cd ${SOURCES} | |
export PROTOBUF_VER=3.2.0 | |
#rm protobuf-${PROTOBUF_VER}.tar.gz | |
wget https://github.com/google/protobuf/archive/v${PROTOBUF_VER}.tar.gz -O protobuf-${PROTOBUF_VER}.tar.gz | |
rm -rf protobuf-${PROTOBUF_VER} | |
tar xvfz protobuf-${PROTOBUF_VER}.tar.gz | |
cd protobuf-${PROTOBUF_VER} | |
sh autogen.sh | |
#CPPFLAGS="-I${PROJECTS}/rel-libiconv-1.13.1w${OS_BUILD}${GCC_TYPE}/include" | |
#LDFLAGS="-L${PROJECTS}/rel-libiconv-1.13.1w${OS_BUILD}${GCC_TYPE}/lib -L${CURL_REL_PATH}/lib -L/mingw/x86_64-w64-mingw32/lib" | |
#export LIBS="-lodbc32 -lodbcinst32" | |
./configure --build=${MINGHOST} --prefix=${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE} | |
#exit | |
#./configure --build=${MINGHOST} --with-curl=no --with-threads=no --prefix=${PROJECTS}/gdal/rel-${GDAL_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
cd ${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE} | |
strip *.dll | |
fi | |
#build protobuf-c | |
if false; then | |
export PATH="/mingw/bin:/mingw/include:/bin" | |
cd ${PROJECTS} | |
mkdir protobuf-c | |
cd ${PROJECTS}/protobuf-c | |
cd ${SOURCES} | |
export PROTOBUFC_VER=1.2.1 | |
export PROTOBUF_VER=3.2.0 | |
#export PATH="${PATH}:${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE}/bin:${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export PKG_CONFIG_PATH=${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig; | |
rm protobuf-c-${PROTOBUFC_VER}.tar.gz | |
wget https://github.com/protobuf-c/protobuf-c/releases/download/v${PROTOBUFC_VER}/protobuf-c-${PROTOBUFC_VER}.tar.gz | |
rm -rf protobuf-c-${PROTOBUFC_VER} | |
tar xvfz protobuf-c-${PROTOBUFC_VER}.tar.gz | |
cd protobuf-c-${PROTOBUFC_VER} | |
make clean | |
#CPPFLAGS="-I${PROJECTS}/rel-libiconv-1.13.1w${OS_BUILD}${GCC_TYPE}/include" | |
#LDFLAGS="-L${PROJECTS}/rel-libiconv-1.13.1w${OS_BUILD}${GCC_TYPE}/lib -L${CURL_REL_PATH}/lib -L/mingw/x86_64-w64-mingw32/lib" | |
#export LIBS="-lodbc32 -lodbcinst32" | |
#./configure --build=${MINGHOST} --prefix=${PROJECTS}/protobuf-c/rel-${PROTOBUFC_VER}w${OS_BUILD}${GCC_TYPE} | |
./configure --build=${MINGHOST} --prefix=${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
cd ${PROJECTS}/protobuf-c/rel-${PROTOBUFC_VER}w${OS_BUILD}${GCC_TYPE} | |
strip *.dll | |
fi | |
# Build GDAL from source tarball | |
if false; then | |
export PATH=$PATHOLD | |
export LIBICONV_VER=1.16 | |
#export CURL_VER=7.67.0 | |
#export CURL_VER=7.65.3 | |
#export CURL_VER=7.54.1 | |
export CURL_VER=7.73.0 | |
#export SSL_VER=1.0.2g | |
export SSL_VER=1.1.1c | |
export PROJ_VER=7.1.1 | |
export CURL_REL_PATH=${PROJECTS}/curl/rel-curl-${CURL_VER}w${OS_BUILD}${GCC_TYPE} | |
#export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/bin:${CURL_REL_PATH}/include" | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
cd ${PROJECTS} | |
mkdir gdal | |
cd ${PROJECTS}/gdal | |
export GDAL_VER=3.2.3 | |
export GDAL_VER_PRE=3.2.3 | |
cd ${SOURCES} | |
#rm gdal-${GDAL_VER_PRE}.tar.gz | |
#wget https://github.com/OSGeo/gdal/releases/download/v${GDAL_VER}/gdal-${GDAL_VER}.tar.gz #17MB/s | |
#wget http://ftp.osuosl.org/pub/osgeo/download/gdal/${GDAL_VER}/gdal-${GDAL_VER_PRE}.tar.gz # 5.20MB/s | |
#wget ftp://ftp.osuosl.org/pub/osgeo/download/gdal/${GDAL_VER}/gdal-${GDAL_VER_PRE}.tar.gz # 2.53MB/s | |
#exit | |
#wget http://download.osgeo.org/gdal/${GDAL_VER}/gdal-${GDAL_VER_PRE}.tar.gz #800-1.5MB/s | |
#wget https://download.osgeo.org/postgis/source/postgis-3.0.0.tar.gz #660kb/s | |
#wget https://postgis.net/stuff/postgis-3.0.0.tar.gz #5.1MB/s | |
rm -rf gdal-${GDAL_VER} | |
tar xvfz gdal-${GDAL_VER_PRE}.tar.gz | |
#exit | |
export EXPAT_VER=2.2.10 | |
export FREEXL_VER=1.0.6 | |
export ZLIB_VER=1.2.11 | |
#export OPENJPEG_VER=2.12 | |
export OPENJPEG_VER=2.3.1 | |
export FREEXL_REL_PATH=${PROJECTS}/freexl/rel-freexl-${FREEXL_VER}w${OS_BUILD}${GCC_TYPE} | |
export ZLIB_REL_PATH=${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
#export PATH="$PATH:${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
export PKG_CONFIG_PATH="${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
#add proj | |
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig" | |
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${CURL_REL_PATH}/lib/pkgconfig" | |
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}:${PROJECTS}/expat/rel-expat-${EXPAT_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${FREEXL_REL_PATH}/lib/pkgconfig" | |
#add expat | |
echo ${PKG_CONFIG_PATH} | |
#exit | |
#cd gdal | |
#cd branches/${GDAL_VER}/gdal | |
#this you need to create and change m_nColCount = 500 to m_nColCount = 1024 (2 lines of that) | |
cp /projects/gdal/branches/${GDAL_VER}/port/cpl_odbc.cpp gdal-${GDAL_VER}/port | |
cd gdal-${GDAL_VER} | |
#make | |
#exit | |
#if you get a static exes (huge exes) and no dll it's usually libiconv or zlib that is the culprit. | |
# (I use --with-libz=internal because mingw sometimes comes with static libz that causes build to be static ) | |
# Make sure after install you have a .dll in your install bin folder | |
export CPPFLAGS="-I${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/include -I${CURL_REL_PATH}/include" | |
#export CPPFLAGS="-I${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
#export LDFLAGS="-L${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE}/lib -L${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib -L${CURL_REL_PATH}/lib -L/mingw/x86_64-w64-mingw32" | |
export LDFLAGS="-L${PROJECTS}/ssl/rel-openssl-${SSL_VER}w${OS_BUILD}${GCC_TYPE}/lib -L${PROJECTS}/rel-libiconv-${LIBICONV_VER}w${OS_BUILD}${GCC_TYPE}/lib -L/mingw/x86_64-w64-mingw32" | |
#export PKG_CONFIG_PATH="" | |
make clean | |
./configure --host=${MINGHOST} --enable-shared --disable-static --with-expat=${PROJECTS}/expat/rel-expat-${EXPAT_VER}w${OS_BUILD}${GCC_TYPE} --with-freexl=${FREEXL_REL_PATH} --with-odbc=/mingw/${MINGHOST} --with-sqlite3=${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE} --with-curl=${CURL_REL_PATH}/bin/curl-config \ | |
--with-openjpeg=${PROJECTS}/openjpeg/rel-openjpeg-${OPENJPEG_VER}w${OS_BUILD}${GCC_TYPE} \ | |
--with-proj=${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE} \ | |
--prefix=${PROJECTS}/gdal/rel-${GDAL_VER}w${OS_BUILD}${GCC_TYPE} | |
#--with-libz=internal \ | |
#exit | |
make | |
make install | |
#if you get an error like gdalopeninfo.cpp:87:8: error: 'mutex' in namespace 'std' does not name a type | |
#then your mingw64 is missing std compatible thread support - download this https://github.com/meganz/mingw-std-threads | |
cd ${PROJECTS}/gdal/rel-${GDAL_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
strip *.dll | |
strip *.exe | |
fi | |
#-- SFCGAL and pgRouting dependencies start here -- | |
cd ${PROJECTS} | |
mkdir CGAL | |
export GMP_VER=6.2.0 | |
#MPFR_VER=4.0.1 | |
export MPFR_VER=4.1.0 | |
export CGAL_VER=5.3 | |
#BOOST_VER=1.59.0 | |
#BOOST_VER=1.68.0 | |
BOOST_VER=1.73.0 | |
BOOST_VER_WU=1_73_0 | |
BOOST_SHARED=shared | |
#BOOST_VER_WU=1_68_0 | |
#BOOST_VER_WU=1_53_0 | |
export ICU_VER=62.1 | |
export ICU_VER_WU=62_1 | |
export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
PATH="${PATH}:.:/bin:/include" | |
#build ICU needed for boost regex which is needed for address_standardizer2 | |
if false; then | |
cd ${PROJECTS} | |
mkdir icu | |
cd ${SOURCES} | |
#wget http://download.icu-project.org/files/icu4c/${ICU_VER}/icu4c-${ICU_VER_WU}-src.tgz | |
rm -rf icu | |
tar -xvf icu4c-${ICU_VER_WU}-src.tgz | |
cd icu/source | |
./runConfigureICU MinGW --disable-strict --disable-threads --enable-shared --prefix=${PROJECTS}/ICU/rel-icu-${ICU_VER}w${OS_BUILD}${GCC_TYPE} | |
# ./configure --enable-static --disable-shared --prefix=${PROJECTS}/ICU/rel-icu-${ICU_VER}w${OS_BUILD}${GCC_TYPE} | |
# make | |
make | |
make install | |
fi | |
if false; then | |
cd ${PROJECTS} | |
mkdir boost | |
cd ${PROJECTS}/boost | |
cd ${SOURCES} | |
export BOOST_VER_WU=1_73_0 | |
export BOOST_VER=1.73.0 | |
export BOOST_REGEX_DYN_LINK=true | |
#wget http://sourceforge.net/projects/boost/files/boost/${BOOST_VER}/boost_${BOOST_VER_WU}.tar.bz2 | |
wget https://dl.bintray.com/boostorg/release/${BOOST_VER}/source/boost_${BOOST_VER_WU}.tar.bz2 | |
#rm -rf boost_${BOOST_VER_WU} | |
#tar xjf boost_${BOOST_VER_WU}.tar.bz2 | |
cd boost_${BOOST_VER_WU} | |
export BOOST_HAS_ICU=true | |
export ICU_PATH=${PROJECTS}/icu/rel-icu-${ICU_VER}w${OS_BUILD}${GCC_TYPE} | |
export PKG_CONFIG_PATH=${PATH}:${ICU_PATH}/lib/pkgconfig | |
#export ICU_LINK="-L${ICU_PATH}/lib `pkg-config --libs --cflags icu-i18n icu-uc icu-io`" | |
#export LIB="$LIB:${ICU_PATH}/lib" | |
#export ICU_LINK="-L${ICU_PATH}/lib -licuuc -licuin -licudt" | |
echo $ICU_LINK | |
#export LDFLAGS="$LDFLAGS -L${ICU_PATH}/lib `pkg-config --libs`" | |
#cmd //c bootstrap.bat mingw | |
cmd //c bootstrap.bat gcc | |
cd tools/build | |
#cp b2.exe ../.. | |
cd ../.. | |
#b2 --clean | |
#static | |
#b2 threading=multi address-model=${OS_BUILD} toolset=gcc define=BOOST_USE_WINDOWS_H variant=release link=static threading=multi --with-thread --with-system --with-filesystem --with-date_time --with-serialization --with-regex --with-graph --with-program_options --prefix=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE} install | |
#dynamic | |
#b2 threading=multi address-model=${OS_BUILD} toolset=gcc define=BOOST_USE_WINDOWS_H variant=release link=shared threading=multi --with-thread --with-system --with-filesystem --with-date_time --with-serialization --with-regex --with-graph --with-program_options --prefix=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE}shared install | |
#--with-regex dynamic | |
b2 threading=multi address-model=${OS_BUILD} toolset=gcc define=BOOST_USE_WINDOWS_H variant=release link=shared threading=multi --with-atomic --with-thread --with-system --with-filesystem --with-date_time --with-serialization --with-regex --with-graph --with-program_options --prefix=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE}shared install | |
#--with-regex static | |
#b2 threading=multi address-model=${OS_BUILD} toolset=gcc define=BOOST_USE_WINDOWS_H variant=release link=static threading=multi --with-atomic --with-thread --with-system --with-filesystem --with-date_time --with-serialization --with-regex --with-graph --with-program_options --prefix=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE} install | |
#cd .. | |
#rm -rf boost_${BOOST_VER_WU} | |
fi | |
if false; then | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
export GMP_VER=6.2.0 | |
cd ${PROJECTS}/CGAL | |
cd ${SOURCES} | |
#wget ftp://ftp.gmplib.org/pub/gmp/gmp-${GMP_VER}.tar.bz2 | |
rm -rf gmp-${GMP_VER} | |
tar xvjf gmp-${GMP_VER}.tar.bz2 | |
cd gmp-${GMP_VER} | |
make clean | |
./configure --build=${MINGHOST} --enable-static --enable-cxx --disable-shared --prefix=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
make check | |
exit | |
fi | |
if false; then | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
cd ${PROJECTS}/CGAL | |
cd ${SOURCES} | |
export MPFR_VER=4.1.0 | |
wget http://www.mpfr.org/mpfr-current/mpfr-${MPFR_VER}.tar.bz2 | |
rm -rf mpfr-${MPFR_VER} | |
tar xvjf mpfr-${MPFR_VER}.tar.bz2 | |
cd mpfr-${MPFR_VER} | |
make clean | |
export CPPFLAGS="-I${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export LDFLAGS="-L${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
./configure --build=${MINGHOST} --enable-static --disable-shared --prefix=${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE} | |
make && make install | |
make check | |
fi | |
#make CGAL | |
if false; then | |
cd ${PROJECTS}/CGAL | |
export CGAL_VER=5.3 | |
export CGAL_VER_FULL=5.0.4 | |
#CGAL_VER_FULL=5.3 | |
export ZLIB_VER=1.2.11 | |
#BOOST_VER=1.59.0 | |
BOOST_VER=1.73.0 | |
#BOOST_VER=1.53.0 | |
#BOOST_VER_WU=1_59_0 | |
BOOST_VER_WU=1_73_0 | |
export BOOST_SHARED= | |
#export MPFR_VER=4.1.0 | |
#export GMP_VER=5.1.2 | |
cd ${SOURCES} | |
# # this site requires a login so you have to fetch the file interactively | |
# delete all dynamic boost files *.dll* from boost install otherwise compiles dynamicall and libCGAL has dependency on boost | |
#wget https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-${CGAL_VER_FULL}/CGAL-${CGAL_VER_FULL}.tar.xz | |
wget https://github.com/CGAL/cgal/releases/download/v${CGAL_VER_FULL}/CGAL-${CGAL_VER_FULL}.tar.xz | |
#wget https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-${CGAL_VER_FULL}/CGAL-${CGAL_VER_FULL}-library.tar.xz | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin:/cmake/bin" | |
rm -rf CGAL-${CGAL_VER} | |
cd ${SOURCES} | |
#rm -rf CGAL-${CGAL_VER} | |
#rm -rf CGAL-${CGAL_FULL_VER} | |
tar xf ${SOURCES}/CGAL-${CGAL_VER_FULL}.tar.xz | |
mv CGAL-${CGAL_VER_FULL} CGAL-${CGAL_VER} | |
export MPFR_DIR=${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE} | |
export GMP_DIR=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE} | |
export ZLIB_DIR=${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
export CPPFLAGS="-I${GMP_DIR}/include -I${MPR_DIR}/include" | |
export LDFLAGS="-L${GMP_DIR}/lib" | |
export PKG_CONFIG_PATH="${MPFR_DIR}/lib/pkgconfig:${GMP_DIR}/lib/pkgconfig:${ZLIB_DIR}/lib/pkgconfig" | |
export PATH="${GMP_DIR}/include:${PATH}" | |
rm -rf build | |
mkdir -p build | |
cd build | |
#had to copy gmp.h into C:\ming64gcc81\mingw64\x86_64-w64-mingw32\include | |
#BOOST_SHARED=shared | |
#had to get rid of the x64 on the boost system and thread libraries | |
##for some reason if the boost .dlls are in boost bin folder, then static doesn't work. | |
## To force statis remove the .dlls from boost folder so you just have the .a in lib left | |
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE} \ | |
-DBoost_USE_STATIC_LIBS=ON -DCMAKE_CXX_FLAGS:STRING="-DBOOST_THREAD_USE_LIB -DBoost_USE_STATIC_LIBS -DBOOST_USE_WINDOWS_H" \ | |
-DBOOST_ROOT:PATH=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE}${BOOST_SHARED} -DBoost_NO_SYSTEM_PATHS=ON \ | |
-DBoost_DEBUG=OFF \ | |
-DGMP_ROOT:PATH=${GMP_DIR} \ | |
-DWITH_CGAL_Core=ON -DWITH_CGAL_ImageIO=OFF -DWITH_CGAL_Qt5=OFF \ | |
../CGAL-${CGAL_VER} | |
make | |
make install | |
exit | |
fi | |
#SFCGAL from git head | |
if false; then | |
export SFCGAL_VER=1.4.0 | |
#export CGAL_VER=4.11 | |
export CGAL_VER=5.3 | |
export CGAL_DIR=${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
echo "GMP VER is ${GMP_VER}" | |
#exit | |
#export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
#PATH="${PATH}:.:/bin:/include" | |
export PATH="${PATH}:/cmake/bin" | |
cd ${PROJECTS}/CGAL | |
#cd ${SOURCES} | |
#rm -rf SFCGAL-${SFCGAL_VER} | |
#wget --no-check-certificate -O SFCGAL-${SFCGAL_VER}.tar.gz https://gitlab.com/Oslandia/SFCGAL/-/archive/v${SFCGAL_VER}/SFCGAL-v${SFCGAL_VER}.tar.gz | |
#wget https://gitlab.com/Oslandia/SFCGAL/-/archive/master/SFCGAL-master.tar.gz | |
#tar xvfz SFCGAL-${SFCGAL_VER}.tar.gz | |
export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
# #PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
# PATH="${PATH}:.:/bin:/include" | |
# #export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
PATH="${PATH}:.:/bin:/include" | |
export PATH="${PATH}:/cmake/bin" | |
#cd ${PROJECTS}/CGAL | |
#wget --no-check-certificate -O SFCGAL-${SFCGAL_VER}.tar.gz https://github.com/Oslandia/SFCGAL/archive/v${SFCGAL_VER}.tar.gz | |
#tar -xvf SFCGAL-${SFCGAL_VER}.tar.gz | |
export MPFR_DIR=${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE} | |
export GMP_DIR=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE} | |
export CPPFLAGS="-I${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export LDFLAGS="-L${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
export CGAL_DIR=${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE} | |
export GMP_INCLUDE_DIRS=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include | |
export GMP_LIBRARIES=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib/libgmp.a | |
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} | |
export BOOST_SHARED= | |
# cd ${PROJECTS}/cgal/sfcgal | |
# cd build${OS_BUILD}${GCC_TYPE} | |
# make | |
# exit | |
#git clone https://gitlab.com/Oslandia/SFCGAL.git sfcgal-git | |
cd sfcgal-git | |
#git reset --hard | |
#git checkout | |
# git clean -fd | |
# git pull | |
git checkout v${SFCGAL_VER} | |
# git checkout master | |
#git pull | |
#git clean -fd | |
#cd ${PROJECTS}/cgal/sfcgal | |
#make sure to change file src/CMakeList.txt move MPFR check before GMP | |
rm -rf build${OS_BUILD}${GCC_TYPE} | |
mkdir -p build${OS_BUILD}${GCC_TYPE} | |
cd build${OS_BUILD}${GCC_TYPE} | |
#export Boost_USE_STATIC_LIBS=ON | |
#if gmp include not find, hack teh cgal/lib/CGAL/CGALConfig.make replacing C:\ming..\Projects with /projects | |
#change CMakefile to force Boost_USE_STATIC_LIBS otherwise compile error, it ignores the cmake setting | |
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE:STRING=Release -DCGAL_DIR="${CGAL_DIR}" -DCMAKE_INSTALL_PREFIX:PATH=${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE} \ | |
-DGMP_INCLUDE_DIR:PATH=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include \ | |
-DBOOST_ROOT:PATH=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE}${BOOST_SHARED} \ | |
-DBoost_USE_STATIC_LIBS=true \ | |
${PROJECTS}/cgal/sfcgal-git | |
#exit | |
make | |
make install | |
cd ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
strip *.dll | |
#config file looks for dll in the lib folder instead of bin | |
cp ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin/*.dll ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib | |
#replace windows path format (drive latter) with unix path format | |
sed -i "/prefix=./c\prefix=${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}" ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin/sfcgal-config | |
fi | |
#build sfcgal tar ball | |
if false; then | |
export SFCGAL_VER=1.3.8 | |
#export CGAL_VER=4.11 | |
export CGAL_VER=5.1 | |
export CGAL_DIR=${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
echo "GMP VER is ${GMP_VER}" | |
#exit | |
#export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
#PATH="${PATH}:.:/bin:/include" | |
export PATH="${PATH}:/cmake/bin" | |
#cd ${PROJECTS}/CGAL | |
cd ${SOURCES} | |
#rm -rf SFCGAL-${SFCGAL_VER} | |
#wget --no-check-certificate -O SFCGAL-${SFCGAL_VER}.tar.gz https://github.com/Oslandia/SFCGAL/archive/v${SFCGAL_VER}.tar.gz | |
#tar xvfz SFCGAL-${SFCGAL_VER}.tar.gz | |
export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
# #PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
# PATH="${PATH}:.:/bin:/include" | |
# #export PATH="/mingw/bin:/mingw/include:/c/Windows/system32" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
# PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
PATH="${PATH}:.:/bin:/include" | |
export PATH="${PATH}:/cmake/bin" | |
#cd ${PROJECTS}/CGAL | |
#wget --no-check-certificate -O SFCGAL-${SFCGAL_VER}.tar.gz https://github.com/Oslandia/SFCGAL/archive/v${SFCGAL_VER}.tar.gz | |
#tar -xvf SFCGAL-${SFCGAL_VER}.tar.gz | |
export MPFR_DIR=${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE} | |
export GMP_DIR=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE} | |
export CPPFLAGS="-I${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export LDFLAGS="-L${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
export CGAL_DIR=${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE} | |
export GMP_INCLUDE_DIRS=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include | |
export GMP_LIBRARIES=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib/libgmp.a | |
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} | |
export BOOST_SHARED= | |
cd ${PROJECTS}/cgal/sfcgal | |
#make sure to change file src/CMakeList.txt move MPFR check before GMP | |
rm -rf build${OS_BUILD}${GCC_TYPE} | |
mkdir -p build${OS_BUILD}${GCC_TYPE} | |
cd build${OS_BUILD}${GCC_TYPE} | |
#export Boost_USE_STATIC_LIBS=ON | |
#if gmp include not find, hack teh cgal/lib/CGAL/CGALConfig.make replacing C:\ming..\Projects with /projects | |
cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE:STRING=Release -DCGAL_DIR="${CGAL_DIR}" -DCMAKE_INSTALL_PREFIX:PATH=${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE} \ | |
-DGMP_INCLUDE_DIR:PATH=${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include \ | |
-DBOOST_ROOT:PATH=${PROJECTS}/boost/rel-${BOOST_VER_WU}w${OS_BUILD}${GCC_TYPE}${BOOST_SHARED} \ | |
-DBoost_USE_STATIC_LIBS=TRUE \ | |
${SOURCES}/SFCGAL-${SFCGAL_VER} | |
exit | |
make | |
make install | |
cd ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
strip *.dll | |
#config file looks for dll in the lib folder instead of bin | |
cp ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin/*.dll ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib | |
#replace windows path format (drive latter) with unix path format | |
sed -i "/prefix=./c\prefix=${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}" ${PROJECTS}/CGAL/rel-sfcgal-${SFCGAL_VER}w${OS_BUILD}${GCC_TYPE}/bin/sfcgal-config | |
fi | |
#--SFCGAL and pgRouting dependencies end here -- | |
#from tar | |
if false; then | |
export LIBXML_VER=2.9.9 | |
cd ${PROJECTS}/postgresql | |
export PG_VER=9.4w${OS_BUILD}${GCC_TYPE} | |
export PG_VER_FULL=9.4.12 | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-${PG_VER_FULL} | |
#cd ${PG_DIR}/contrib/hstore | |
#make clean | |
#make | |
#make install | |
#exit; | |
#rm postgresql-${PG_VER_FULL}.tar.bz2 | |
rm -rf postgresql-${PG_VER_FULL} | |
wget http://ftp.postgresql.org/pub/source/v${PG_VER_FULL}/postgresql-${PG_VER_FULL}.tar.bz2 | |
#wget http://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2 | |
#tar -xvjf postgresql-snapshot.tar.bz2 | |
tar -xvjf postgresql-${PG_VER_FULL}.tar.bz2 | |
#gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -shared -o hstore.dll hstore_io.o hstore_op.o hstore_gist.o hstore_gin.o hstore_compat.o crc32.o -L../../src/port -L../../src/common -Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed -L../../src/backend -lpostgres -lpgcommon -lpgport -lm -lws2_32 -lshfolder -Wl,--export-all-symbols -Wl,--out-implib=libhstore.a | |
#9.3 | |
#gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -I. -I. -I../../src/include -I./src/include/port/win32 -DEXEC_BACKEND "-I../../src/include/port/win32" -c -o hstore_io.o hstore_io.c | |
#dllwrap -o hstore.dll --dllname hstore.dll --def libhstoredll.def hstore_io.o hstore_op.o hstore_gist.o hstore_gin.o hstore_compat.o crc32.o -L../../src/port -L../../src/common -Wl,--allow-multiple-definition -Wl,--as-needed -L../../src/backend -lpostgres | |
cd postgresql-${PG_VER_FULL} | |
export PATH="${PROJECTS}/rel/pg${PG_VER}/bin:${PROJECTS}/rel/pg${PG_VER}/lib:$PATH" | |
export PATH="${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:$PATH" | |
make distclean | |
#if you are building for 64-bit then use x86_64-w64-mingw32 for the build,host,target | |
#32 bit uses i686-w64-mingw32 for build, host, target | |
#9.4 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed | |
#9.3 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--as-needed | |
export LDFLAGS=-Wl,--allow-multiple-definition -Wl,--enable-auto-import -Wl,--as-needed | |
./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
--build=${MINGHOST} \ | |
--with-pgport=8443 --disable-float8-byval --enable-cassert --enable-debug \ | |
--without-zlib --with-libxml | |
make clean | |
make | |
#gmake world | |
rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
make install | |
make check | |
#gmake install-world | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make | |
make install | |
exit; | |
fi | |
#from tar | |
if false; then | |
export LIBXML_VER=2.9.9 | |
cd ${PROJECTS}/postgresql | |
export PG_VER=9.6w${OS_BUILD}${GCC_TYPE} | |
export PG_VER_FULL=9.6.2 | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-${PG_VER_FULL} | |
rm postgresql-${PG_VER_FULL}.tar.bz2 | |
rm -rf postgresql-${PG_VER_FULL} | |
wget http://ftp.postgresql.org/pub/source/v${PG_VER_FULL}/postgresql-${PG_VER_FULL}.tar.bz2 | |
#wget http://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2 | |
#tar -xvjf postgresql-snapshot.tar.bz2 | |
tar -xvjf postgresql-${PG_VER_FULL}.tar.bz2 | |
cd postgresql-${PG_VER_FULL} | |
export PATH="${PROJECTS}/rel/pg${PG_VER}/bin:${PROJECTS}/rel/pg${PG_VER}/lib:$PATH" | |
export PATH="${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:$PATH" | |
make distclean | |
#if you are building for 64-bit then use x86_64-w64-mingw32 for the build,host,target | |
#32 bit uses i686-w64-mingw32 for build, host, target | |
#9.4 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed | |
#9.3 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--as-needed | |
#export LDFLAGS=-Wl,--allow-multiple-definition -Wl,--enable-auto-import -Wl,--as-needed | |
./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
--build=${MINGHOST} \ | |
--with-pgport=8443 --enable-cassert --enable-debug \ | |
--without-zlib --with-libxml | |
make clean | |
make | |
rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
make install | |
make check | |
#gmake install-world | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make | |
make install | |
fi | |
#from tar | |
if false; then | |
export LIBXML_VER=2.9.9 | |
cd ${PROJECTS}/postgresql | |
export PG_VER=9.6w${OS_BUILD}${GCC_TYPE} | |
export PG_VER_FULL=9.6.0 | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-${PG_VER_FULL} | |
#cd ${PG_DIR}/contrib/hstore | |
#make clean | |
#make | |
#make install | |
#exit; | |
#rm postgresql-${PG_VER_FULL}.tar.bz2 | |
#rm -rf postgresql-${PG_VER_FULL} | |
#wget http://ftp.postgresql.org/pub/source/v${PG_VER_FULL}/postgresql-${PG_VER_FULL}.tar.bz2 | |
#wget http://ftp.postgresql.org/pub/snapshot/${PG_VER_FULL}/postgresql-${PG_VER_FULL}-snapshot.tar.bz2 | |
#tar -xvjf postgresql-${PG_VER_FULL}-snapshot.tar.bz2 | |
#tar -xvjf postgresql-${PG_VER_FULL}.tar.bz2 | |
#gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -shared -o hstore.dll hstore_io.o hstore_op.o hstore_gist.o hstore_gin.o hstore_compat.o crc32.o -L../../src/port -L../../src/common -Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed -L../../src/backend -lpostgres -lpgcommon -lpgport -lm -lws2_32 -lshfolder -Wl,--export-all-symbols -Wl,--out-implib=libhstore.a | |
#9.3 | |
#gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -I. -I. -I../../src/include -I./src/include/port/win32 -DEXEC_BACKEND "-I../../src/include/port/win32" -c -o hstore_io.o hstore_io.c | |
#dllwrap -o hstore.dll --dllname hstore.dll --def libhstoredll.def hstore_io.o hstore_op.o hstore_gist.o hstore_gin.o hstore_compat.o crc32.o -L../../src/port -L../../src/common -Wl,--allow-multiple-definition -Wl,--as-needed -L../../src/backend -lpostgres | |
cd postgresql-${PG_VER_FULL} | |
export PATH="${PROJECTS}/rel/pg${PG_VER}/bin:${PROJECTS}/rel/pg${PG_VER}/lib:$PATH" | |
export PATH="${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:$PATH" | |
make distclean | |
#if you are building for 64-bit then use x86_64-w64-mingw32 for the build,host,target | |
#32 bit uses i686-w64-mingw32 for build, host, target | |
#9.4 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed | |
#9.3 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--as-needed | |
#export LDFLAGS=-Wl,--allow-multiple-definition -Wl,--enable-auto-import -Wl,--as-needed | |
./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
--build=${MINGHOST} \ | |
--with-pgport=8443 --enable-cassert --enable-debug \ | |
--without-zlib --with-libxml | |
#9.4 and below add | |
## --disable-float8-byval | |
make clean | |
make | |
#gmake world | |
rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
make install | |
make check | |
#gmake install-world | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make | |
make install | |
cd ${PG_DIR}/contrib/bloom | |
make | |
make install | |
cd ${PG_DIR}/contrib/earthdistance | |
make | |
make install | |
exit; | |
fi | |
#from tar master branch | |
if false; then | |
export LIBXML_VER=2.9.9 | |
cd ${PROJECTS}/postgresql | |
export PG_VER=10w${OS_BUILD}${GCC_TYPE} | |
export PG_VER_FULL=10.3 | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-${PG_VER_FULL} | |
export ZLIB_VER=1.2.11 | |
rm postgresql-${PG_VER_FULL}.tar.bz2 | |
# rm postgresql-snapshot.tar.bz2 | |
# rm -rf postgresql-${PG_VER_FULL} | |
wget http://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2 | |
tar -xvjf postgresql-snapshot.tar.bz2 | |
cd postgresql-${PG_VER_FULL} | |
export PATH="${PROJECTS}/rel/pg${PG_VER}/bin:${PROJECTS}/rel/pg${PG_VER}/lib:$PATH" | |
export PATH="${PROJECTS}/zlib/rel-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/lib:$PATH" | |
export PATH="${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:$PATH" | |
export PATH="${PROJECTS}/zlib/rel-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/bin:$PATH" | |
# make distclean | |
#./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
# --build=${MINGHOST} \ | |
# --with-pgport=8443 --enable-cassert --enable-debug \ | |
# --with-zlib --with-libxml | |
## make clean | |
#make | |
## #gmake world | |
## rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
#make install | |
#make check | |
#gmake install-world | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make | |
make install | |
cd ${PG_DIR}/contrib/adminpack | |
make && make install | |
cd ${PG_DIR}/contrib/auto_explain | |
make && make install | |
cd ${PG_DIR}/contrib/btree_gin | |
make install | |
cd ${PG_DIR}/contrib/btree_gist | |
make install | |
cd ${PG_DIR}/contrib/dblink | |
make install | |
exit | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make | |
make install | |
cd ${PG_DIR}/contrib/bloom | |
make | |
make install | |
cd ${PG_DIR}/contrib/earthdistance | |
make | |
make install | |
exit; | |
fi | |
if false; then #make PostgreSQL 9.6 from git | |
export LIBXML_VER=2.9.9 | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
cd ${PROJECTS}/postgresql | |
#export PG_VER_FULL=9.6 | |
#export PG_VER_FULL=9.5 | |
export PG_VER_FULL=13 | |
export PG_VER=${PG_VER_FULL}w${OS_BUILD}${GCC_TYPE} | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-git | |
export PGUSER=postgres | |
#rm -rf $PG_DIR | |
#wget https://ftp.postgresql.org/pub/snapshot/dev/postgresql-snapshot.tar.bz2 | |
#tar -xvjf postgresql-snapshot.tar.bz2 | |
git config --global core.autocrlf false | |
#git clone https://git.postgresql.org/git/postgresql.git $PG_DIR | |
#git clone --depth=1 -b REL_10_STABLE http://git.postgresql.org/git/postgresql.git $PG_DIR | |
cd $PG_DIR | |
git checkout REL_${PG_VER_FULL}_STABLE | |
#git checkout REL9_6_STABLE | |
git clean -fd | |
#git checkout REL9_5_STABLE | |
#git checkout master | |
git pull | |
git clean -fd #-n use -n to see files tath will be deleted | |
#exit | |
#dos2unix * | |
#dos2unix *.* | |
#dos2unix */*.* | |
#dos2unix */*/*.h | |
#find . -type f -exec dos2unix --safe {} \; | |
#exit | |
#find -type f -not \( -wholename '*git*' \) -exec dos2unix {} \; | |
#exit; | |
#export PATH="${PROJECTS}/rel/pg${PG_VER}/bin:${PROJECTS}/rel/pg${PG_VER}/lib:$PATH" | |
#make clean | |
#make distclean | |
# cd ${PG_DIR}/contrib/hstore | |
# make | |
# make install | |
# make installcheck | |
# make install | |
# make installcheck | |
# cd ${PG_DIR}/contrib/pg_trgm | |
# make | |
# make install | |
# make installcheck | |
# exit | |
#sh autogen.sh | |
#autoconf | |
#exit | |
#if you are building for 64-bit then use x86_64-w64-mingw32 for the build,host,target | |
#32 bit uses i686-w64-mingw32 for build, host, target | |
#9.4 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--disable-auto-import -Wl,--as-needed | |
#9.3 LDFLAGS=-Wl,--allow-multiple-definition -Wl,--as-needed | |
#export LDFLAGS=-Wl,--allow-multiple-definition -Wl,--enable-auto-import -Wl,--as-needed | |
export LIBXML_VER=2.9.9 | |
export ZLIB_VER=1.2.11 | |
export ZLIB_PATH=${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
export CPPFLAGS="-I${ZLIB_PATH}/include -I${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export LDFLAGS="-L${ZLIB_PATH}/lib -L${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
export PATH=${PATH}:${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/bin | |
./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
--build=${MINGHOST} \ | |
--with-pgport=8443 --enable-cassert --enable-debug \ | |
--with-zlib --with-libxml | |
#for 9.4 and below for EDB add to configure --with-float-by-val=false | |
make clean | |
make | |
#gmake world | |
rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
make install | |
make check | |
#gmake install-world | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make && make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make | |
make install | |
exit; | |
fi | |
#lz4 for PostgreSQL 14 and above | |
if false; then | |
cd /projects/lz4 | |
#wget https://github.com/lz4/lz4/archive/refs/tags/v1.9.3.tar.gz | |
#tar -xvf v1.9.3.tar.gz | |
export LZ4_VER=1.9.3 | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-gmp-${GMP_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/CGAL/rel-mpfr-${MPFR_VER}w${OS_BUILD}${GCC_TYPE}/bin" | |
PATH="${PATH}:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/include:${PROJECTS}/CGAL/rel-cgal-${CGAL_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
#PATH="${PATH}:${PROJECTS}/CGAL/gmp-${GMP_VER}" | |
#PATH="${PATH}:.:/bin:/include" | |
export PATH="${PATH}:/cmake/bin" | |
cd lz4-${LZ4_VER} | |
#export CMAKE_PARAMS='-G"MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH="${PROJECTS}/lz4/rel-lz4-w${OS_BUILD}${GCC_TYPE}"' | |
#export CC=g++ | |
cd build/cmake | |
cmake -G"MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH="${PROJECTS}/lz4/rel-lz4-${LZ4_VER}w${OS_BUILD}${GCC_TYPE}" CMakeLists.txt | |
make | |
make install | |
fi | |
if true; then #make PostgreSQL from git 14 | |
export LIBXML_VER=2.9.9 | |
export ZLIB_VER=1.2.11 | |
export PATH="/mingw/bin:/mingw/include:/mingw/lib:/bin" | |
cd ${PROJECTS}/postgresql | |
export feature_type= | |
export PG_VER_FULL=14${feature_type} | |
export PG_VER=${PG_VER_FULL}w${OS_BUILD}${GCC_TYPE} | |
export PG_DIR=${PROJECTS}/postgresql/postgresql-git | |
export PGUSER=postgres | |
export ZLIB_PATH=${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE} | |
export LZ4_VER=1.9.3 | |
export LZ4_PATH=${PROJECTS}/lz4/rel-lz4-${LZ4_VER}w${OS_BUILD}${GCC_TYPE} | |
export CPPFLAGS="-I${ZLIB_PATH}/include -I${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/include" | |
export LDFLAGS="-L${ZLIB_PATH}/lib -L${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/lib" | |
export PKG_CONFIG_PATH="${PROJECTS}/sqlite/rel-sqlite3w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/lib:${PROJECTS}/protobuf/rel-${PROTOBUF_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/json-c/rel-${JSON_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/proj/rel-${PROJ_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/gdal/rel-${GDAL_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/pcre/rel-${PCRE_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/zlib/rel-zlib-${ZLIB_VER}w${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:${PROJECTS}/gtkw${OS_BUILD}${GCC_TYPE}/lib/pkgconfig:/mingw/${MINGHOST}/lib/pkgconfig:${LZ4_PATH}/lib/pkgconfig" | |
git clone --depth=1 -b master https://git.postgresql.org/git/postgresql.git $PG_DIR | |
cd $PG_DIR | |
# cd ${PG_DIR}/contrib/pageinspect | |
# make && make install | |
# exit | |
#git checkout master | |
git clean -fd | |
git pull | |
git reset --hard | |
git pull | |
#make && make check | |
#exit | |
#git checkout REL${PG_VER_FULL/./_}_STABLE #for 9.6 | |
git checkout REL_${PG_VER_FULL/./_}_STABLE #for pg11/12/13/14 | |
export PATH=${PATH}:${PROJECTS}/libxml/rel-libxml2-${LIBXML_VER}w${OS_BUILD}${GCC_TYPE}/bin:${PROJECTS}/libxml | |
export PATH=${PATH}:${ZLIB_PATH}/bin:${ZLIB_PATH}/lib:${ZLIB_PATH}/include:${LZ4_PATH}/lib:${LZ4_PATH}/include | |
./configure --prefix=${PROJECTS}/postgresql/rel/pg${PG_VER}\ | |
--build=${MINGHOST} \ | |
--with-pgport=8447 --enable-cassert --enable-debug \ | |
--with-zlib --with-libxml --with-lz4 | |
#exit | |
#for 9.4 and below for EDB add to configure --with-float-by-val=false | |
make clean | |
#rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
#make check | |
make && make check | |
rm -rf ${PROJECTS}/postgresql/rel/pg${PG_VER} | |
make install | |
#gmake install-world | |
#exit | |
#gmake install-world | |
cd ${PG_DIR}/contrib/fuzzystrmatch | |
make && make install | |
cd ${PG_DIR}/contrib/file_fdw | |
make && make install | |
cd ${PG_DIR}/contrib/postgres_fdw | |
make && make install | |
cd ${PG_DIR}/contrib/hstore | |
make | |
make install | |
cd ${PG_DIR}/contrib/pg_trgm | |
make && make install | |
cd ${PG_DIR}/contrib/pg_stat_statements | |
make && make install | |
cd ${PG_DIR}/contrib/pageinspect | |
make && make install | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment