Add new Ada port: graphics/generic_image_decoder

The Generic Image Decoder (GID) is an Ada package for decoding a broad
variety on image formats from any data stream to any kind of medium.
Examples include in-memory bitmap, a GUI objecct, another stream, floating
point data for scientific calculations, a browser element or a device.
Animations are also supported.  GID features:

  * Standalone; requires no other libraries or bindings
  * Completely portable - no OS, CPU, or compiler dependencies
  * Task safe
  * Endian-neutral
  * Free and open source
  * Pure Ada95 (suitable for Ada2005 and Ada2012 projects)

Currently supports BMP, GIF, JPEG, PNG and TGA formats.

WWW: http://gen-img-dec.sourceforge.net/
This commit is contained in:
John Marino 2014-03-23 23:55:27 +00:00
parent 4c76e21e33
commit 8a184b717c
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=348907
8 changed files with 150 additions and 0 deletions

View File

@ -246,6 +246,7 @@
SUBDIR += gdtclft
SUBDIR += geeqie
SUBDIR += gegl
SUBDIR += generic_image_decoder
SUBDIR += geoapi
SUBDIR += geomorph
SUBDIR += geomview

View File

@ -0,0 +1,56 @@
# Created by: John Marino <marino@FreeBSD.org>
# $FreeBSD$
PORTNAME= generic_image_decoder
PORTVERSION= 02
CATEGORIES= graphics
MASTER_SITES= http://sourceforge.net/projects/${SFPATH}/
DISTNAME= gid-${PORTVERSION}
MAINTAINER= marino@FreeBSD.org
COMMENT= Ada library for decoding various image formats inc. animations
LICENSE= MIT
USES= ada zip dos2unix
SFPATH= gen-img-dec/files
WRKSRC= ${WRKDIR}/gid
MAKE_ENV+= Build_Mode=Fast_but_checked
PORTDOCS= gid.txt
OPTIONS_DEFINE= DOCS
.include <bsd.port.options.mk>
post-extract:
${CP} ${FILESDIR}/construct.gpr ${WRKSRC}
${MKDIR} ${WRKSRC}/src ${WRKDIR}/data
${MV} ${WRKSRC}/gid_work.xls ${WRKDIR}/data
(cd ${WRKSRC}; ${MV} *.ad[bs] src)
post-patch:
@${REINPLACE_CMD} -e "s|-j2|-j${MAKE_JOBS_NUMBER}|" \
${WRKSRC}/gid.gpr
do-build:
(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} gnatmake -p -Pconstruct)
(cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} gnatmake -Pgid)
do-install:
${MKDIR} ${STAGEDIR}${PREFIX}/lib/gnat \
${STAGEDIR}${PREFIX}/lib/generic_image_decoder \
${STAGEDIR}${PREFIX}/include/generic_image_decoder
${INSTALL_DATA} ${FILESDIR}/generic_image_decoder.gpr \
${STAGEDIR}${PREFIX}/lib/gnat
${INSTALL_DATA} ${WRKSRC}/src/* \
${STAGEDIR}${PREFIX}/include/generic_image_decoder
${INSTALL_DATA} ${WRKSRC}/lib/* \
${STAGEDIR}${PREFIX}/lib/generic_image_decoder
(cd ${WRKSRC}/test && ${INSTALL_PROGRAM} to_bmp mini \
${STAGEDIR}${PREFIX}/bin)
.if ${PORT_OPTIONS:MDOCS}
${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/gid.txt ${STAGEDIR}${DOCSDIR}
.endif
.include <bsd.port.mk>

View File

@ -0,0 +1,2 @@
SHA256 (gid-02.zip) = 0f7955c4bf3846161461b7e11072446fba5d3e7aaba4fce105987acb0bcdaa9d
SIZE (gid-02.zip) = 95702

View File

@ -0,0 +1,20 @@
project Construct is
for Languages use ("ada");
for Source_Dirs use ("src");
for Object_Dir use "obj_safer";
for Library_Name use "genimgdec";
for Library_Dir use "lib";
for Library_Kind use "static";
package Compiler is
for Default_Switches ("ada") use ("-O3", "-gnato", "-ffunction-sections",
"-funroll-loops", "-fpeel-loops", "-ftracer", "-funswitch-loops",
"-fweb", "-frename-registers");
end Compiler;
package Builder is
for Default_Switches ("ada") use ("-C");
end Builder;
end Construct;

View File

@ -0,0 +1,7 @@
project Generic_Image_Decoder is
for Languages use ("ada");
for Library_Name use "genimgdec";
for Source_Dirs use ("../../include/generic_image_decoder");
for Library_Dir use "../../lib/generic_image_decoder";
for Externally_Built use "true";
end Generic_Image_Decoder;

View File

@ -0,0 +1,11 @@
--- gid.gpr.orig 2014-03-21 21:26:29.000000000 +0000
+++ gid.gpr
@@ -4,7 +4,7 @@
--
project GID is
- for Source_Dirs use (".", "test");
+ for Source_Dirs use ("src", "test");
for Exec_Dir use "test";
type Build_Mode_Type is
("Debug", "Fast_but_checked", "Fast", "Small", "Smallest", "Profiling");

View File

@ -0,0 +1,16 @@
The Generic Image Decoder (GID) is an Ada package for decoding a broad
variety on image formats from any data stream to any kind of medium.
Examples include in-memory bitmap, a GUI objecct, another stream, floating
point data for scientific calculations, a browser element or a device.
Animations are also supported. GID features:
* Standalone; requires no other libraries or bindings
* Completely portable - no OS, CPU, or compiler dependencies
* Task safe
* Endian-neutral
* Free and open source
* Pure Ada95 (suitable for Ada2005 and Ada2012 projects)
Currently supports BMP, GIF, JPEG, PNG and TGA formats.
WWW: http://gen-img-dec.sourceforge.net/

View File

@ -0,0 +1,37 @@
bin/mini
bin/to_bmp
include/generic_image_decoder/gid-buffering.adb
include/generic_image_decoder/gid-buffering.ads
include/generic_image_decoder/gid-color_tables.adb
include/generic_image_decoder/gid-color_tables.ads
include/generic_image_decoder/gid-decoding_bmp.adb
include/generic_image_decoder/gid-decoding_bmp.ads
include/generic_image_decoder/gid-decoding_gif.adb
include/generic_image_decoder/gid-decoding_gif.ads
include/generic_image_decoder/gid-decoding_jpg.adb
include/generic_image_decoder/gid-decoding_jpg.ads
include/generic_image_decoder/gid-decoding_png-huffman.adb
include/generic_image_decoder/gid-decoding_png-huffman.ads
include/generic_image_decoder/gid-decoding_png.adb
include/generic_image_decoder/gid-decoding_png.ads
include/generic_image_decoder/gid-decoding_tga.adb
include/generic_image_decoder/gid-decoding_tga.ads
include/generic_image_decoder/gid-headers.adb
include/generic_image_decoder/gid-headers.ads
include/generic_image_decoder/gid.adb
include/generic_image_decoder/gid.ads
lib/generic_image_decoder/gid-buffering.ali
lib/generic_image_decoder/gid-color_tables.ali
lib/generic_image_decoder/gid-decoding_bmp.ali
lib/generic_image_decoder/gid-decoding_gif.ali
lib/generic_image_decoder/gid-decoding_jpg.ali
lib/generic_image_decoder/gid-decoding_png-huffman.ali
lib/generic_image_decoder/gid-decoding_png.ali
lib/generic_image_decoder/gid-decoding_tga.ali
lib/generic_image_decoder/gid-headers.ali
lib/generic_image_decoder/gid.ali
lib/generic_image_decoder/libgenimgdec.a
lib/gnat/generic_image_decoder.gpr
@dirrmtry lib/gnat
@dirrm lib/generic_image_decoder
@dirrm include/generic_image_decoder