Mercurial > forge
changeset 5707:34bda0ace182 octave-forge
add netcdf-4.0 build script and patch, add as dependency to gcc43_build_deps.sh
author | lindnerb |
---|---|
date | Fri, 05 Jun 2009 20:36:01 +0000 |
parents | b289dc7e1b87 |
children | 963c46140540 |
files | admin/Windows/mingw32/gcc43_build_deps.sh admin/Windows/mingw32/netcdf/build-4.0-3.sh admin/Windows/mingw32/netcdf/netcdf-4.0-3.patch |
diffstat | 3 files changed, 138 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/admin/Windows/mingw32/gcc43_build_deps.sh Fri Jun 05 20:32:44 2009 +0000 +++ b/admin/Windows/mingw32/gcc43_build_deps.sh Fri Jun 05 20:36:01 2009 +0000 @@ -62,6 +62,8 @@ VER_FTGL=2.1.3-rc5-3 VER_FLTK=1.1.9-3 +VER_NETCDF=4.0-3 + # Mind the dependency of libraries: # CBLAS depends on BLAS # LAPACK depends on BLAS @@ -123,3 +125,5 @@ ( cd ftgl && build-${VER_FTGL}.sh ${ACTION} ); ( cd fltk && build-${VER_FLTK}.sh ${ACTION} ); + +( cd netcdf && build-${VER_NETCDF}.sh ${ACTION} );
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/admin/Windows/mingw32/netcdf/build-4.0-3.sh Fri Jun 05 20:36:01 2009 +0000 @@ -0,0 +1,113 @@ +#! /usr/bin/sh + +# Name of package +PKG=netcdf +# Version of Package +VER=4.0 +# Release of (this patched) package +REL=3 +# Name&Version of Package +PKGVER=${PKG}-${VER} +# Full name of this patched Package +FULLPKG=${PKGVER}-${REL} + +# Name of source file +SRCFILE=${PKGVER}.tar.gz +TAR_TYPE=z +# Name of Patch file +PATCHFILE=${FULLPKG}.patch + +# URL of source code file +URL="ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf-4.0.tar.gz" + +# Top dir of this building process (i.e. where the patch file and source file(s) reside) +TOPDIR=`pwd` +# Directory Source code is extracted to (relative to TOPDIR) +SRCDIR=${PKGVER} +# Directory original source code is extracted to (for generating diffs) (relative to TOPDIR) +SRCDIR_ORIG=${SRCDIR}-orig + +# Make file to use +MAKEFILE="" + +# Additional DIFF Flags for generating diff file +#DIFF_FLAGS="-x *.def" + +# header files to be installed +INSTALL_HEADERS="netcdf.h" +#INCLUDE_DIR= + +source ../gcc43_common.sh + +# Directory the lib is built in +BUILDDIR=".build_mingw32_${VER}-${REL}_gcc${GCC_VER}${GCC_SYS}" + +conf() +{ + ( cd ${BUILDDIR} && ${TOPDIR}/${SRCDIR}/configure \ + --srcdir=../${SRCDIR} \ + CC="${CC} $LIBGCCLDFLAGS" \ + CXX="${CXX} $LIBGCCLDFLAGS" \ + F77="${F77} $LIBGCCLDFLAGS" \ + CFLAGS="$CFLAGS ${GCC_ARCH_FLAGS} ${GCC_OPT_FLAGS} -Wall" \ + CXXFLAGS="$CXXFLAGS ${GCC_ARCH_FLAGS} ${GCC_OPT_FLAGS} -Wall" \ + LDFLAGS="${LDFLAGS}" \ + --prefix="${PREFIX}" \ + --enable-shared \ + --enable-dll \ + --enable-static + ) +} + +build_pre() +{ + modify_libtool_all ${BUILDDIR}/libtool +} + +install() +{ + install_pre; + + ${CP} ${CP_FLAGS} ${BUILDDIR}/libsrc/.libs/netcdf.dll ${SHAREDLIB_PATH} + ${CP} ${CP_FLAGS} ${BUILDDIR}/libsrc/.libs/libnetcdf.a ${STATICLIBRARY_PATH} + ${CP} ${CP_FLAGS} ${BUILDDIR}/libsrc/.libs/libnetcdf.dll.a ${LIBRARY_PATH} + + for a in ${INSTALL_HEADERS}; do + ${CP} ${CP_FLAGS} ${SRCDIR}/libsrc/$a ${INCLUDE_PATH} + done + + mkdir -vp ${LICENSE_PATH}/${PKG} + ${CP} ${CP_FLAGS} ${SRCDIR}/COPYRIGHT ${LICENSE_PATH}/${PKG} + + install_post +} + +uninstall() +{ + uninstall_pre; + + ${RM} ${RM_FLAGS} ${SHAREDLIB_PATH}/netcdf.dll + ${RM} ${RM_FLAGS} ${STATICLIBRARY_PATH}/libnetcdf.a + ${RM} ${RM_FLAGS} ${LIBRARY_PATH}/libnetcdf.dll.a + + for a in ${INSTALL_HEADERS}; do + ${RM} ${RM_FLAGS} ${INCLUDE_PATH}/$a + done + + ${RM} ${RM_FLAGS} ${LICENSE_PATH}/${PKG}/COPYRIGHT + + uninstall_post; +} + +all() +{ + download + unpack + applypatch + mkdirs + conf + build + install +} + +main $*
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/admin/Windows/mingw32/netcdf/netcdf-4.0-3.patch Fri Jun 05 20:36:01 2009 +0000 @@ -0,0 +1,21 @@ +diff -urN -x '*.exe' -x '*.dll' -x '*.o' -x '*.a' -x '*.bak' netcdf-4.0-orig/libsrc/netcdf.h netcdf-4.0/libsrc/netcdf.h +--- netcdf-4.0-orig/libsrc/netcdf.h 2008-03-28 21:50:28 +0100 ++++ netcdf-4.0/libsrc/netcdf.h 2009-02-14 17:55:36 +0100 +@@ -223,10 +223,17 @@ + # define MSC_EXTRA __declspec(dllimport) + # endif + #include <io.h> ++#if defined(_MSC_VER) + #define lseek _lseeki64 + #define off_t __int64 + #define stat __stat64 + #define fstat _fstat64 ++#elif defined(__MINGW32__) ++#define lseek _lseeki64 ++#define off_t __int64 ++#define stat _stati64 ++#define fstat _fstati64 ++#endif /* __MINGW32__ */ + #else + #define MSC_EXTRA + #endif /* defined(DLL_NETCDF) */