MetaCam is a utility to read and decode meta-information from digital camera

images with EXIF information.

In addition to the standard EXIF fields, MetaCam also supports vendor-specific
extensions from Nikon, Olympus, Canon and Casio.

PR:		ports/85628
Submitted by:	Emanuel Haupt <ehaupt@critical.ch>
This commit is contained in:
Pav Lucistnik 2005-09-04 15:22:59 +00:00
parent 9a4796daf5
commit c9bab278e7
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=141926
7 changed files with 203 additions and 0 deletions

View file

@ -337,6 +337,7 @@
SUBDIR += mesa-demos
SUBDIR += mesagl
SUBDIR += meshviewer
SUBDIR += metacam
SUBDIR += metapixel
SUBDIR += mgp-gallery
SUBDIR += ming

50
graphics/metacam/Makefile Normal file
View file

@ -0,0 +1,50 @@
# New ports collection makefile for: metacam
# Date created: 2 Sep 2005
# Whom: Emanuel Haupt <ehaupt@critical.ch>
#
# $FreeBSD$
#
PORTNAME= metacam
PORTVERSION= 1.2
CATEGORIES= graphics
MASTER_SITES= ftp://ftp.cheeseplant.org/pub/
MAINTAINER= ehaupt@critical.ch
COMMENT= A digital camera EXIF meta-information reader
USE_GMAKE= yes
USE_REINPLACE= yes
USE_GETOPT_LONG=yes
USE_GCC= 3.4+
CFLAGS+= -I${LOCALBASE}/include
CXXFLAGS+= -I${LOCALBASE}/include
MAKE_ENV+= LDFLAGS="${LDFLAGS}"
PLIST_FILES= bin/metacam
PORTDOCS= README.canon README.casio
MAN1= metacam.1
ALL_TARGET= ${PORTNAME}
.include <bsd.port.pre.mk>
.if ${OSVERSION} < 500000
post-patch:
@${REINPLACE_CMD} -e 's|<\(getopt\.h\)>|"\1"|' ${WRKSRC}/${PORTNAME}.cc
${CP} ${FILESDIR}/getopt.h ${WRKSRC}
.endif
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin
${INSTALL_MAN} ${FILESDIR}/${PORTNAME}.1 ${MANPREFIX}/man/man1
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
.for f in ${PORTDOCS}
${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
.endfor
.endif
.include <bsd.port.post.mk>

View file

@ -0,0 +1,2 @@
MD5 (metacam-1.2.tar.gz) = b4f557f0df1c3dcca849677b6bc79d24
SIZE (metacam-1.2.tar.gz) = 33657

View file

@ -0,0 +1,85 @@
/* $NetBSD: getopt.h,v 1.4 2000/07/07 10:43:54 ad Exp $ */
/* $FreeBSD: /tmp/pcvs/ports/graphics/metacam/files/getopt.h,v 1.1 2005-09-04 15:22:59 pav Exp $ */
/*-
* Copyright (c) 2000 The NetBSD Foundation, Inc.
* All rights reserved.
*
* This code is derived from software contributed to The NetBSD Foundation
* by Dieter Baron and Thomas Klausner.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the NetBSD
* Foundation, Inc. and its contributors.
* 4. Neither the name of The NetBSD Foundation nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef _GETOPT_H_
#define _GETOPT_H_
#include <sys/cdefs.h>
/*
* GNU-like getopt_long()/getopt_long_only() with 4.4BSD optreset extension.
* getopt() is declared here too for GNU programs.
*/
#define no_argument 0
#define required_argument 1
#define optional_argument 2
struct option {
/* name of long option */
const char *name;
/*
* one of no_argument, required_argument, and optional_argument:
* whether option takes an argument
*/
int has_arg;
/* if not NULL, set *flag to val when option found */
int *flag;
/* if flag not NULL, value to set *flag to; else return value */
int val;
};
__BEGIN_DECLS
int getopt_long(int, char * const *, const char *,
const struct option *, int *);
int getopt_long_only(int, char * const *, const char *,
const struct option *, int *);
#ifndef _GETOPT_DECLARED
#define _GETOPT_DECLARED
int getopt(int, char * const [], const char *);
extern char *optarg; /* getopt(3) external variables */
extern int optind, opterr, optopt;
#endif
#ifndef _OPTRESET_DECLARED
#define _OPTRESET_DECLARED
extern int optreset; /* getopt(3) external variable */
#endif
__END_DECLS
#endif /* !_GETOPT_H_ */

View file

@ -0,0 +1,33 @@
.TH "metacam" "1" "2001-2004" "Daniel Stephens" ""
.SH "NAME"
.LP
metacam \- extract EXIF information from digital camera files
.SH "SYNOPSIS"
.LP
.B metacam
[\fB\-v\fP|\fB\-a\fP|\fB\-x\fP] [\fIFILE\fP]...
.br
.SH "DESCRIPTION"
.LP
.B metacam
supports all standard EXIF fields in addition to (known) vendor specific blocks from Nikon, Olympus, Canon and Casio.
.SH "OPTIONS"
.LP
.TP
\fB\-h\fR, \fB\-\-help\fR
Output help information and exit.
.TP
\fB\-v\fR, \fB\-\-verbose\fR
Output unknown tags too.
.TP
\fB\-a\fR, \fB\-\-all\fR
Output ALL tags (implies \-v).
.TP
\fB\-x\fR, \fB\-\-xml\fR
Output as XML.
.SH "AUTHORS"
.LP
Daniel Stephens <daniel@cheeseplant.org>
.br
Manual page by Alp Toker <alp@atoker.com>, Jarno Elonen <elonen@debian.org>

View file

@ -0,0 +1,22 @@
--- Makefile.orig Sat Aug 21 19:56:53 2004
+++ Makefile Fri Sep 2 12:14:20 2005
@@ -27,10 +27,8 @@
# -- Cygwin under Windows 2000
#OSCXXFLAGS=
-CXX=g++
INCLUDES=
-CXXFLAGS=-Wall $(OSCXXFLAGS) -D_GNU_SOURCE -O2 $(INCLUDES)
LIBOBJS=rationals.o exiftags.o \
nikontags.o olympustags.o canontags.o casiotags.o dpyfuncs.o \
@@ -65,7 +63,7 @@
mv -f libmetacam.a- libmetacam.a
metacam: $(EXEOBJS) libmetacam.a
- $(CXX) $(CXXFLAGS) $(EXEOBJS) -o metacam -lm -L. -lmetacam
+ $(CXX) $(CXXFLAGS) $(EXEOBJS) -o metacam -lm -L. -lmetacam $(LDFLAGS)
# Dependency rules
dependencies: Makefile $(DEPS)

View file

@ -0,0 +1,10 @@
MetaCam is a utility to read and decode meta-information from digital camera
images with EXIF information.
In addition to the standard EXIF fields, MetaCam also supports vendor-specific
extensions from Nikon, Olympus, Canon and Casio.
WWW: http://www.cheeseplant.org/~daniel/pages/metacam.html
- ehaupt
ehaupt@critical.ch