[Git][debian-gis-team/jeolib-miallib][upstream] New upstream version 1.1.5

Francesco Paolo Lovergine (@frankie) gitlab at salsa.debian.org
Wed Sep 11 12:15:27 BST 2024



Francesco Paolo Lovergine pushed to branch upstream at Debian GIS Project / jeolib-miallib


Commits:
38be1a31 by Francesco Paolo Lovergine at 2024-09-11T12:42:06+02:00
New upstream version 1.1.5
- - - - -


6 changed files:

- CMakeLists.txt
- README.md
- − core/c/Makefile
- − core/c/chull.c
- core/c/imio.c
- core/c/imio2.c


Changes:

=====================================
CMakeLists.txt
=====================================
@@ -32,11 +32,11 @@ set(MIALLIB_LIB_NAME miallib)
 
 set (MIALLIB_VERSION_MAJOR 1)
 set (MIALLIB_VERSION_MINOR 1)
-set (MIALLIB_VERSION_PATCH 3)
+set (MIALLIB_VERSION_PATCH 5)
 set (MIALLIB_VERSION "${MIALLIB_VERSION_MAJOR}.${MIALLIB_VERSION_MINOR}.${MIALLIB_VERSION_PATCH}")
 set (MIALLIB_SOVERSION "${MIALLIB_VERSION_MAJOR}")
 
-set(PROCESS_IN_PARALLEL TRUE CACHE BOOL "Choose if miallib should be run in parallel")
+set(PROCESS_IN_PARALLEL FALSE CACHE BOOL "Choose if miallib should be run in parallel")
 
 # build a CPack driven installer package
 INCLUDE (InstallRequiredSystemLibraries)
@@ -117,7 +117,6 @@ set(SOURCES
   ${MIALLIB_SRC_DIR}/b_undef.h
   ${MIALLIB_SRC_DIR}/bytesex.h
   ${MIALLIB_SRC_DIR}/ced.c
-  ${MIALLIB_SRC_DIR}/chull.c
   ${MIALLIB_SRC_DIR}/classification.c
   ${MIALLIB_SRC_DIR}/colconv.c
   ${MIALLIB_SRC_DIR}/complete.c
@@ -188,7 +187,6 @@ set(SOURCES
   ${MIALLIB_SRC_DIR}/linepool.c
   ${MIALLIB_SRC_DIR}/ll_def.h
   ${MIALLIB_SRC_DIR}/ll_undef.h
-  ${MIALLIB_SRC_DIR}/Makefile
   ${MIALLIB_SRC_DIR}/mblincomb.c
   ${MIALLIB_SRC_DIR}/mcisrg.c
   ${MIALLIB_SRC_DIR}/mcisrg.h
@@ -401,4 +399,4 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/miallib-config.cmake
   )
 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/miallib.pc
         DESTINATION lib/pkgconfig
-)
\ No newline at end of file
+)


=====================================
README.md
=====================================
@@ -35,79 +35,4 @@ cd build
 cmake ..
 cmake --build .
 sudo cmake --install .
-```
-
-# Full installation (not for pyjeo)
-
-This part explains how to install miallib (not only as a dependency for pyjeo)
-
-## Build time dependencies
-
-```
-sudo apt update
-DEBIAN_FRONTEND='noninteractive' sudo apt install -yq \
-    git \
-    build-essential \
-    libgsl-dev \
-    libgsl0-dev \
-    libfann-dev \
-    libgeotiff-dev \
-    libfftw3-dev \
-    libproj-dev \
-    libjsoncpp-dev \
-    libgdal-dev \
-    libssl-dev \
-    doxygen \
-    swig \
-    python \
-    python-numpy \
-    uthash-dev \
-    libshp-dev \
-    texlive
-```
-
-To build:
-
-```
-make build
-```
-
-## Install
-
-```
-sudo make install
-```
-
-## Usage
-
-Upon successful completion of these steps, you can use miallib:
-
-### Python
-- from a python interpreter, simply type
-
-``` python
-import miallib
-```
-
-The doc can be found here: `/usr/local/share/doc/miallib/python/pdf/api.pdf`
-
-
-### Lisp
-
-Together with a LISP interpreter by typing:
-
-```
-mialisp /usr/local/share/mialisp/lsp/init.lsp
-```
-
-The doc can be found here: `/usr/local/share/doc/miallib/lisp/pdf/miadocxlisp.pdf`
-
-### Others
-
-You can also try to bind the miallib libraries directly with your preferred software:
-```
-/usr/local/lib/libmiallib_generic.so
-```
-
-The doc can be found here: `/usr/local/share/doc/miallib/lib/pdf/miallib.pdf`
-
+```
\ No newline at end of file


