summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authorPav Lucistnik <pav@FreeBSD.org>2005-09-04 15:22:59 +0000
committerPav Lucistnik <pav@FreeBSD.org>2005-09-04 15:22:59 +0000
commitc9bab278e7d9ab5d8be1ea227784a4a7bafe105c (patch)
tree9fa316241d2afc533a2ac26d1f92c4511d3c51c2 /graphics
parentUpdate to 1.5.a.66 (diff)
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>
Notes
Notes: svn path=/head/; revision=141926
Diffstat (limited to 'graphics')
-rw-r--r--graphics/Makefile1
-rw-r--r--graphics/metacam/Makefile50
-rw-r--r--graphics/metacam/distinfo2
-rw-r--r--graphics/metacam/files/getopt.h85
-rw-r--r--graphics/metacam/files/metacam.133
-rw-r--r--graphics/metacam/files/patch-Makefile22
-rw-r--r--graphics/metacam/pkg-descr10
7 files changed, 203 insertions, 0 deletions
diff --git a/graphics/Makefile b/graphics/Makefile
index 020088da51cd..733ff033ad12 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -337,6 +337,7 @@
SUBDIR += mesa-demos
SUBDIR += mesagl
SUBDIR += meshviewer
+ SUBDIR += metacam
SUBDIR += metapixel
SUBDIR += mgp-gallery
SUBDIR += ming
diff --git a/graphics/metacam/Makefile b/graphics/metacam/Makefile
new file mode 100644
index 000000000000..c56812d0fcd2
--- /dev/null
+++ b/graphics/metacam/Makefile
@@ -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>
diff --git a/graphics/metacam/distinfo b/graphics/metacam/distinfo
new file mode 100644
index 000000000000..6bbeb799905d
--- /dev/null
+++ b/graphics/metacam/distinfo
@@ -0,0 +1,2 @@
+MD5 (metacam-1.2.tar.gz) = b4f557f0df1c3dcca849677b6bc79d24
+SIZE (metacam-1.2.tar.gz) = 33657
diff --git a/graphics/metacam/files/getopt.h b/graphics/metacam/files/getopt.h
new file mode 100644
index 000000000000..e7f2ffc9d2ec
--- /dev/null
+++ b/graphics/metacam/files/getopt.h
@@ -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_ */
diff --git a/graphics/metacam/files/metacam.1 b/graphics/metacam/files/metacam.1
new file mode 100644
index 000000000000..aa16f25dd120
--- /dev/null
+++ b/graphics/metacam/files/metacam.1
@@ -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>
diff --git a/graphics/metacam/files/patch-Makefile b/graphics/metacam/files/patch-Makefile
new file mode 100644
index 000000000000..8c1e9165ad97
--- /dev/null
+++ b/graphics/metacam/files/patch-Makefile
@@ -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)
diff --git a/graphics/metacam/pkg-descr b/graphics/metacam/pkg-descr
new file mode 100644
index 000000000000..23b6cd6f51a2
--- /dev/null
+++ b/graphics/metacam/pkg-descr
@@ -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