=====================================
core/c/Makefile deleted
=====================================
@@ -1,308 +0,0 @@
-# ------------------------------------------------------------
-#
-# note: compile with -DCURE_CLUSTER for additional types in set_regions but requires additional library
-#
-
-MAJOR := 1
-MINOR := 1
-PATCH := 1
-
-BASE       = miallib
-TARGET     = lib$(BASE)
-LINKERNAME = $(TARGET)_generic.so
-SONAME     = $(LINKERNAME).$(MAJOR)
-MINORNAME  = $(SONAME).$(MINOR)
-REALNAME   = $(MINORNAME).$(PATCH)
-CC         = gcc
-CXX        = c++
-
-# defined for debugging: -DDEBUG -DXLDEBUG -DXLDEBUG2 -DXLDEBUG -DDEBUB
-# skipped: -DNNI
-# to be done:  -Wextra -Wno-sign-compare
-CFLAGS     = -DDEBUG -DOPENMP -DLIBPROJ -DUNIX -DNOSHP -DCLASSIF -DODOITHIN -DMCISRG -std=c99 -m64 -O3 -Wall -fopenmp -c -Wno-unknown-pragmas
-CFLAGS-XLISP = -DXLISP
-CFLAGS-PYTHON = -DPYTHON
-
-python_version_full := $(wordlist 2,4,$(subst ., ,$(shell python3 --version 2>&1)))
-python_version_major := $(word 1,${python_version_full})
-python_version_minor := $(word 2,${python_version_full})
-python_version_patch := $(word 3,${python_version_full})
-
-PYVER=${python_version_major}.${python_version_minor}
-
-prefix     = /usr/local
-exec_prefix= ${prefix}
-
-# NOTES:
-# probably unused: ngb.c
-# skipped so far: smoothcc_grazzja.c
-# note that natngbint.c # requires NNI to be defined and the libcsa and libnn libraries.  libnn makefile,in needs to pe patched to include -fPIC when compiling
-# note that phase_correlation.c requires -lfftw3
-# note that gsl.c requires -lgls -lgslcblas
-# skel.c and classification.c requires -DODOITHIN and -DCLASSIF respectively
-
-# min_max return type master (G_TYPE *) different from type specific (ERROR_TYPE)
-
-SRCS	   = imem.c shm.c pointop.c \
-		geom.c bresenham.c \
-		imio_gdal.c imio2.c imio.c \
-		imstat.c classification.c histo.c  indexx.c \
-		registration.c gsl.c \
-		format.c colconv.c  miscel.c \
-		setshft.c \
-		fifo.c fah.c pqueue.c \
-		dcluster.c \
-		label.c mslabel.c mmlabel.c \
-		setreg.c setreglut.c \
-		labelccfastrim.c labelccms.c labelccmi.c labelci.c labelcims.c labelccvar.c \
-		labelccdissim.c labelccmsdissim.c newlabelcc.c \
-		labelvertex.c propagate.c \
-		outeredge.c \
-		alphacc.c alphatree.c alphatreetoCCs.c \
-		dendro.c \
-		partorp.c partition.c \
-		erodil.c lerodil.c \
-		herk.c herkbl.c \
-		rank.c \
-		convolve.c phase_correlation.c \
-		dist.c efedt.c \
-		geodist.c ced.c ggeo.c \
-		recons.c rminmax.c \
-		wshed.c wsfah.c \
-		srg.c mcisrg.c \
-		regionMean.c determineSize.c pqueueExact.c segmentation.c \
-		simplifyLine.c linepool.c borderdetection.c vectorize.c douglas-peucker.c  \
-		writeShapeFile.c writeSVG.c \
-		flow.c aflood.c  fillocarve.c flatdir.c  htop.c complete.c \
-		shade.c \
-		skelodthin.c skel.c epc.c \
-		switch.c \
-		oiht.c oiiz.c oiws.c \
-		uswilk.c hull.c hullti.c chull.c myhull.c \
-		dirmean.c \
-		grid.c projection.c \
-		edgeweight.c transition.c \
-		dbscan.c \
-		mblincomb.c \
-		ovlmatrix.c \
-		msmm.c \
-		natngbint.c \
-		remsens.c  \
-		mspa.c \
-		compose.c
-
-# problem with libnn and libcsa:
-#		natngbint.c # requires NNI to be defined
-
-OBJS       = $(SRCS:.c=.o)
-
-
-SRCS-MSPA = fifo.c label.c wshed.c bresenham.c pointop.c wsfah.c ced.c \
-		lerodil.c oiht.c imem.c erodil.c imio.c skel.c recons.c imstat.c \
-		pqueue.c fah.c efedt.c miscel.c format.c setreg.c setshft.c geom.c
-
-OBJS-MSPA  = $(SRCS-MSPA:.c=.o)
-
-BUILDDIR   = ../build
-LDIR 	   = $(BUILDDIR)/lib
-DOCDIR     = ../doc
-
-DDIR	   =  $(BUILDDIR)/build-shared-python
-DOBJS	   =  $(SRCS:%.c=$(DDIR)/%.o)
-SDIR	   =  $(BUILDDIR)/build-static-python
-SOBJS	   =  $(SRCS:%.c=$(SDIR)/%.o)
-
-SDIR-XLISP	   =  $(BUILDDIR)/build-static-xlisp
-SOBJS-XLISP	   =  $(SRCS:%.c=$(SDIR-XLISP)/%.o)
-
-SDIR-GENERIC	   =  $(BUILDDIR)/build-static-generic
-SOBJS-GENERIC	   =  $(SRCS:%.c=$(SDIR-GENERIC)/%.o)
-
-SDIR-MSPA	   =  $(BUILDDIR)/build-static-mspa
-SOBJS-MSPA         =  $(SRCS-MSPA:%.c=$(SDIR-MSPA)/%.o)
-
-DDIR-GENERIC	   =  $(BUILDDIR)/build-shared-generic
-DOBJS-GENERIC	   =  $(SRCS:%.c=$(DDIR-GENERIC)/%.o)
-
-
-
-INCLUDE    = -I./ -I/usr/include/python${PYVER}/ -I/usr/include/gdal/
-
-# TODO: add -lcsa -lnn
-
-ifdef $(NOSHP)
-	LIBS       = -lgdal -ltiff -ldl -lproj -lfftw3_omp -lfftw3_threads -lgsl -lgslcblas
-else
-	LIBS       = -lgdal -ltiff -ldl -lproj -lfftw3_omp -lfftw3_threads -lgsl -lgslcblas -lshp
-endif
-
-INTERFACE  = imem.i
-SWIGOPT    =
-SWIG       = swig
-RUNTIMEDIR = $(exec_prefix)/lib
-
-LIBM       = -lieee -lm
-LIBC       =
-LIBCRYPT   = -lcrypt
-SYSLIBS    = $(LIBM) $(LIBC) $(LIBCRYPT)
-
-libtool_comp = $(TOP)/../Tools/libtool --mode compile
-libtool_link = $(TOP)/../Tools/libtool --mode link
-
-# X11 options
-
-XLIB       = -L/usr/X11R6/lib -lX11
-XINCLUDE   = -I/usr/X11R6/include
-
-
-
-# Symbols used for using shared libraries
-STATIC=		.a
-LDSTATIC=	ar rcv
-CCSTATIC=       -fPIC
-
-SO=		.so
-LDSHARED=	gcc -shared
-CCSHARED=	-fPIC
-CXXSHARED=      gcc -shared
-
-
-##################################################################
-#####                     SUPERCLASS                        ######
-##################################################################
-
-
-# banner.h: $(SRCS)
-	# echo "#define MYBANNER \"File created using programs by Pierre Soille et al.  Version as of `date`\"" > banner.h
-	# echo "#define MIA_BANNER \"MIALlib version as of `date`\"" >> banner.h
-
-
-##################################################################
-#####                       GENERIC                         ######
-##################################################################
-
-# ----------------------------------------------------------------
-# Build static library
-# ----------------------------------------------------------------
-
-$(SDIR-GENERIC)/%.o: %.c miallib.h #banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSTATIC) $(CFLAGS) $(CFLAGS-GENERIC)  $(INCLUDE) -o $@ $<
-
-$(DDIR-GENERIC)/%.o: %.c miallib.h #banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSHARED) $(CFLAGS) $(CFLAGS-SHARED)  $(INCLUDE) -o $@ $<
-
-
-$(SDIR-MSPA)/%.o: %.c miallib.h #banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSTATIC) -DMSPA $(CFLAGS) $(CFLAGS-GENERIC)  $(INCLUDE) -o $@ $<
-
-$(LDIR)/$(TARGET)_mspa.a: $(SOBJS-MSPA)
-	@mkdir -p $(@D)
-	$(LDSTATIC) $@ $(SOBJS-MSPA) && ranlib $@
-
-$(LDIR)/$(TARGET)_generic.a: $(SOBJS-GENERIC)
-	@mkdir -p $(@D)
-	$(LDSTATIC) $@ $(SOBJS-GENERIC) && ranlib $@
-
-$(LDIR)/$(REALNAME): $(DOBJS-GENERIC)
-	@mkdir -p $(@D)
-	$(LDSHARED) $(DOBJS-GENERIC) $(LIBS) -o $@ -Wl,-soname,$(SONAME)
-
-
-##################################################################
-#####                       XLISP                           ######
-##################################################################
-
-# ----------------------------------------------------------------
-# Build static library
-# ----------------------------------------------------------------
-
-$(SDIR-XLISP)/%.o: %.c miallib.h banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSTATIC) $(CFLAGS) $(CFLAGS-XLISP)  $(INCLUDE) -o $@ $<
-
-$(LDIR)/$(TARGET)_xlisp.a: $(SOBJS-XLISP)
-	@mkdir -p $(@D)
-	$(LDSTATIC) $@ $(SOBJS-XLISP) && ranlib $@
-
-
-##################################################################
-#####                       PYTHON                          ######
-##################################################################
-
-# Make sure these locate your Python installation
-PYTHON_INCLUDE= -DHAVE_CONFIG_H -I/usr/include/python${PYVER}
-PYTHON_LIB    =
-
-# Extra Python specific dynamic linking options
-PYTHON_DLNK   =
-
-
-# ----------------------------------------------------------------
-# Build static and dynamic libraries
-# ----------------------------------------------------------------
-
-$(SDIR)/%.o: %.c miallib.h #banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSTATIC) $(CFLAGS) $(CFLAGS-PYTHON) $(INCLUDE) -o $@ $<
-
-$(DDIR)/%.o: %.c miallib.h #banner.h
-	@mkdir -p $(@D)
-	$(CC) -c $(CCSHARED) $(CFLAGS) $(CFLAGS-PYTHON) $(INCLUDE) -o $@ $<
-
-$(LDIR)/$(TARGET)_python.a: $(SOBJS)
-	@mkdir -p $(@D)
-	$(LDSTATIC) $@ $(SOBJS) && ranlib $@
-
-$(LDIR)/$(TARGET)_python.so: $(DOBJS)
-	@mkdir -p $(@D)
-	$(LDSHARED) $(DOBJS) $(LIBS) -o $@
-
-
-##################################################################
-
-$(BUILDDIR)/doc/xml/mial_doxy2swig.i: $(LDIR)/$(TARGET)_python.a $(DOCDIR)/Doxyfile
-	cd $(DOCDIR) && make clean && make doc
-
-##################################################################
-
-
-
-build: $(LDIR)/$(TARGET)_python.so $(LDIR)/$(TARGET)_python.a $(LDIR)/$(TARGET)_xlisp.a $(LDIR)/$(TARGET)_generic.a  $(LDIR)/$(REALNAME) $(LDIR)/$(TARGET)_mspa.a
-	@echo "#define OPENMP 1" > config_miallib.h
-
-generic: $(LDIR)/$(TARGET)_generic.a  $(LDIR)/$(REALNAME)
-	@echo "#define OPENMP 1" > config_miallib.h
-
-doc:  $(LDIR)/$(TARGET)_python.a  $(BUILDDIR)/doc/xml/mial_doxy2swig.i
-
-all: build doc
-
-install:
-	mkdir -p $(prefix)/lib
-	cp -a $(LDIR)/$(REALNAME) $(prefix)/lib/
-	cp -a $(LDIR)/$(TARGET)*.so* $(prefix)/lib/
-	-rm $(prefix)/lib/$(MINORNAME)
-	-rm $(prefix)/lib/$(SONAME)
-	-rm $(prefix)/lib/$(LINKERNAME)
-	-ln -s $(prefix)/lib/$(REALNAME) $(prefix)/lib/$(MINORNAME)
-	-ln -s $(prefix)/lib/$(MINORNAME) $(prefix)/lib/$(SONAME)
-	-ln -s $(prefix)/lib/$(SONAME) $(prefix)/lib/$(LINKERNAME)
-	mkdir -p $(prefix)/include/$(BASE)/
-	cp -a mialtypes.h $(prefix)/include/$(BASE)/
-	cp -a miallib_*.h $(prefix)/include/$(BASE)/
-	cp -a op.h $(prefix)/include/$(BASE)/
-
-uninstall:
-	-rm -f $(prefix)/lib/*miallib*
-	-rm -f $(prefix)/include/$(BASE)/mialtypes.h
-	-rm -f $(prefix)/include/$(BASE)/miallib_*.h
-	-rm -f $(prefix)/include/$(BASE)/op.h
-
-clean:
-	if [ x$(BUILDDIR) != 'x' ] && [ -d $(BUILDDIR) ]; then rm -rf ${BUILDDIR}; fi
-	-rm -f banner.h
-
-


=====================================
core/c/chull.c deleted
=====================================
@@ -1,148 +0,0 @@
-// Copyright 2001, softSurfer (www.softsurfer.com)
-// This code may be freely used and modified for any purpose
-// providing that this copyright notice is included with it.
-// SoftSurfer makes no warranty for this code, and cannot be held
-// liable for any real or imagined damage resulting from its use.
-// Users of this code must verify correctness for their application.
-
-// Assume that a class is already given for the object:
-//    Point with coordinates {float x, y;}
-//===================================================================
-
-// isLeft(): tests if a point is Left|On|Right of an infinite line.
-//    Input:  three points P0, P1, and P2
-//    Return: >0 for P2 left of the line through P0 and P1
-//            =0 for P2 on the line
-//            <0 for P2 right of the line
-//    See: the January 2001 Algorithm on Area of Triangles
-
-// intpair_t structure used instead of original Point structure
-
-#include "stdio.h"
-
-typedef int INT32;
-
-/* for point with integer coordinates */
-typedef struct {
-    INT32 a;
-    INT32 b;
-} intpair_t;
-
-/*pk: 18/04/2023 make static, see https://gudok.xyz/inline/ */
-inline static INT32 isLeft( intpair_t P0, intpair_t P1, intpair_t P2 )
-{
-    return (P1.a - P0.a)*(P2.b - P0.b) - (P2.a - P0.a)*(P1.b - P0.b);
-}
-//===================================================================
-
-
-// chainHull_2D(): Andrew's monotone chain 2D convex hull algorithm
-//     Input:  P[] = an array of 2D points
-//                   presorted by increasing x- and y-coordinates
-//             n = the number of points in P[]
-//     Output: H[] = an array of the convex hull vertices (max is n)
-//     Return: the number of points in H[]
-int
-chainHull_2D( intpair_t * P, int n, intpair_t * H )
-{
-    // the output array H[] will be used as the stack
-    int    bot=0, top=(-1);  // indices for bottom and top of the stack
-    int    i;                // array scan index
-
-    // Get the indices of points with min x-coord and min|max y-coord
-    int minmin = 0, minmax;
-    INT32 xmin = P[0].a;
-    for (i=1; i<n; i++)
-        if (P[i].a != xmin) break;
-    minmax = i-1;
-    if (minmax == n-1) {       // degenerate case: all x-coords == xmin
-        H[++top] = P[minmin];
-        if (P[minmax].b != P[minmin].b) // a nontrivial segment
-            H[++top] = P[minmax];
-        H[++top] = P[minmin];           // add polygon endpoint
-        return top+1;
-    }
-
-    // Get the indices of points with max x-coord and min|max y-coord
-    int maxmin, maxmax = n-1;
-    INT32 xmax = P[n-1].a;
-    for (i=n-2; i>=0; i--)
-        if (P[i].a != xmax) break;
-    maxmin = i+1;
-
-    // Compute the lower hull on the stack H
-    H[++top] = P[minmin];      // push minmin point onto stack
-    i = minmax;
-    while (++i <= maxmin)
-    {
-        // the lower line joins P[minmin] with P[maxmin]
-        if (isLeft( P[minmin], P[maxmin], P[i]) >= 0 && i < maxmin)
-            continue;          // ignore P[i] above or on the lower line
-
-        while (top > 0)        // there are at least 2 points on the stack
-        {
-            // test if P[i] is left of the line at the stack top
-            if (isLeft( H[top-1], H[top], P[i]) > 0)
-                break;         // P[i] is a new hull vertex
-            else
-                top--;         // pop top point off stack
-        }
-        H[++top] = P[i];       // push P[i] onto stack
-    }
-
-    // Next, compute the upper hull on the stack H above the bottom hull
-    if (maxmax != maxmin)      // if distinct xmax points
-        H[++top] = P[maxmax];  // push maxmax point onto stack
-    bot = top;                 // the bottom point of the upper hull stack
-    i = maxmin;
-    while (--i >= minmax)
-    {
-        // the upper line joins P[maxmax] with P[minmax]
-        if (isLeft( P[maxmax], P[minmax], P[i]) >= 0 && i > minmax)
-            continue;          // ignore P[i] below or on the upper line
-
-        while (top > bot)    // at least 2 points on the upper stack
-        {
-            // test if P[i] is left of the line at the stack top
-            if (isLeft( H[top-1], H[top], P[i]) > 0)
-                break;         // P[i] is a new hull vertex
-            else
-                top--;         // pop top point off stack
-        }
-        H[++top] = P[i];       // push P[i] onto stack
-    }
-    if (minmax != minmin)
-        H[++top] = P[minmin];  // push joining endpoint onto stack
-
-    return top+1;
-}
-
-
-//  Public-domain function by Darel Rex Finley, 2006:
-// http://local.wasp.uwa.edu.au/~pbourke/geometry/polyarea/
-/* double polygonArea(double *X, double *Y, int points) { */
-
-/*   double  area=0. ; */
-/*   int     i, j=0  ; */
-
-/*   for (i=0; i<points; i++) { */
-/*     j++; if (j==points) j=0; */
-/*     area+=(X[i]+X[j])*(Y[i]-Y[j]); } */
-
-/*   return area*.5; */
-/* } */
-
-
-double polygonArea(intpair_t *P, int points) {
-
-  double  area=0. ;
-  int     i, j=1  ;
-
-
-  for (i=0, points-=1; i<points; i++, j++) {
-    area+= ( P[i].a * P[j].b -  P[j].a * P[i].b);
-  }
-
-  return area*.5;
-}
-


=====================================
core/c/imio.c
=====================================
@@ -305,8 +305,8 @@ IMAGE *read_image(char *fn)
   IMAGE *im;
   TIFF *tiffp;
   unsigned long int nbyte=0, bread=0;
-  uint32 *s_o_t, rps;
-  uint16 spp=1, pc=1;
+  uint32_t *s_o_t, rps;
+  uint16_t spp=1, pc=1;
   long int fsot; /* offset to 1st pixel */
   unsigned short int *tred, *tgreen, *tblue;
   unsigned short int *red, *green, *blue;
@@ -419,9 +419,9 @@ IMAGE *read_image(char *fn)
     TIFFGetField(tiffp, TIFFTAG_STRIPOFFSETS, &s_o_t);
     fsot = (long)*s_o_t;
     TIFFGetField(tiffp, TIFFTAG_BITSPERSAMPLE, &bitpp);
-    red = (uint16 *)malloc(1<<bitpp*sizeof(uint16));
-    green = (uint16 *)malloc(1<<bitpp*sizeof(uint16));
-    blue = (uint16 *)malloc(1<<bitpp*sizeof(uint16));
+    red = (uint16_t *)malloc(1<<bitpp*sizeof(uint16_t));
+    green = (uint16_t *)malloc(1<<bitpp*sizeof(uint16_t));
+    blue = (uint16_t *)malloc(1<<bitpp*sizeof(uint16_t));
     TIFFGetField(tiffp, TIFFTAG_PHOTOMETRIC, &pmi);
     if (TIFFGetField(tiffp, TIFFTAG_COLORMAP, &tred, &tgreen, &tblue) != 1)
       cm=0;
@@ -1219,8 +1219,8 @@ IMAGE *read_image_to_type(char *fn, int data_type)
   IMAGE *im, *lim;
   TIFF *tiffp;
   unsigned long int nbyte=0, bread=0;
-  uint32 rps;
-  uint16 spp=1, pc=1;
+  uint32_t rps;
+  uint16_t spp=1, pc=1;
   tstrip_t nstrip, strip;
   long int i;
   int nx, ny;


=====================================
core/c/imio2.c
=====================================
@@ -23,6 +23,7 @@ along with miallib.  If not, see <https://www.gnu.org/licenses/>.
 #include <string.h>
 #include <time.h>
 #include <unistd.h>  /* for gethostname */
+#include <stdint.h>
 #ifndef UNIX
 // #include "bytesex.h" /* <endian.h> only for linux ... */
 #include  <endian.h>
@@ -117,8 +118,8 @@ ERROR_TYPE tiffinfo(char *fn, char *field, float *val)
 {
   TIFF *tiffp;
   GTIF *gtif=NULL;
-  uint32 a_uint32;
-  uint16  a_uint16;
+  uint32_t a_uint32;
+  uint16_t  a_uint16;
   geocode_t gkey_val;
 /*   if ((tiffp = TIFFOpen(fn, "rc")) == NULL){ */
 /*     (void)sprintf(buf,"ERROR in tiffinfo(): invalid TIFF file name \"%s\" \n", fn); errputstr(buf); */
@@ -220,8 +221,8 @@ IMAGE *tiffinfoJIP(char *fn)
   GTIF *gtif=NULL;
   IMAGE *im=NULL;
   UINT32 *pim;
-  uint32 a_uint32;
-  uint16  a_uint16;
+  uint32_t a_uint32;
+  uint16_t  a_uint16;
   geocode_t gkey_val;
 
   /* Open TIFF descriptor to read GeoTIFF tags */
@@ -343,7 +344,7 @@ IMAGE *GetTIFFTagGeo(char *fn, char *tagname)
   TIFF *tiffp=NULL;
   IMAGE *im=NULL;
   int i, erflag=0;
-  uint16 count=0;
+  uint16_t count=0;
   double *data=NULL;
   double *ptr=NULL;
   GTIF *gtif=(GTIF*)NULL; /* GeoKey-level descriptor */
@@ -716,8 +717,8 @@ IMAGE *readTiffSubset(char *fn, int x, int y, unsigned szx, unsigned szy)
     TIFF *tif;
     UCHAR *pim = NULL, *ptmp = NULL;
     unsigned long stripCount;
-    uint16 bps, spp, rps, comp, sf, bpp;
-    uint32 nx, ny;
+    uint16_t bps, spp, rps, comp, sf, bpp;
+    uint32_t nx, ny;
     int data_type;
     IMAGE *im=NULL;
 



View it on GitLab: https://salsa.debian.org/debian-gis-team/jeolib-miallib/-/commit/38be1a31773f6adb58d97d8765544d3dabb2f6b0

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/jeolib-miallib/-/commit/38be1a31773f6adb58d97d8765544d3dabb2f6b0
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20240911/3d50a5cb/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list