Merge commit '638ecc4cde79b0296f2e04f683ca4cb881c28f36' as 'rtengine/libraw'
This commit is contained in:
4
rtengine/libraw/.clang-format
Normal file
4
rtengine/libraw/.clang-format
Normal file
@@ -0,0 +1,4 @@
|
||||
BreakBeforeBraces: Allman
|
||||
ColumnLimit: 120
|
||||
SortIncludes: false
|
||||
TabWidth: 4
|
27
rtengine/libraw/COPYRIGHT
Normal file
27
rtengine/libraw/COPYRIGHT
Normal file
@@ -0,0 +1,27 @@
|
||||
** LibRaw: Raw images processing library **
|
||||
|
||||
Copyright (C) 2008-2021 LibRaw LLC (http://www.libraw.org, info@libraw.org)
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
LibRaw uses code from dcraw.c -- Dave Coffin's raw photo decoder,
|
||||
dcraw.c is copyright 1997-2018 by Dave Coffin, dcoffin a cybercom o net.
|
||||
LibRaw do not use RESTRICTED code from dcraw.c
|
||||
|
||||
LibRaw uses DCB demosaic and FBDD denoise licensed under BSD-like 3-clause license
|
||||
DCB and FBDD are Copyright (C) 2010, Jacek Gozdz (cuniek@kft.umcs.lublin.pl)
|
||||
|
||||
LibRaw uses X3F library to unpack Foveon Files, licensed BSD-style license
|
||||
Copyright (c) 2010, Roland Karlsson (roland@proxel.se)
|
||||
All rights reserved.
|
||||
|
||||
LibRaw uses pieces of code from Adobe DNG SDK 1.4,
|
||||
Copyright (c) 2005 Adobe Systems Incorporated, licensed under MIT license
|
||||
|
2744
rtengine/libraw/Changelog.txt
Normal file
2744
rtengine/libraw/Changelog.txt
Normal file
File diff suppressed because it is too large
Load Diff
20
rtengine/libraw/DEVELOPER-NOTES
Normal file
20
rtengine/libraw/DEVELOPER-NOTES
Normal file
@@ -0,0 +1,20 @@
|
||||
|
||||
=== Notes for LibRaw contributor ===
|
||||
|
||||
0. Repository
|
||||
LibRaw public repository is located on GitHub
|
||||
URL:
|
||||
http://github.com/LibRaw/LibRaw - main page
|
||||
git://github.com/LibRaw/LibRaw.git - git URL
|
||||
|
||||
If you wish to participate in LibRaw development please use GitHub fork.
|
||||
|
||||
LibRaw distribution files are prepared by ./mkdist.sh script
|
||||
This script
|
||||
- generates ./configure script from autotools stuff
|
||||
- removes developer Makefile
|
||||
- fetches 'Official' dcraw.c from Dave Coffin's site
|
||||
- removes itself
|
||||
|
||||
Feel free to contact us (info@libraw.org or Contact form on www.libraw.org) if
|
||||
you have any questions or suggestions.
|
21
rtengine/libraw/GoPro/dng-sdk-1_4-allow-VC5-validate.diff
Normal file
21
rtengine/libraw/GoPro/dng-sdk-1_4-allow-VC5-validate.diff
Normal file
@@ -0,0 +1,21 @@
|
||||
diff --git a/source/dng_ifd.cpp b/source/dng_ifd.cpp
|
||||
index 174f18f..2974323 100644
|
||||
--- a/source/dng_ifd.cpp
|
||||
+++ b/source/dng_ifd.cpp
|
||||
@@ -3168,6 +3168,7 @@ bool dng_ifd::IsValidDNG (dng_shared &shared,
|
||||
case ccUncompressed:
|
||||
break;
|
||||
|
||||
+ case 9: /* VC5 compression support */
|
||||
case ccJPEG:
|
||||
{
|
||||
|
||||
@@ -3202,7 +3203,7 @@ bool dng_ifd::IsValidDNG (dng_shared &shared,
|
||||
break;
|
||||
|
||||
}
|
||||
-
|
||||
+
|
||||
case ccLossyJPEG:
|
||||
{
|
||||
|
@@ -0,0 +1,15 @@
|
||||
diff --git a/gpr_sdk/private/gpr_read_image.cpp b/gpr_sdk/private/gpr_read_image.cpp
|
||||
index c611b3f..9200a5b 100644
|
||||
--- a/gpr_sdk/private/gpr_read_image.cpp
|
||||
+++ b/gpr_sdk/private/gpr_read_image.cpp
|
||||
@@ -68,8 +68,10 @@ gpr_read_image::gpr_read_image( gpr_buffer_auto* vc5_buffer ) : _vc5_buffer(vc5_
|
||||
}
|
||||
|
||||
#if GPR_WRITING || GPR_READING
|
||||
+#ifndef qDNG_1_6
|
||||
const int ccVc5 = 9; // Vc5 compression type
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
void gpr_read_image::ReadTile (dng_host &host,
|
||||
const dng_ifd &ifd,
|
21
rtengine/libraw/GoPro/dng-sdk-allow-VC5-validate.diff
Normal file
21
rtengine/libraw/GoPro/dng-sdk-allow-VC5-validate.diff
Normal file
@@ -0,0 +1,21 @@
|
||||
diff --git a/source/dng_ifd.cpp b/source/dng_ifd.cpp
|
||||
index 174f18f..2974323 100644
|
||||
--- a/source/dng_ifd.cpp
|
||||
+++ b/source/dng_ifd.cpp
|
||||
@@ -3168,6 +3168,7 @@ bool dng_ifd::IsValidDNG (dng_shared &shared,
|
||||
case ccUncompressed:
|
||||
break;
|
||||
|
||||
+ case 9: /* VC5 compression support */
|
||||
case ccJPEG:
|
||||
{
|
||||
|
||||
@@ -3202,7 +3203,7 @@ bool dng_ifd::IsValidDNG (dng_shared &shared,
|
||||
break;
|
||||
|
||||
}
|
||||
-
|
||||
+
|
||||
case ccLossyJPEG:
|
||||
{
|
||||
|
29
rtengine/libraw/GoPro/gpr_read_image.cpp.diff
Normal file
29
rtengine/libraw/GoPro/gpr_read_image.cpp.diff
Normal file
@@ -0,0 +1,29 @@
|
||||
--- gpr_read_image.cpp.orig 2019-08-30 12:20:00.326653300 +0300
|
||||
+++ gpr_read_image.cpp 2019-08-31 10:43:26.568184100 +0300
|
||||
@@ -67,6 +67,10 @@
|
||||
fDecodeVC5 = true;
|
||||
}
|
||||
|
||||
void gpr_read_image::ReadTile (dng_host &host,
|
||||
const dng_ifd &ifd,
|
||||
dng_stream &stream,
|
||||
@@ -77,7 +81,8 @@
|
||||
uint32 tileByteCount,
|
||||
AutoPtr<dng_memory_block> &compressedBuffer,
|
||||
AutoPtr<dng_memory_block> &uncompressedBuffer,
|
||||
- AutoPtr<dng_memory_block> &subTileBlockBuffer)
|
||||
+ AutoPtr<dng_memory_block> &subTileBlockBuffer,
|
||||
+ bool usingMultipleThreads)
|
||||
{
|
||||
|
||||
if( ifd.fCompression == ccVc5 )
|
||||
@@ -122,7 +127,8 @@
|
||||
tileByteCount,
|
||||
compressedBuffer,
|
||||
uncompressedBuffer,
|
||||
- subTileBlockBuffer);
|
||||
+ subTileBlockBuffer,
|
||||
+ usingMultipleThreads);
|
||||
}
|
||||
}
|
||||
|
12
rtengine/libraw/GoPro/gpr_read_image.h.diff
Normal file
12
rtengine/libraw/GoPro/gpr_read_image.h.diff
Normal file
@@ -0,0 +1,12 @@
|
||||
--- gpr_read_image.h.orig 2019-08-30 12:20:00.326653300 +0300
|
||||
+++ gpr_read_image.h 2019-08-30 20:56:11.138246800 +0300
|
||||
@@ -56,7 +56,8 @@
|
||||
uint32 tileByteCount,
|
||||
AutoPtr<dng_memory_block> &compressedBuffer,
|
||||
AutoPtr<dng_memory_block> &uncompressedBuffer,
|
||||
- AutoPtr<dng_memory_block> &subTileBlockBuffer);
|
||||
+ AutoPtr<dng_memory_block> &subTileBlockBuffer,
|
||||
+ bool usingMultipleThreads );
|
||||
};
|
||||
|
||||
#endif // GPR_READING
|
51
rtengine/libraw/INSTALL
Normal file
51
rtengine/libraw/INSTALL
Normal file
@@ -0,0 +1,51 @@
|
||||
|
||||
========= Installing LibRaw ========
|
||||
|
||||
I. Installation steps
|
||||
|
||||
1. Unpack the distribution file:
|
||||
|
||||
$ tar xzvf LibRaw-0.xx.yy.tar.gz
|
||||
|
||||
2. Go to LibRaw folder and run ./configure and make:
|
||||
|
||||
$ cd LibRaw-0.xx.yy
|
||||
$ ./configure [...optional args...]
|
||||
$ make
|
||||
|
||||
3. install by run make install as root:
|
||||
|
||||
$ sudo make install
|
||||
|
||||
If you're using Github snapshot, create ./configure script:
|
||||
autoreconf --install
|
||||
before using it (you'll need autotools installed).
|
||||
|
||||
Alternatively, you may use pre-created Makefiles (Makefile.dist for Unix,
|
||||
Makefile.msvc for Windows/VisualStudio) and add/remove options by editing
|
||||
these Makefiles
|
||||
|
||||
|
||||
II. ./configure options
|
||||
|
||||
--enable-openmp
|
||||
--disable-openmp
|
||||
|
||||
Enable/disable OpenMP support if compiler supports it.
|
||||
OpenMP is enabled by default.
|
||||
|
||||
|
||||
--enable-lcms
|
||||
--disable-lcms
|
||||
|
||||
Enable/disable LCMS color engine support. If enabled, ./configure will try to
|
||||
find lcms library. Both LCMS-1.x and LCMS-2.x are supported
|
||||
LCMS support is enabled by default
|
||||
|
||||
|
||||
--enable-examples
|
||||
--disable-examples
|
||||
|
||||
Enables/disables examples compilation and installation. Enabled by default
|
||||
|
||||
|
340
rtengine/libraw/LICENSE.CDDL
Normal file
340
rtengine/libraw/LICENSE.CDDL
Normal file
@@ -0,0 +1,340 @@
|
||||
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
|
||||
1. Definitions.
|
||||
|
||||
1.1. Contributor means each individual or entity that creates or
|
||||
contributes to the creation of Modifications.
|
||||
|
||||
1.2. Contributor Version means the combination of the Original
|
||||
Software, prior Modifications used by a Contributor (if any),
|
||||
and the Modifications made by that particular Contributor.
|
||||
|
||||
1.3. Covered Software means (a) the Original Software, or (b)
|
||||
Modifications, or (c) the combination of files containing
|
||||
Original Software with files containing Modifications, in each
|
||||
case including portions thereof.
|
||||
|
||||
1.4. Executable means the Covered Software in any form other
|
||||
than Source Code.
|
||||
|
||||
1.5. Initial Developer means the individual or entity that first
|
||||
makes Original Software available under this License.
|
||||
|
||||
1.6. Larger Workmeans a work which combines Covered Software or
|
||||
portions thereof with code not governed by the terms of this
|
||||
License.
|
||||
|
||||
1.7. License means this document.
|
||||
|
||||
1.8. Licensable means having the right to grant, to the maximum
|
||||
extent possible, whether at the time of the initial grant or
|
||||
subsequently acquired, any and all of the rights conveyed herein.
|
||||
|
||||
1.9. Modifications means the Source Code and Executable form of
|
||||
any of the following: A. Any file that results from an addition
|
||||
to, deletion from or modification of the contents of a file
|
||||
containing Original Software or previous Modifications; B. Any
|
||||
new file that contains any part of the Original Software or
|
||||
previous Modification; or C. Any new file that is contributed or
|
||||
otherwise made available under the terms of this License.
|
||||
|
||||
1.10. Original Software means the Source Code and Executable
|
||||
form of computer software code that is originally released under
|
||||
this License.
|
||||
|
||||
1.11. Patent Claims means any patent claim(s), now owned or
|
||||
hereafter acquired, including without limitation, method,
|
||||
process, and apparatus claims, in any patent Licensable by
|
||||
grantor.
|
||||
|
||||
1.12. Source Code means (a) the common form of computer software
|
||||
code in which modifications are made and (b) associated
|
||||
documentation included in or with such code.
|
||||
|
||||
1.13. You (or Your) means an individual or a legal entity
|
||||
exercising rights under, and complying with all of the terms of,
|
||||
this License. For legal entities, You includes any entity which
|
||||
controls, is controlled by, or is under common control with You.
|
||||
For purposes of this definition, control means (a) the power,
|
||||
direct or indirect, to cause the direction or management of such
|
||||
entity, whether by contract or otherwise, or (b) ownership of
|
||||
more than fifty percent (50%) of the outstanding shares or
|
||||
beneficial ownership of such entity.
|
||||
|
||||
2. License Grants.
|
||||
|
||||
2.1. The Initial Developer Grant. Conditioned upon Your
|
||||
compliance with Section 3.1 below and subject to third party
|
||||
intellectual property claims, the Initial Developer hereby
|
||||
grants You a world-wide, royalty-free, non-exclusive license:
|
||||
|
||||
(a) under intellectual property rights (other than patent or
|
||||
trademark) Licensable by Initial Developer, to use, reproduce,
|
||||
modify, display, perform, sublicense and distribute the Original
|
||||
Software (or portions thereof), with or without Modifications,
|
||||
and/or as part of a Larger Work; and
|
||||
|
||||
(b) under Patent Claims infringed by the making, using or
|
||||
selling of Original Software, to make, have made, use, practice,
|
||||
sell, and offer for sale, and/or otherwise dispose of the
|
||||
Original Software (or portions thereof);
|
||||
|
||||
(c) The licenses granted in Sections 2.1(a) and (b) are
|
||||
effective on the date Initial Developer first distributes or
|
||||
otherwise makes the Original Software available to a third party
|
||||
under the terms of this License;
|
||||
|
||||
(d) Notwithstanding Section 2.1(b) above, no patent license is
|
||||
granted: (1) for code that You delete from the Original
|
||||
Software, or (2) for infringements caused by: (i) the
|
||||
modification of the Original Software, or (ii) the combination
|
||||
of the Original Software with other software or devices.
|
||||
|
||||
2.2. Contributor Grant. Conditioned upon Your compliance with
|
||||
Section 3.1 below and subject to third party intellectual
|
||||
property claims, each Contributor hereby grants You a
|
||||
world-wide, royalty-free, non-exclusive license:
|
||||
|
||||
(a) under intellectual property rights (other than patent or
|
||||
trademark) Licensable by Contributor to use, reproduce, modify,
|
||||
display, perform, sublicense and distribute the Modifications
|
||||
created by such Contributor (or portions thereof), either on an
|
||||
unmodified basis, with other Modifications, as Covered Software
|
||||
and/or as part of a Larger Work; and
|
||||
|
||||
(b) under Patent Claims infringed by the making, using, or
|
||||
selling of Modifications made by that Contributor either alone
|
||||
and/or in combination with its Contributor Version (or portions
|
||||
of such combination), to make, use, sell, offer for sale, have
|
||||
made, and/or otherwise dispose of: (1) Modifications made by
|
||||
that Contributor (or portions thereof); and (2) the combination
|
||||
of Modifications made by that Contributor with its Contributor
|
||||
Version (or portions of such combination).
|
||||
|
||||
(c) The licenses granted in Sections 2.2(a) and 2.2(b)
|
||||
areeffective on the date Contributor first distributes or
|
||||
otherwise makes the Modifications available to a third party.
|
||||
|
||||
(d) Notwithstanding Section 2.2(b) above, no patent license is
|
||||
granted: (1) for any code that Contributor has deleted from the
|
||||
Contributor Version; (2) for infringements caused by: (i) third
|
||||
party modifications of Contributor Version, or (ii) the
|
||||
combination of Modifications made by that Contributor with other
|
||||
software (except as part of the Contributor Version) or other
|
||||
devices; or (3) under Patent Claims infringed by Covered
|
||||
Software in the absence of Modifications made by that
|
||||
Contributor.
|
||||
|
||||
3. Distribution Obligations.
|
||||
|
||||
3.1. Availability of Source Code. Any Covered Software that You
|
||||
distribute or otherwise make available in Executable form must
|
||||
also be made available in Source Code form and that Source Code
|
||||
form must be distributed only under the terms of this License.
|
||||
You must include a copy of this License with every copy of the
|
||||
Source Code form of the Covered Software You distribute or
|
||||
otherwise make available. You must inform recipients of any such
|
||||
Covered Software in Executable form as to how they can obtain
|
||||
such Covered Software in Source Code form in a reasonable manner
|
||||
on or through a medium customarily used for software exchange.
|
||||
|
||||
3.2. Modifications. The Modifications that You create or to
|
||||
which You contribute are governed by the terms of this License.
|
||||
You represent that You believe Your Modifications are Your
|
||||
original creation(s) and/or You have sufficient rights to grant
|
||||
the rights conveyed by this License.
|
||||
|
||||
3.3. Required Notices. You must include a notice in each of Your
|
||||
Modifications that identifies You as the Contributor of the
|
||||
Modification. You may not remove or alter any copyright, patent
|
||||
or trademark notices contained within the Covered Software, or
|
||||
any notices of licensing or any descriptive text giving
|
||||
attribution to any Contributor or the Initial Developer.
|
||||
|
||||
3.4. Application of Additional Terms. You may not offer or
|
||||
impose any terms on any Covered Software in Source Code form
|
||||
that alters or restricts the applicable version of this License
|
||||
or the recipients rights hereunder. You may choose to offer, and
|
||||
to charge a fee for, warranty, support, indemnity or liability
|
||||
obligations to one or more recipients of Covered
|
||||
Software. However, you may do so only on Your own behalf, and
|
||||
not on behalf of the Initial Developer or any Contributor. You
|
||||
must make it absolutely clear that any such warranty, support,
|
||||
indemnity or liability obligation is offered by You alone, and
|
||||
You hereby agree to indemnify the Initial Developer and every
|
||||
Contributor for any liability incurred by the Initial Developer
|
||||
or such Contributor as a result of warranty, support, indemnity
|
||||
or liability terms You offer.
|
||||
|
||||
3.5. Distribution of Executable Versions. You may distribute the
|
||||
Executable form of the Covered Software under the terms of this
|
||||
License or under the terms of a license of Your choice, which
|
||||
may contain terms different from this License, provided that You
|
||||
are in compliance with the terms of this License and that the
|
||||
license for the Executable form does not attempt to limit or
|
||||
alter the recipients rights in the Source Code form from the
|
||||
rights set forth in this License. If You distribute the Covered
|
||||
Software in Executable form under a different license, You must
|
||||
make it absolutely clear that any terms which differ from this
|
||||
License are offered by You alone, not by the Initial Developer
|
||||
or Contributor. You hereby agree to indemnify the Initial
|
||||
Developer and every Contributor for any liability incurred by
|
||||
the Initial Developer or such Contributor as a result of any
|
||||
such terms You offer.
|
||||
|
||||
3.6. Larger Works. You may create a Larger Work by combining
|
||||
Covered Software with other code not governed by the terms of
|
||||
this License and distribute the Larger Work as a single product.
|
||||
In such a case, You must make sure the requirements of this
|
||||
License are fulfilled for the Covered Software.
|
||||
|
||||
4. Versions of the License.
|
||||
|
||||
4.1. New Versions. Sun Microsystems, Inc. is the initial license
|
||||
steward and may publish revised and/or new versions of this
|
||||
License from time to time. Each version will be given a
|
||||
distinguishing version number. Except as provided in Section
|
||||
4.3, no one other than the license steward has the right to
|
||||
modify this License.
|
||||
|
||||
4.2. Effect of New Versions. You may always continue to use,
|
||||
distribute or otherwise make the Covered Software available
|
||||
under the terms of the version of the License under which You
|
||||
originally received the Covered Software. If the Initial
|
||||
Developer includes a notice in the Original Software prohibiting
|
||||
it from being distributed or otherwise made available under any
|
||||
subsequent version of the License, You must distribute and make
|
||||
the Covered Software available under the terms of the version of
|
||||
the License under which You originally received the Covered
|
||||
Software. Otherwise, You may also choose to use, distribute or
|
||||
otherwise make the Covered Software available under the terms of
|
||||
any subsequent version of the License published by the license
|
||||
steward.
|
||||
|
||||
4.3. Modified Versions. When You are an Initial Developer and
|
||||
You want to create a new license for Your Original Software, You
|
||||
may create and use a modified version of this License if You:
|
||||
(a) rename the license and remove any references to the name of
|
||||
the license steward (except to note that the license differs
|
||||
from this License); and (b) otherwise make it clear that the
|
||||
license contains terms which differ from this License.
|
||||
|
||||
5. DISCLAIMER OF WARRANTY. COVERED SOFTWARE IS PROVIDED UNDER
|
||||
THIS LICENSE ON AN AS IS BASIS, WITHOUT WARRANTY OF ANY KIND,
|
||||
EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION,
|
||||
WARRANTIES THAT THE COVERED SOFTWARE IS FREE OF DEFECTS,
|
||||
MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING.
|
||||
THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED
|
||||
SOFTWARE IS WITH YOU. SHOULD ANY COVERED SOFTWARE PROVE
|
||||
DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY
|
||||
OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN
|
||||
ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED SOFTWARE
|
||||
IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.
|
||||
|
||||
6. TERMINATION.
|
||||
|
||||
6.1. This License and the rights granted hereunder will
|
||||
terminate automatically if You fail to comply with terms herein
|
||||
and fail to cure such breach within 30 days of becoming aware of
|
||||
the breach. Provisions which, by their nature, must remain in
|
||||
effect beyond the termination of this License shall survive.
|
||||
|
||||
6.2. If You assert a patent infringement claim (excluding
|
||||
declaratory judgment actions) against Initial Developer or a
|
||||
Contributor (the Initial Developer or Contributor against whom
|
||||
You assert such claim is referred to as Participant) alleging
|
||||
that the Participant Software (meaning the Contributor Version
|
||||
where the Participant is a Contributor or the Original Software
|
||||
where the Participant is the Initial Developer) directly or
|
||||
indirectly infringes any patent, then any and all rights granted
|
||||
directly or indirectly to You by such Participant, the Initial
|
||||
Developer (if the Initial Developer is not the Participant) and
|
||||
all Contributors under Sections 2.1 and/or 2.2 of this License
|
||||
shall, upon 60 days notice from Participant terminate
|
||||
prospectively and automatically at the expiration of such 60 day
|
||||
notice period, unless if within such 60 day period You withdraw
|
||||
Your claim with respect to the Participant Software against such
|
||||
Participant either unilaterally or pursuant to a written
|
||||
agreement with Participant.
|
||||
|
||||
6.3. In the event of termination under Sections 6.1 or 6.2
|
||||
above, all end user licenses that have been validly granted by
|
||||
You or any distributor hereunder prior to termination (excluding
|
||||
licenses granted to You by any distributor) shall survive
|
||||
termination.
|
||||
|
||||
7. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO
|
||||
LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR
|
||||
OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER
|
||||
CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED SOFTWARE, OR ANY
|
||||
SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY
|
||||
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY
|
||||
CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOST
|
||||
PROFITS, LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR
|
||||
MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES,
|
||||
EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY
|
||||
OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO
|
||||
LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH
|
||||
PARTYS NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH
|
||||
LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR
|
||||
LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS
|
||||
EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU.
|
||||
|
||||
8. U.S. GOVERNMENT END USERS. The Covered Software is a
|
||||
commercial item, as that term is defined in 48 C.F.R. 2.101
|
||||
(Oct. 1995), consisting of commercial computer software (as that
|
||||
term is defined at 48 C.F.R. 252.227-7014(a)(1)) and commercial
|
||||
computer software documentation as such terms are used in 48
|
||||
C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and
|
||||
48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all
|
||||
U.S. Government End Users acquire Covered Software with only
|
||||
those rights set forth herein. This U.S. Government Rights
|
||||
clause is in lieu of, and supersedes, any other FAR, DFAR, or
|
||||
other clause or provision that addresses Government rights in
|
||||
computer software under this License.
|
||||
|
||||
9. MISCELLANEOUS. This License represents the complete agreement
|
||||
concerning subject matter hereof. If any provision of this
|
||||
License is held to be unenforceable, such provision shall be
|
||||
reformed only to the extent necessary to make it enforceable.
|
||||
This License shall be governed by the law of the jurisdiction
|
||||
specified in a notice contained within the Original Software
|
||||
(except to the extent applicable law, if any, provides
|
||||
otherwise), excluding such jurisdictions conflict-of-law
|
||||
provisions. Any litigation relating to this License shall be
|
||||
subject to the jurisdiction of the courts located in the
|
||||
jurisdiction and venue specified in a notice contained within
|
||||
the Original Software, with the losing party responsible for
|
||||
costs, including, without limitation, court costs and reasonable
|
||||
attorneys fees and expenses. The application of the United
|
||||
Nations Convention on Contracts for the International Sale of
|
||||
Goods is expressly excluded. Any law or regulation which
|
||||
provides that the language of a contract shall be construed
|
||||
against the drafter shall not apply to this License. You agree
|
||||
that You alone are responsible for compliance with the United
|
||||
States export administration regulations (and the export control
|
||||
laws and regulation of any other countries) when You use,
|
||||
distribute or otherwise make available any Covered Software.
|
||||
|
||||
10. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and
|
||||
the Contributors, each party is responsible for claims and
|
||||
damages arising, directly or indirectly, out of its utilization
|
||||
of rights under this License and You agree to work with Initial
|
||||
Developer and Contributors to distribute such responsibility on
|
||||
an equitable basis. Nothing herein is intended or shall be
|
||||
deemed to constitute any admission of liability.
|
||||
|
||||
----------------------------------------------------------------
|
||||
|
||||
NOTICE PURSUANT TO SECTION 9 OF THE COMMON DEVELOPMENT AND
|
||||
DISTRIBUTION LICENSE (CDDL): This code is released under the
|
||||
CDDL and shall be governed by the laws of the State of
|
||||
California (excluding conflict-of-law provisions). Any
|
||||
litigation relating to this License shall be subject to the
|
||||
jurisdiction of the Federal Courts of the Northern District of
|
||||
California and the state courts of the State of California, with
|
||||
venue lying in Santa Clara County, California.
|
||||
|
||||
----------------------------------------------------------------
|
||||
|
458
rtengine/libraw/LICENSE.LGPL
Normal file
458
rtengine/libraw/LICENSE.LGPL
Normal file
@@ -0,0 +1,458 @@
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
Version 2.1, February 1999
|
||||
|
||||
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
|
||||
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the Lesser GPL. It also counts
|
||||
as the successor of the GNU Library Public License, version 2, hence
|
||||
the version number 2.1.]
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software--to make sure the software is free for all its users.
|
||||
|
||||
This license, the Lesser General Public License, applies to some
|
||||
specially designated software packages--typically libraries--of the
|
||||
Free Software Foundation and other authors who decide to use it. You
|
||||
can use it too, but we suggest you first think carefully about whether
|
||||
this license or the ordinary General Public License is the better
|
||||
strategy to use in any particular case, based on the explanations below.
|
||||
|
||||
When we speak of free software, we are referring to freedom of use,
|
||||
not price. Our General Public Licenses are designed to make sure that
|
||||
you have the freedom to distribute copies of free software (and charge
|
||||
for this service if you wish); that you receive source code or can get
|
||||
it if you want it; that you can change the software and use pieces of
|
||||
it in new free programs; and that you are informed that you can do
|
||||
these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
distributors to deny you these rights or to ask you to surrender these
|
||||
rights. These restrictions translate to certain responsibilities for
|
||||
you if you distribute copies of the library or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link other code with the library, you must provide
|
||||
complete object files to the recipients, so that they can relink them
|
||||
with the library after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
We protect your rights with a two-step method: (1) we copyright the
|
||||
library, and (2) we offer you this license, which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
To protect each distributor, we want to make it very clear that
|
||||
there is no warranty for the free library. Also, if the library is
|
||||
modified by someone else and passed on, the recipients should know
|
||||
that what they have is not the original version, so that the original
|
||||
author's reputation will not be affected by problems that might be
|
||||
introduced by others.
|
||||
|
||||
Finally, software patents pose a constant threat to the existence of
|
||||
any free program. We wish to make sure that a company cannot
|
||||
effectively restrict the users of a free program by obtaining a
|
||||
restrictive license from a patent holder. Therefore, we insist that
|
||||
any patent license obtained for a version of the library must be
|
||||
consistent with the full freedom of use specified in this license.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the
|
||||
ordinary GNU General Public License. This license, the GNU Lesser
|
||||
General Public License, applies to certain designated libraries, and
|
||||
is quite different from the ordinary General Public License. We use
|
||||
this license for certain libraries in order to permit linking those
|
||||
libraries into non-free programs.
|
||||
|
||||
When a program is linked with a library, whether statically or using
|
||||
a shared library, the combination of the two is legally speaking a
|
||||
combined work, a derivative of the original library. The ordinary
|
||||
General Public License therefore permits such linking only if the
|
||||
entire combination fits its criteria of freedom. The Lesser General
|
||||
Public License permits more lax criteria for linking other code with
|
||||
the library.
|
||||
|
||||
We call this license the "Lesser" General Public License because it
|
||||
does Less to protect the user's freedom than the ordinary General
|
||||
Public License. It also provides other free software developers Less
|
||||
of an advantage over competing non-free programs. These disadvantages
|
||||
are the reason we use the ordinary General Public License for many
|
||||
libraries. However, the Lesser license provides advantages in certain
|
||||
special circumstances.
|
||||
|
||||
For example, on rare occasions, there may be a special need to
|
||||
encourage the widest possible use of a certain library, so that it becomes
|
||||
a de-facto standard. To achieve this, non-free programs must be
|
||||
allowed to use the library. A more frequent case is that a free
|
||||
library does the same job as widely used non-free libraries. In this
|
||||
case, there is little to gain by limiting the free library to free
|
||||
software only, so we use the Lesser General Public License.
|
||||
|
||||
In other cases, permission to use a particular library in non-free
|
||||
programs enables a greater number of people to use a large body of
|
||||
free software. For example, permission to use the GNU C Library in
|
||||
non-free programs enables many more people to use the whole GNU
|
||||
operating system, as well as its variant, the GNU/Linux operating
|
||||
system.
|
||||
|
||||
Although the Lesser General Public License is Less protective of the
|
||||
users' freedom, it does ensure that the user of a program that is
|
||||
linked with the Library has the freedom and the wherewithal to run
|
||||
that program using a modified version of the Library.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, whereas the latter must
|
||||
be combined with the library in order to run.
|
||||
|
||||
GNU LESSER GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License Agreement applies to any software library or other
|
||||
program which contains a notice placed by the copyright holder or
|
||||
other authorized party saying it may be distributed under the terms of
|
||||
this Lesser General Public License (also called "this License").
|
||||
Each licensee is addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also combine or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Use a suitable shared library mechanism for linking with the
|
||||
Library. A suitable mechanism is one that (1) uses at run time a
|
||||
copy of the library already present on the user's computer system,
|
||||
rather than copying library functions into the executable, and (2)
|
||||
will operate properly with a modified version of the library, if
|
||||
the user installs one, as long as the modified version is
|
||||
interface-compatible with the version that the work was made with.
|
||||
|
||||
c) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
d) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
e) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the materials to be distributed need not include anything that is
|
||||
normally distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties with
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Lesser General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
19
rtengine/libraw/LibRaw.pro
Normal file
19
rtengine/libraw/LibRaw.pro
Normal file
@@ -0,0 +1,19 @@
|
||||
TEMPLATE=subdirs
|
||||
CONFIG+=ordered
|
||||
SUBDIRS= \
|
||||
buildfiles/dcraw_emu.pro \
|
||||
buildfiles/libraw.pro \
|
||||
buildfiles/postprocessing_benchmark.pro \
|
||||
buildfiles/dcraw_half.pro \
|
||||
# buildfiles/half_mt.pro \
|
||||
buildfiles/mem_image.pro \
|
||||
buildfiles/raw-identify.pro \
|
||||
buildfiles/simple_dcraw.pro \
|
||||
buildfiles/multirender_test.pro \
|
||||
buildfiles/unprocessed_raw.pro \
|
||||
buildfiles/4channels.pro \
|
||||
buildfiles/rawtextdump.pro \
|
||||
buildfiles/openbayer_sample.pro
|
||||
|
||||
CONFIG-=qt
|
||||
|
123
rtengine/libraw/LibRaw.sln
Normal file
123
rtengine/libraw/LibRaw.sln
Normal file
@@ -0,0 +1,123 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.30011.22
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dcraw_emu", "buildfiles\dcraw_emu.vcxproj", "{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libraw", "buildfiles\libraw.vcxproj", "{A71D2131-F425-381F-8A9A-29D60132A046}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "postprocessing_benchmark", "buildfiles\postprocessing_benchmark.vcxproj", "{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "dcraw_half", "buildfiles\dcraw_half.vcxproj", "{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mem_image", "buildfiles\mem_image.vcxproj", "{BF8A2750-B847-3BA6-9EAF-05F43380F46C}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "raw-identify", "buildfiles\raw-identify.vcxproj", "{7C4F61DB-717E-36C9-B20E-36F8E218AB51}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "simple_dcraw", "buildfiles\simple_dcraw.vcxproj", "{AD1E31D8-A022-3672-982F-C8280A0D6458}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "multirender_test", "buildfiles\multirender_test.vcxproj", "{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "unprocessed_raw", "buildfiles\unprocessed_raw.vcxproj", "{1333E21E-D3B5-3640-9A4D-D8955082B855}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "4channels", "buildfiles\4channels.vcxproj", "{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rawtextdump", "buildfiles\rawtextdump.vcxproj", "{53A1E3F0-8032-348E-B3BF-3E540A45005F}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openbayer_sample", "buildfiles\openbayer_sample.vcxproj", "{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046} = {A71D2131-F425-381F-8A9A-29D60132A046}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|x64 = Debug|x64
|
||||
Release|x64 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}.Debug|x64.Build.0 = Debug|x64
|
||||
{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}.Release|x64.ActiveCfg = Release|x64
|
||||
{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}.Release|x64.Build.0 = Release|x64
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046}.Debug|x64.Build.0 = Debug|x64
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046}.Release|x64.ActiveCfg = Release|x64
|
||||
{A71D2131-F425-381F-8A9A-29D60132A046}.Release|x64.Build.0 = Release|x64
|
||||
{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}.Debug|x64.Build.0 = Debug|x64
|
||||
{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}.Release|x64.ActiveCfg = Release|x64
|
||||
{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}.Release|x64.Build.0 = Release|x64
|
||||
{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}.Debug|x64.Build.0 = Debug|x64
|
||||
{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}.Release|x64.ActiveCfg = Release|x64
|
||||
{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}.Release|x64.Build.0 = Release|x64
|
||||
{BF8A2750-B847-3BA6-9EAF-05F43380F46C}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{BF8A2750-B847-3BA6-9EAF-05F43380F46C}.Debug|x64.Build.0 = Debug|x64
|
||||
{BF8A2750-B847-3BA6-9EAF-05F43380F46C}.Release|x64.ActiveCfg = Release|x64
|
||||
{BF8A2750-B847-3BA6-9EAF-05F43380F46C}.Release|x64.Build.0 = Release|x64
|
||||
{7C4F61DB-717E-36C9-B20E-36F8E218AB51}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{7C4F61DB-717E-36C9-B20E-36F8E218AB51}.Debug|x64.Build.0 = Debug|x64
|
||||
{7C4F61DB-717E-36C9-B20E-36F8E218AB51}.Release|x64.ActiveCfg = Release|x64
|
||||
{7C4F61DB-717E-36C9-B20E-36F8E218AB51}.Release|x64.Build.0 = Release|x64
|
||||
{AD1E31D8-A022-3672-982F-C8280A0D6458}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{AD1E31D8-A022-3672-982F-C8280A0D6458}.Debug|x64.Build.0 = Debug|x64
|
||||
{AD1E31D8-A022-3672-982F-C8280A0D6458}.Release|x64.ActiveCfg = Release|x64
|
||||
{AD1E31D8-A022-3672-982F-C8280A0D6458}.Release|x64.Build.0 = Release|x64
|
||||
{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}.Debug|x64.Build.0 = Debug|x64
|
||||
{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}.Release|x64.ActiveCfg = Release|x64
|
||||
{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}.Release|x64.Build.0 = Release|x64
|
||||
{1333E21E-D3B5-3640-9A4D-D8955082B855}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{1333E21E-D3B5-3640-9A4D-D8955082B855}.Debug|x64.Build.0 = Debug|x64
|
||||
{1333E21E-D3B5-3640-9A4D-D8955082B855}.Release|x64.ActiveCfg = Release|x64
|
||||
{1333E21E-D3B5-3640-9A4D-D8955082B855}.Release|x64.Build.0 = Release|x64
|
||||
{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}.Debug|x64.Build.0 = Debug|x64
|
||||
{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}.Release|x64.ActiveCfg = Release|x64
|
||||
{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}.Release|x64.Build.0 = Release|x64
|
||||
{53A1E3F0-8032-348E-B3BF-3E540A45005F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{53A1E3F0-8032-348E-B3BF-3E540A45005F}.Debug|x64.Build.0 = Debug|x64
|
||||
{53A1E3F0-8032-348E-B3BF-3E540A45005F}.Release|x64.ActiveCfg = Release|x64
|
||||
{53A1E3F0-8032-348E-B3BF-3E540A45005F}.Release|x64.Build.0 = Release|x64
|
||||
{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}.Debug|x64.Build.0 = Debug|x64
|
||||
{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}.Release|x64.ActiveCfg = Release|x64
|
||||
{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}.Release|x64.Build.0 = Release|x64
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {FB319846-66B9-4F61-8285-5EA4D2F09634}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
140
rtengine/libraw/Makefile.am
Normal file
140
rtengine/libraw/Makefile.am
Normal file
@@ -0,0 +1,140 @@
|
||||
# autoconf macros
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
AUTOMAKE_OPTIONS=subdir-objects
|
||||
|
||||
LIBRAW_SHLIB_VER = @LIBRAW_SHLIB_VERSION@
|
||||
LIBRAW_RELEASE_VER = @LIBRAW_RELEASE_VERSION@
|
||||
|
||||
# Headers
|
||||
nobase_include_HEADERS = libraw/libraw.h \
|
||||
libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h \
|
||||
libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h \
|
||||
libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
# Docs
|
||||
doc_DATA = COPYRIGHT \
|
||||
LICENSE.CDDL \
|
||||
LICENSE.LGPL \
|
||||
Changelog.txt
|
||||
|
||||
# pkg-config .pc files
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = libraw.pc libraw_r.pc
|
||||
|
||||
# Libraries
|
||||
lib_LTLIBRARIES = lib/libraw.la lib/libraw_r.la
|
||||
|
||||
lib_libraw_a_CPPFLAGS = -DLIBRAW_NOTHREADS -w
|
||||
lib_libraw_a_SOURCES = src/libraw_c_api.cpp \
|
||||
src/libraw_datastream.cpp src/decoders/canon_600.cpp \
|
||||
src/decoders/crx.cpp src/decoders/decoders_dcraw.cpp \
|
||||
src/decoders/decoders_libraw_dcrdefs.cpp \
|
||||
src/decoders/decoders_libraw.cpp src/decoders/dng.cpp \
|
||||
src/decoders/fp_dng.cpp src/decoders/fuji_compressed.cpp \
|
||||
src/decoders/generic.cpp src/decoders/kodak_decoders.cpp \
|
||||
src/decoders/load_mfbacks.cpp src/decoders/smal.cpp \
|
||||
src/decoders/unpack_thumb.cpp src/decoders/unpack.cpp \
|
||||
src/demosaic/aahd_demosaic.cpp src/demosaic/ahd_demosaic.cpp \
|
||||
src/demosaic/dcb_demosaic.cpp src/demosaic/dht_demosaic.cpp \
|
||||
src/demosaic/misc_demosaic.cpp src/demosaic/xtrans_demosaic.cpp \
|
||||
src/integration/dngsdk_glue.cpp src/integration/rawspeed_glue.cpp\
|
||||
src/metadata/adobepano.cpp src/metadata/canon.cpp \
|
||||
src/metadata/ciff.cpp src/metadata/cr3_parser.cpp \
|
||||
src/metadata/epson.cpp src/metadata/exif_gps.cpp \
|
||||
src/metadata/fuji.cpp src/metadata/identify_tools.cpp \
|
||||
src/metadata/identify.cpp src/metadata/kodak.cpp \
|
||||
src/metadata/leica.cpp src/metadata/makernotes.cpp \
|
||||
src/metadata/mediumformat.cpp src/metadata/minolta.cpp \
|
||||
src/metadata/misc_parsers.cpp src/metadata/nikon.cpp \
|
||||
src/metadata/normalize_model.cpp src/metadata/olympus.cpp \
|
||||
src/metadata/hasselblad_model.cpp \
|
||||
src/metadata/p1.cpp src/metadata/pentax.cpp src/metadata/samsung.cpp \
|
||||
src/metadata/sony.cpp src/metadata/tiff.cpp \
|
||||
src/postprocessing/aspect_ratio.cpp \
|
||||
src/postprocessing/dcraw_process.cpp src/postprocessing/mem_image.cpp \
|
||||
src/postprocessing/postprocessing_aux.cpp \
|
||||
src/postprocessing/postprocessing_utils_dcrdefs.cpp \
|
||||
src/postprocessing/postprocessing_utils.cpp \
|
||||
src/preprocessing/ext_preprocess.cpp src/preprocessing/raw2image.cpp \
|
||||
src/preprocessing/subtract_black.cpp src/tables/cameralist.cpp \
|
||||
src/tables/colorconst.cpp src/tables/colordata.cpp \
|
||||
src/tables/wblists.cpp src/utils/curves.cpp \
|
||||
src/utils/decoder_info.cpp src/utils/init_close_utils.cpp \
|
||||
src/utils/open.cpp src/utils/phaseone_processing.cpp \
|
||||
src/utils/read_utils.cpp src/utils/thumb_utils.cpp \
|
||||
src/utils/utils_dcraw.cpp src/utils/utils_libraw.cpp \
|
||||
src/write/apply_profile.cpp src/write/file_write.cpp \
|
||||
src/write/tiff_writer.cpp src/x3f/x3f_parse_process.cpp \
|
||||
src/x3f/x3f_utils_patched.cpp
|
||||
|
||||
|
||||
lib_libraw_r_a_CXXFLAGS = -pthread -w
|
||||
lib_libraw_r_a_CFLAGS = -pthread -w
|
||||
lib_libraw_la_SOURCES = $(lib_libraw_a_SOURCES)
|
||||
lib_libraw_r_la_SOURCES = $(lib_libraw_a_SOURCES)
|
||||
|
||||
lib_libraw_la_LDFLAGS = -no-undefined -version-info $(LIBRAW_SHLIB_VER)
|
||||
lib_libraw_r_la_LDFLAGS = -no-undefined -version-info $(LIBRAW_SHLIB_VER)
|
||||
|
||||
|
||||
# Sample binaries
|
||||
if EXAMPLES
|
||||
bin_PROGRAMS = bin/raw-identify \
|
||||
bin/unprocessed_raw \
|
||||
bin/4channels \
|
||||
bin/rawtextdump \
|
||||
bin/simple_dcraw \
|
||||
bin/mem_image \
|
||||
bin/dcraw_half \
|
||||
bin/half_mt \
|
||||
bin/multirender_test \
|
||||
bin/postprocessing_benchmark \
|
||||
bin/dcraw_emu
|
||||
endif
|
||||
|
||||
bin_raw_identify_SOURCES = samples/raw-identify.cpp
|
||||
bin_raw_identify_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_raw_identify_LDADD = lib/libraw.la
|
||||
|
||||
bin_unprocessed_raw_SOURCES = samples/unprocessed_raw.cpp
|
||||
bin_unprocessed_raw_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_unprocessed_raw_LDADD = lib/libraw.la
|
||||
|
||||
bin_rawtextdump_SOURCES = samples/rawtextdump.cpp
|
||||
bin_rawtextdump_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_rawtextdump_LDADD = lib/libraw.la
|
||||
|
||||
bin_4channels_SOURCES = samples/4channels.cpp
|
||||
bin_4channels_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_4channels_LDADD = lib/libraw.la
|
||||
|
||||
bin_simple_dcraw_SOURCES = samples/simple_dcraw.cpp
|
||||
bin_simple_dcraw_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_simple_dcraw_LDADD = lib/libraw.la
|
||||
|
||||
bin_multirender_test_SOURCES = samples/multirender_test.cpp
|
||||
bin_multirender_test_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_multirender_test_LDADD = lib/libraw.la
|
||||
|
||||
bin_postprocessing_benchmark_SOURCES = samples/postprocessing_benchmark.cpp
|
||||
bin_postprocessing_benchmark_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_postprocessing_benchmark_LDADD = lib/libraw.la
|
||||
|
||||
bin_mem_image_SOURCES = samples/mem_image_sample.cpp
|
||||
bin_mem_image_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_mem_image_LDADD = lib/libraw.la
|
||||
|
||||
bin_dcraw_half_SOURCES = samples/dcraw_half.c
|
||||
bin_dcraw_half_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_dcraw_half_LDADD = lib/libraw.la
|
||||
|
||||
bin_half_mt_SOURCES = samples/half_mt.c
|
||||
bin_half_mt_CFLAGS = $(lib_libraw_r_a_CXXFLAGS)
|
||||
bin_half_mt_LDADD = lib/libraw_r.la
|
||||
|
||||
bin_dcraw_emu_SOURCES = samples/dcraw_emu.cpp
|
||||
bin_dcraw_emu_CPPFLAGS = $(lib_libraw_a_CPPFLAGS)
|
||||
bin_dcraw_emu_LDADD = lib/libraw.la
|
496
rtengine/libraw/Makefile.devel
Normal file
496
rtengine/libraw/Makefile.devel
Normal file
@@ -0,0 +1,496 @@
|
||||
all: library all_samples
|
||||
|
||||
CC=clang
|
||||
CXX=clang++
|
||||
|
||||
#CC=gcc
|
||||
#CXX=g++
|
||||
|
||||
LDADD+=-lz
|
||||
|
||||
CFLAGS=-DLIBRAW_USE_AUTOPTR
|
||||
CFLAGS+= -g -I. -pedantic -Wno-long-long -Wno-overflow -O3
|
||||
|
||||
# macOS dual arch
|
||||
# CFLAGS+=-arch x86_64 -arch arm64
|
||||
|
||||
# RawSpeed Support
|
||||
# CFLAGS+=-DUSE_RAWSPEED -I../RawSpeed -I/opt/local/include/libxml2
|
||||
# LDADD+=-L../RawSpeed/RawSpeed/release -lrawspeed -L/opt/local/include -ljpeg -lxml2
|
||||
# RAWSPEED_DATA=../RawSpeed/data/cameras.xml
|
||||
|
||||
# RawSpeed3 Support
|
||||
#CFLAGS+=-DUSE_RAWSPEED3 -DUSE_RAWSPEED_BITS -I./RawSpeed3/
|
||||
#LDADD+=-L../RawSpeed-v3/release -lrawspeed3 -L/usr/local/lib -ljpeg -lz
|
||||
|
||||
|
||||
# DNG SDK Support
|
||||
# CFLAGS+=-DUSE_DNGSDK -I../dng_sdk/source
|
||||
# LDADDD+=-L../dng_sdk/release -ldng -ljpeg -lz
|
||||
|
||||
# LCMS support
|
||||
# For lcms2 set -DUSE_LCMS2
|
||||
#CFLAGS+=-DUSE_LCMS2 -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -llcms
|
||||
|
||||
# Jasper support for RedCine
|
||||
#CFLAGS+=-DUSE_JASPER -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -ljasper
|
||||
|
||||
# ZLIB support (FP dng)
|
||||
CFLAGS+=-DUSE_ZLIB
|
||||
LDADD+=-lz
|
||||
|
||||
# JPEG support for DNG and Kodak
|
||||
CFLAGS+=-DUSE_JPEG -I/usr/local/include
|
||||
LDADD+=-L/usr/local/lib -ljpeg
|
||||
|
||||
# LIBJPEG8:
|
||||
CFLAGS+=-DUSE_JPEG8
|
||||
|
||||
CSTFLAGS=$(CFLAGS) -DLIBRAW_NOTHREADS
|
||||
HEADERS=libraw/libraw.h libraw/libraw_alloc.h libraw/libraw_const.h \
|
||||
libraw/libraw_datastream.h libraw/libraw_internal.h \
|
||||
libraw/libraw_types.h libraw/libraw_version.h \
|
||||
internal/dcraw_defs.h internal/dcraw_fileio_defs.h internal/defines.h \
|
||||
internal/dmp_include.h internal/libraw_cameraids.h internal/libraw_cxx_defs.h \
|
||||
internal/libraw_internal_funcs.h internal/var_defines.h internal/x3f_tools.h
|
||||
|
||||
LIB_OBJECTS= object/libraw_datastream.o object/libraw_c_api.o \
|
||||
object/cameralist.o object/fuji_compressed.o \
|
||||
object/crx.o object/fp_dng.o object/decoders_libraw.o \
|
||||
object/unpack.o object/unpack_thumb.o \
|
||||
object/rawspeed_glue.o object/dngsdk_glue.o \
|
||||
object/colorconst.o object/utils_libraw.o object/init_close_utils.o \
|
||||
object/decoder_info.o object/open.o object/phaseone_processing.o \
|
||||
object/thumb_utils.o \
|
||||
object/tiff_writer.o object/subtract_black.o object/postprocessing_utils.o \
|
||||
object/dcraw_process.o object/raw2image.o object/mem_image.o \
|
||||
object/x3f_utils_patched.o object/x3f_parse_process.o \
|
||||
object/read_utils.o object/curves.o object/utils_dcraw.o \
|
||||
object/colordata.o \
|
||||
object/canon_600.o object/decoders_dcraw.o \
|
||||
object/decoders_libraw_dcrdefs.o object/generic.o \
|
||||
object/kodak_decoders.o object/dng.o object/smal.o \
|
||||
object/load_mfbacks.o \
|
||||
object/sony.o object/nikon.o object/samsung.o object/cr3_parser.o \
|
||||
object/canon.o object/epson.o object/olympus.o object/leica.o \
|
||||
object/fuji.o object/adobepano.o object/pentax.o object/p1.o \
|
||||
object/makernotes.o object/exif_gps.o object/kodak.o \
|
||||
object/tiff.o object/ciff.o object/mediumformat.o object/minolta.o \
|
||||
object/identify_tools.o \
|
||||
object/hasselblad_model.o object/normalize_model.o object/identify.o \
|
||||
object/misc_parsers.o object/wblists.o \
|
||||
object/postprocessing_aux.o object/postprocessing_utils_dcrdefs.o \
|
||||
object/aspect_ratio.o \
|
||||
object/misc_demosaic.o object/xtrans_demosaic.o object/ahd_demosaic.o \
|
||||
object/dht_demosaic.o object/aahd_demosaic.o object/dcb_demosaic.o \
|
||||
object/file_write.o \
|
||||
object/ext_preprocess.o object/apply_profile.o
|
||||
|
||||
|
||||
LIB_MT_OBJECTS= object/libraw_datastream.mt.o object/libraw_c_api.mt.o \
|
||||
object/cameralist.mt.o object/fuji_compressed.mt.o \
|
||||
object/crx.mt.o object/fp_dng.mt.o object/decoders_libraw.mt.o \
|
||||
object/unpack.mt.o object/unpack_thumb.mt.o \
|
||||
object/rawspeed_glue.mt.o object/dngsdk_glue.mt.o \
|
||||
object/colorconst.mt.o object/utils_libraw.mt.o \
|
||||
object/init_close_utils.mt.o \
|
||||
object/decoder_info.mt.o object/open.mt.o object/phaseone_processing.mt.o \
|
||||
object/thumb_utils.mt.o \
|
||||
object/tiff_writer.mt.o object/subtract_black.mt.o \
|
||||
object/postprocessing_utils.mt.o object/dcraw_process.mt.o \
|
||||
object/raw2image.mt.o object/mem_image.mt.o \
|
||||
object/x3f_utils_patched.mt.o object/x3f_parse_process.mt.o \
|
||||
object/read_utils.mt.o object/curves.mt.o object/utils_dcraw.mt.o \
|
||||
object/colordata.mt.o \
|
||||
object/canon_600.mt.o object/decoders_dcraw.mt.o \
|
||||
object/decoders_libraw_dcrdefs.mt.o object/generic.mt.o \
|
||||
object/kodak_decoders.mt.o object/dng.mt.o object/smal.mt.o \
|
||||
object/load_mfbacks.mt.o \
|
||||
object/sony.mt.o object/nikon.mt.o object/samsung.mt.o \
|
||||
object/cr3_parser.mt.o object/canon.mt.o object/epson.mt.o \
|
||||
object/olympus.mt.o object/leica.mt.o \
|
||||
object/fuji.mt.o object/adobepano.mt.o object/pentax.mt.o object/p1.mt.o \
|
||||
object/makernotes.mt.o object/exif_gps.mt.o object/kodak.mt.o \
|
||||
object/tiff.mt.o object/ciff.mt.o object/mediumformat.mt.o \
|
||||
object/minolta.mt.o \
|
||||
object/identify_tools.mt.o \
|
||||
object/hasselblad_model.mt.o object/normalize_model.mt.o object/identify.mt.o \
|
||||
object/misc_parsers.mt.o object/wblists.mt.o \
|
||||
object/postprocessing_aux.mt.o object/postprocessing_utils_dcrdefs.mt.o \
|
||||
object/aspect_ratio.mt.o \
|
||||
object/misc_demosaic.mt.o object/xtrans_demosaic.mt.o \
|
||||
object/ahd_demosaic.mt.o object/dht_demosaic.mt.o \
|
||||
object/aahd_demosaic.mt.o object/dcb_demosaic.mt.o \
|
||||
object/file_write.mt.o \
|
||||
object/ext_preprocess.mt.o object/apply_profile.mt.o
|
||||
|
||||
|
||||
LR_INCLUDES=libraw/libraw.h libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
library: lib/libraw.a lib/libraw_r.a
|
||||
|
||||
all_samples: bin/raw-identify bin/simple_dcraw bin/dcraw_emu \
|
||||
bin/dcraw_half bin/half_mt bin/mem_image \
|
||||
bin/unprocessed_raw bin/4channels bin/multirender_test \
|
||||
bin/postprocessing_benchmark bin/rawtextdump
|
||||
|
||||
## RawSpeed xml file
|
||||
|
||||
RawSpeed/rawspeed_xmldata.cpp: ${RAWSPEED_DATA}
|
||||
./rsxml2c.sh ${RAWSPEED_DATA} > RawSpeed/rawspeed_xmldata.cpp
|
||||
|
||||
## Samples ##
|
||||
bin/raw-identify: lib/libraw.a samples/raw-identify.cpp $(HEADERS)
|
||||
$(CXX) ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/simple_dcraw: lib/libraw.a samples/simple_dcraw.cpp $(HEADERS)
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/simple_dcraw samples/simple_dcraw.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/multirender_test: lib/libraw.a samples/multirender_test.cpp $(HEADERS)
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/multirender_test samples/multirender_test.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/postprocessing_benchmark: lib/libraw.a samples/postprocessing_benchmark.cpp $(HEADERS)
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/postprocessing_benchmark samples/postprocessing_benchmark.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/unprocessed_raw: lib/libraw.a samples/unprocessed_raw.cpp $(HEADERS)
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/unprocessed_raw samples/unprocessed_raw.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/rawtextdump: lib/libraw.a samples/rawtextdump.cpp $(HEADERS)
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/rawtextdump samples/rawtextdump.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/4channels: lib/libraw.a samples/4channels.cpp $(HEADERS)
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/4channels samples/4channels.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/mem_image: lib/libraw.a samples/mem_image_sample.cpp $(HEADERS)
|
||||
$(CXX) ${CFLAGS} -o bin/mem_image samples/mem_image_sample.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/dcraw_half: lib/libraw.a samples/dcraw_half.c $(HEADERS)
|
||||
$(CC) ${CFLAGS} -o bin/dcraw_half samples/dcraw_half.c -L./lib -lraw -lm -lstdc++ ${LDADD}
|
||||
|
||||
bin/half_mt: lib/libraw_r.a samples/half_mt.c $(HEADERS)
|
||||
$(CC) -pthread ${CFLAGS} -o bin/half_mt samples/half_mt.c -L./lib -lraw_r -lm -lstdc++ ${LDADD}
|
||||
|
||||
bin/dcraw_emu: lib/libraw.a samples/dcraw_emu.cpp $(HEADERS)
|
||||
$(CXX) ${CFLAGS} -o bin/dcraw_emu samples/dcraw_emu.cpp -L./lib -lraw_r -lm ${LDADD}
|
||||
|
||||
lib/libraw.a: ${LIB_OBJECTS}
|
||||
rm -f lib/libraw.a
|
||||
ar crv lib/libraw.a ${LIB_OBJECTS}
|
||||
ranlib lib/libraw.a
|
||||
|
||||
lib/libraw_r.a: ${LIB_MT_OBJECTS}
|
||||
rm -f lib/libraw_r.a
|
||||
ar crv lib/libraw_r.a ${LIB_MT_OBJECTS}
|
||||
ranlib lib/libraw_r.a
|
||||
|
||||
clean:
|
||||
rm -fr bin/*.dSYM
|
||||
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*.o object/*.mto dcraw/*~ doc/*~ bin/*~ src/*/*~
|
||||
|
||||
## script-created rules
|
||||
object/libraw_c_api.o: src/libraw_c_api.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
|
||||
object/libraw_c_api.mt.o: src/libraw_c_api.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/libraw_c_api.mt.o src/libraw_c_api.cpp
|
||||
|
||||
object/libraw_datastream.o: src/libraw_datastream.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_datastream.o src/libraw_datastream.cpp
|
||||
object/libraw_datastream.mt.o: src/libraw_datastream.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/libraw_datastream.mt.o src/libraw_datastream.cpp
|
||||
object/canon_600.o: src/decoders/canon_600.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon_600.o src/decoders/canon_600.cpp
|
||||
object/canon_600.mt.o: src/decoders/canon_600.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/canon_600.mt.o src/decoders/canon_600.cpp
|
||||
object/crx.o: src/decoders/crx.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/crx.o src/decoders/crx.cpp
|
||||
object/crx.mt.o: src/decoders/crx.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/crx.mt.o src/decoders/crx.cpp
|
||||
object/decoders_dcraw.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_dcraw.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_dcraw.mt.o: src/decoders/decoders_dcraw.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_dcraw.mt.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_libraw_dcrdefs.o: src/decoders/decoders_libraw_dcrdefs.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw_dcrdefs.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw_dcrdefs.mt.o: src/decoders/decoders_libraw_dcrdefs.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_libraw_dcrdefs.mt.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw.o: src/decoders/decoders_libraw.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw.o src/decoders/decoders_libraw.cpp
|
||||
object/decoders_libraw.mt.o: src/decoders/decoders_libraw.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_libraw.mt.o src/decoders/decoders_libraw.cpp
|
||||
object/dng.o: src/decoders/dng.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dng.o src/decoders/dng.cpp
|
||||
object/dng.mt.o: src/decoders/dng.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/dng.mt.o src/decoders/dng.cpp
|
||||
object/fp_dng.o: src/decoders/fp_dng.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fp_dng.o src/decoders/fp_dng.cpp
|
||||
object/fp_dng.mt.o: src/decoders/fp_dng.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/fp_dng.mt.o src/decoders/fp_dng.cpp
|
||||
object/fuji_compressed.o: src/decoders/fuji_compressed.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji_compressed.o src/decoders/fuji_compressed.cpp
|
||||
object/fuji_compressed.mt.o: src/decoders/fuji_compressed.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/fuji_compressed.mt.o src/decoders/fuji_compressed.cpp
|
||||
object/generic.o: src/decoders/generic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/generic.o src/decoders/generic.cpp
|
||||
object/generic.mt.o: src/decoders/generic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/generic.mt.o src/decoders/generic.cpp
|
||||
object/kodak_decoders.o: src/decoders/kodak_decoders.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak_decoders.o src/decoders/kodak_decoders.cpp
|
||||
object/kodak_decoders.mt.o: src/decoders/kodak_decoders.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/kodak_decoders.mt.o src/decoders/kodak_decoders.cpp
|
||||
object/load_mfbacks.o: src/decoders/load_mfbacks.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/load_mfbacks.o src/decoders/load_mfbacks.cpp
|
||||
object/load_mfbacks.mt.o: src/decoders/load_mfbacks.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/load_mfbacks.mt.o src/decoders/load_mfbacks.cpp
|
||||
object/smal.o: src/decoders/smal.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/smal.o src/decoders/smal.cpp
|
||||
object/smal.mt.o: src/decoders/smal.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/smal.mt.o src/decoders/smal.cpp
|
||||
object/unpack_thumb.o: src/decoders/unpack_thumb.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack_thumb.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack_thumb.mt.o: src/decoders/unpack_thumb.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/unpack_thumb.mt.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack.o: src/decoders/unpack.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack.o src/decoders/unpack.cpp
|
||||
object/unpack.mt.o: src/decoders/unpack.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/unpack.mt.o src/decoders/unpack.cpp
|
||||
object/aahd_demosaic.o: src/demosaic/aahd_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aahd_demosaic.o src/demosaic/aahd_demosaic.cpp
|
||||
object/aahd_demosaic.mt.o: src/demosaic/aahd_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/aahd_demosaic.mt.o src/demosaic/aahd_demosaic.cpp
|
||||
object/ahd_demosaic.o: src/demosaic/ahd_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ahd_demosaic.o src/demosaic/ahd_demosaic.cpp
|
||||
object/ahd_demosaic.mt.o: src/demosaic/ahd_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/ahd_demosaic.mt.o src/demosaic/ahd_demosaic.cpp
|
||||
object/dcb_demosaic.o: src/demosaic/dcb_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcb_demosaic.o src/demosaic/dcb_demosaic.cpp
|
||||
object/dcb_demosaic.mt.o: src/demosaic/dcb_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/dcb_demosaic.mt.o src/demosaic/dcb_demosaic.cpp
|
||||
object/dht_demosaic.o: src/demosaic/dht_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dht_demosaic.o src/demosaic/dht_demosaic.cpp
|
||||
object/dht_demosaic.mt.o: src/demosaic/dht_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/dht_demosaic.mt.o src/demosaic/dht_demosaic.cpp
|
||||
object/misc_demosaic.o: src/demosaic/misc_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_demosaic.o src/demosaic/misc_demosaic.cpp
|
||||
object/misc_demosaic.mt.o: src/demosaic/misc_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/misc_demosaic.mt.o src/demosaic/misc_demosaic.cpp
|
||||
object/xtrans_demosaic.o: src/demosaic/xtrans_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/xtrans_demosaic.o src/demosaic/xtrans_demosaic.cpp
|
||||
object/xtrans_demosaic.mt.o: src/demosaic/xtrans_demosaic.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/xtrans_demosaic.mt.o src/demosaic/xtrans_demosaic.cpp
|
||||
object/dngsdk_glue.o: src/integration/dngsdk_glue.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dngsdk_glue.o src/integration/dngsdk_glue.cpp
|
||||
object/dngsdk_glue.mt.o: src/integration/dngsdk_glue.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/dngsdk_glue.mt.o src/integration/dngsdk_glue.cpp
|
||||
object/rawspeed_glue.o: src/integration/rawspeed_glue.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/rawspeed_glue.o src/integration/rawspeed_glue.cpp
|
||||
object/rawspeed_glue.mt.o: src/integration/rawspeed_glue.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/rawspeed_glue.mt.o src/integration/rawspeed_glue.cpp
|
||||
object/adobepano.o: src/metadata/adobepano.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/adobepano.o src/metadata/adobepano.cpp
|
||||
object/adobepano.mt.o: src/metadata/adobepano.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/adobepano.mt.o src/metadata/adobepano.cpp
|
||||
object/canon.o: src/metadata/canon.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon.o src/metadata/canon.cpp
|
||||
object/canon.mt.o: src/metadata/canon.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/canon.mt.o src/metadata/canon.cpp
|
||||
object/ciff.o: src/metadata/ciff.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ciff.o src/metadata/ciff.cpp
|
||||
object/ciff.mt.o: src/metadata/ciff.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/ciff.mt.o src/metadata/ciff.cpp
|
||||
object/cr3_parser.o: src/metadata/cr3_parser.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cr3_parser.o src/metadata/cr3_parser.cpp
|
||||
object/cr3_parser.mt.o: src/metadata/cr3_parser.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/cr3_parser.mt.o src/metadata/cr3_parser.cpp
|
||||
object/epson.o: src/metadata/epson.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/epson.o src/metadata/epson.cpp
|
||||
object/epson.mt.o: src/metadata/epson.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/epson.mt.o src/metadata/epson.cpp
|
||||
object/exif_gps.o: src/metadata/exif_gps.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/exif_gps.o src/metadata/exif_gps.cpp
|
||||
object/exif_gps.mt.o: src/metadata/exif_gps.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/exif_gps.mt.o src/metadata/exif_gps.cpp
|
||||
object/fuji.o: src/metadata/fuji.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji.o src/metadata/fuji.cpp
|
||||
object/fuji.mt.o: src/metadata/fuji.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/fuji.mt.o src/metadata/fuji.cpp
|
||||
object/identify_tools.o: src/metadata/identify_tools.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify_tools.o src/metadata/identify_tools.cpp
|
||||
object/identify_tools.mt.o: src/metadata/identify_tools.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/identify_tools.mt.o src/metadata/identify_tools.cpp
|
||||
object/identify.o: src/metadata/identify.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify.o src/metadata/identify.cpp
|
||||
object/identify.mt.o: src/metadata/identify.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/identify.mt.o src/metadata/identify.cpp
|
||||
object/kodak.o: src/metadata/kodak.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak.o src/metadata/kodak.cpp
|
||||
object/kodak.mt.o: src/metadata/kodak.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/kodak.mt.o src/metadata/kodak.cpp
|
||||
object/leica.o: src/metadata/leica.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/leica.o src/metadata/leica.cpp
|
||||
object/leica.mt.o: src/metadata/leica.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/leica.mt.o src/metadata/leica.cpp
|
||||
object/makernotes.o: src/metadata/makernotes.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/makernotes.o src/metadata/makernotes.cpp
|
||||
object/makernotes.mt.o: src/metadata/makernotes.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/makernotes.mt.o src/metadata/makernotes.cpp
|
||||
object/mediumformat.o: src/metadata/mediumformat.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mediumformat.o src/metadata/mediumformat.cpp
|
||||
object/mediumformat.mt.o: src/metadata/mediumformat.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/mediumformat.mt.o src/metadata/mediumformat.cpp
|
||||
object/minolta.o: src/metadata/minolta.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/minolta.o src/metadata/minolta.cpp
|
||||
object/minolta.mt.o: src/metadata/minolta.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/minolta.mt.o src/metadata/minolta.cpp
|
||||
object/misc_parsers.o: src/metadata/misc_parsers.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_parsers.o src/metadata/misc_parsers.cpp
|
||||
object/misc_parsers.mt.o: src/metadata/misc_parsers.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/misc_parsers.mt.o src/metadata/misc_parsers.cpp
|
||||
object/nikon.o: src/metadata/nikon.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/nikon.o src/metadata/nikon.cpp
|
||||
object/nikon.mt.o: src/metadata/nikon.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/nikon.mt.o src/metadata/nikon.cpp
|
||||
object/hasselblad_model.o: src/metadata/hasselblad_model.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/hasselblad_model.o src/metadata/hasselblad_model.cpp
|
||||
object/hasselblad_model.mt.o: src/metadata/hasselblad_model.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/hasselblad_model.mt.o src/metadata/hasselblad_model.cpp
|
||||
object/normalize_model.o: src/metadata/normalize_model.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/normalize_model.o src/metadata/normalize_model.cpp
|
||||
object/normalize_model.mt.o: src/metadata/normalize_model.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/normalize_model.mt.o src/metadata/normalize_model.cpp
|
||||
object/olympus.o: src/metadata/olympus.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/olympus.o src/metadata/olympus.cpp
|
||||
object/olympus.mt.o: src/metadata/olympus.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/olympus.mt.o src/metadata/olympus.cpp
|
||||
object/p1.o: src/metadata/p1.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/p1.o src/metadata/p1.cpp
|
||||
object/p1.mt.o: src/metadata/p1.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/p1.mt.o src/metadata/p1.cpp
|
||||
object/pentax.o: src/metadata/pentax.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/pentax.o src/metadata/pentax.cpp
|
||||
object/pentax.mt.o: src/metadata/pentax.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/pentax.mt.o src/metadata/pentax.cpp
|
||||
object/samsung.o: src/metadata/samsung.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/samsung.o src/metadata/samsung.cpp
|
||||
object/samsung.mt.o: src/metadata/samsung.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/samsung.mt.o src/metadata/samsung.cpp
|
||||
object/sony.o: src/metadata/sony.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/sony.o src/metadata/sony.cpp
|
||||
object/sony.mt.o: src/metadata/sony.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/sony.mt.o src/metadata/sony.cpp
|
||||
object/tiff.o: src/metadata/tiff.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff.o src/metadata/tiff.cpp
|
||||
object/tiff.mt.o: src/metadata/tiff.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/tiff.mt.o src/metadata/tiff.cpp
|
||||
object/aspect_ratio.o: src/postprocessing/aspect_ratio.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aspect_ratio.o src/postprocessing/aspect_ratio.cpp
|
||||
object/aspect_ratio.mt.o: src/postprocessing/aspect_ratio.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/aspect_ratio.mt.o src/postprocessing/aspect_ratio.cpp
|
||||
object/dcraw_process.o: src/postprocessing/dcraw_process.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcraw_process.o src/postprocessing/dcraw_process.cpp
|
||||
object/dcraw_process.mt.o: src/postprocessing/dcraw_process.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/dcraw_process.mt.o src/postprocessing/dcraw_process.cpp
|
||||
object/mem_image.o: src/postprocessing/mem_image.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mem_image.o src/postprocessing/mem_image.cpp
|
||||
object/mem_image.mt.o: src/postprocessing/mem_image.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/mem_image.mt.o src/postprocessing/mem_image.cpp
|
||||
object/postprocessing_aux.o: src/postprocessing/postprocessing_aux.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_aux.o src/postprocessing/postprocessing_aux.cpp
|
||||
object/postprocessing_aux.mt.o: src/postprocessing/postprocessing_aux.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_aux.mt.o src/postprocessing/postprocessing_aux.cpp
|
||||
object/postprocessing_utils_dcrdefs.o: src/postprocessing/postprocessing_utils_dcrdefs.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils_dcrdefs.o src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
object/postprocessing_utils_dcrdefs.mt.o: src/postprocessing/postprocessing_utils_dcrdefs.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_utils_dcrdefs.mt.o src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
object/postprocessing_utils.o: src/postprocessing/postprocessing_utils.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils.o src/postprocessing/postprocessing_utils.cpp
|
||||
object/postprocessing_utils.mt.o: src/postprocessing/postprocessing_utils.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_utils.mt.o src/postprocessing/postprocessing_utils.cpp
|
||||
object/raw2image.o: src/preprocessing/raw2image.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/raw2image.o src/preprocessing/raw2image.cpp
|
||||
object/raw2image.mt.o: src/preprocessing/raw2image.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/raw2image.mt.o src/preprocessing/raw2image.cpp
|
||||
object/ext_preprocess.o: src/preprocessing/ext_preprocess.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ext_preprocess.o src/preprocessing/ext_preprocess.cpp
|
||||
object/ext_preprocess.mt.o: src/preprocessing/ext_preprocess.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/ext_preprocess.mt.o src/preprocessing/ext_preprocess.cpp
|
||||
object/subtract_black.o: src/preprocessing/subtract_black.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/subtract_black.o src/preprocessing/subtract_black.cpp
|
||||
object/subtract_black.mt.o: src/preprocessing/subtract_black.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/subtract_black.mt.o src/preprocessing/subtract_black.cpp
|
||||
object/cameralist.o: src/tables/cameralist.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cameralist.o src/tables/cameralist.cpp
|
||||
object/cameralist.mt.o: src/tables/cameralist.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/cameralist.mt.o src/tables/cameralist.cpp
|
||||
object/colorconst.o: src/tables/colorconst.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colorconst.o src/tables/colorconst.cpp
|
||||
object/colorconst.mt.o: src/tables/colorconst.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/colorconst.mt.o src/tables/colorconst.cpp
|
||||
object/colordata.o: src/tables/colordata.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colordata.o src/tables/colordata.cpp
|
||||
object/colordata.mt.o: src/tables/colordata.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/colordata.mt.o src/tables/colordata.cpp
|
||||
object/wblists.o: src/tables/wblists.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/wblists.o src/tables/wblists.cpp
|
||||
object/wblists.mt.o: src/tables/wblists.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/wblists.mt.o src/tables/wblists.cpp
|
||||
object/curves.o: src/utils/curves.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/curves.o src/utils/curves.cpp
|
||||
object/curves.mt.o: src/utils/curves.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/curves.mt.o src/utils/curves.cpp
|
||||
object/decoder_info.o: src/utils/decoder_info.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoder_info.o src/utils/decoder_info.cpp
|
||||
object/decoder_info.mt.o: src/utils/decoder_info.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/decoder_info.mt.o src/utils/decoder_info.cpp
|
||||
object/init_close_utils.o: src/utils/init_close_utils.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/init_close_utils.o src/utils/init_close_utils.cpp
|
||||
object/init_close_utils.mt.o: src/utils/init_close_utils.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/init_close_utils.mt.o src/utils/init_close_utils.cpp
|
||||
object/open.o: src/utils/open.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/open.o src/utils/open.cpp
|
||||
object/open.mt.o: src/utils/open.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/open.mt.o src/utils/open.cpp
|
||||
object/phaseone_processing.o: src/utils/phaseone_processing.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/phaseone_processing.o src/utils/phaseone_processing.cpp
|
||||
object/phaseone_processing.mt.o: src/utils/phaseone_processing.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/phaseone_processing.mt.o src/utils/phaseone_processing.cpp
|
||||
object/read_utils.o: src/utils/read_utils.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/read_utils.o src/utils/read_utils.cpp
|
||||
object/read_utils.mt.o: src/utils/read_utils.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/read_utils.mt.o src/utils/read_utils.cpp
|
||||
object/thumb_utils.o: src/utils/thumb_utils.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/thumb_utils.o src/utils/thumb_utils.cpp
|
||||
object/thumb_utils.mt.o: src/utils/thumb_utils.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/thumb_utils.mt.o src/utils/thumb_utils.cpp
|
||||
object/utils_dcraw.o: src/utils/utils_dcraw.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_dcraw.o src/utils/utils_dcraw.cpp
|
||||
object/utils_dcraw.mt.o: src/utils/utils_dcraw.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/utils_dcraw.mt.o src/utils/utils_dcraw.cpp
|
||||
object/utils_libraw.o: src/utils/utils_libraw.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_libraw.o src/utils/utils_libraw.cpp
|
||||
object/utils_libraw.mt.o: src/utils/utils_libraw.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/utils_libraw.mt.o src/utils/utils_libraw.cpp
|
||||
object/apply_profile.o: src/write/apply_profile.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/apply_profile.o src/write/apply_profile.cpp
|
||||
object/apply_profile.mt.o: src/write/apply_profile.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/apply_profile.mt.o src/write/apply_profile.cpp
|
||||
object/file_write.o: src/write/file_write.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/file_write.o src/write/file_write.cpp
|
||||
object/file_write.mt.o: src/write/file_write.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/file_write.mt.o src/write/file_write.cpp
|
||||
object/tiff_writer.o: src/write/tiff_writer.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff_writer.o src/write/tiff_writer.cpp
|
||||
object/tiff_writer.mt.o: src/write/tiff_writer.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/tiff_writer.mt.o src/write/tiff_writer.cpp
|
||||
object/x3f_parse_process.o: src/x3f/x3f_parse_process.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_parse_process.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_parse_process.mt.o: src/x3f/x3f_parse_process.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/x3f_parse_process.mt.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_utils_patched.o: src/x3f/x3f_utils_patched.cpp $(HEADERS)
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_utils_patched.o src/x3f/x3f_utils_patched.cpp
|
||||
object/x3f_utils_patched.mt.o: src/x3f/x3f_utils_patched.cpp $(HEADERS)
|
||||
${CXX} -c ${CFLAGS} -o object/x3f_utils_patched.mt.o src/x3f/x3f_utils_patched.cpp
|
230
rtengine/libraw/Makefile.devel.nopp
Normal file
230
rtengine/libraw/Makefile.devel.nopp
Normal file
@@ -0,0 +1,230 @@
|
||||
all: library all_samples
|
||||
|
||||
CC=clang
|
||||
CXX=clang++
|
||||
|
||||
#CC=gcc
|
||||
#CXX=g++
|
||||
|
||||
LDADD+=-lz
|
||||
|
||||
CFLAGS=-DLIBRAW_USE_AUTOPTR
|
||||
CFLAGS+= -g -I. -pedantic -Wno-long-long -Wno-overflow -O3
|
||||
|
||||
# RawSpeed Support
|
||||
# CFLAGS+=-DUSE_RAWSPEED -I../RawSpeed -I/opt/local/include/libxml2
|
||||
# LDADD+=-L../RawSpeed/RawSpeed/release -lrawspeed -L/opt/local/include -ljpeg -lxml2
|
||||
# RAWSPEED_DATA=../RawSpeed/data/cameras.xml
|
||||
|
||||
# DNG SDK Support
|
||||
# CFLAGS+=-DUSE_DNGSDK -I../dng_sdk/source
|
||||
# LDADDD+=-L../dng_sdk/release -ldng -ljpeg -lz
|
||||
|
||||
# LCMS support
|
||||
# For lcms2 set -DUSE_LCMS2
|
||||
#CFLAGS+=-DUSE_LCMS2 -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -llcms
|
||||
|
||||
# Jasper support for RedCine
|
||||
#CFLAGS+=-DUSE_JASPER -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -ljasper
|
||||
|
||||
# JPEG support for DNG and Kodak
|
||||
CFLAGS+=-DUSE_JPEG -I/usr/local/include
|
||||
LDADD+=-L/usr/local/lib -ljpeg
|
||||
|
||||
# LIBJPEG8:
|
||||
CFLAGS+=-DUSE_JPEG8
|
||||
|
||||
CSTFLAGS=$(CFLAGS) -DLIBRAW_NOTHREADS
|
||||
|
||||
LIB_OBJECTS= object/libraw_datastream.o \
|
||||
object/cameralist.o object/fuji_compressed.o \
|
||||
object/crx.o object/fp_dng.o object/decoders_libraw.o \
|
||||
object/unpack.o object/unpack_thumb.o \
|
||||
object/rawspeed_glue.o object/dngsdk_glue.o \
|
||||
object/colorconst.o object/utils_libraw.o object/init_close_utils.o \
|
||||
object/decoder_info.o object/open.o object/phaseone_processing.o \
|
||||
object/thumb_utils.o \
|
||||
object/tiff_writer.o object/subtract_black.o \
|
||||
object/raw2image.o \
|
||||
object/x3f_utils_patched.o object/x3f_parse_process.o \
|
||||
object/read_utils.o object/curves.o object/utils_dcraw.o \
|
||||
object/colordata.o \
|
||||
object/canon_600.o object/decoders_dcraw.o \
|
||||
object/decoders_libraw_dcrdefs.o object/generic.o \
|
||||
object/kodak_decoders.o object/dng.o object/smal.o \
|
||||
object/load_mfbacks.o \
|
||||
object/sony.o object/nikon.o object/samsung.o object/cr3_parser.o \
|
||||
object/canon.o object/epson.o object/olympus.o object/leica.o \
|
||||
object/fuji.o object/adobepano.o object/pentax.o object/p1.o \
|
||||
object/makernotes.o object/exif_gps.o object/kodak.o \
|
||||
object/tiff.o object/ciff.o object/mediumformat.o object/minolta.o \
|
||||
object/identify_tools.o \
|
||||
object/hasselblad_model.o object/normalize_model.o object/identify.o \
|
||||
object/misc_parsers.o object/wblists.o \
|
||||
object/file_write.o \
|
||||
object/ext_preprocess.o \
|
||||
object/postprocessing_ph.o \
|
||||
|
||||
|
||||
|
||||
LR_INCLUDES=libraw/libraw.h libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
LRLIB=lib/libraw_nopp.a
|
||||
|
||||
library: $(LRLIB)
|
||||
|
||||
all_samples: bin/raw-identify bin/unprocessed_raw bin/4channels
|
||||
|
||||
## Samples ##
|
||||
bin/raw-identify: $(LRLIB) samples/raw-identify.cpp
|
||||
$(CXX) ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw_nopp -lm ${LDADD}
|
||||
|
||||
bin/unprocessed_raw: $(LRLIB) samples/unprocessed_raw.cpp
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/unprocessed_raw samples/unprocessed_raw.cpp -L./lib -lraw_nopp -lm ${LDADD}
|
||||
|
||||
bin/4channels: $(LRLIB) samples/4channels.cpp
|
||||
$(CXX) -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/4channels samples/4channels.cpp -L./lib -lraw_nopp -lm ${LDADD}
|
||||
|
||||
$(LRLIB): ${LIB_OBJECTS}
|
||||
rm -f $(LRLIB)
|
||||
ar crv $(LRLIB) ${LIB_OBJECTS}
|
||||
ranlib $(LRLIB)
|
||||
|
||||
clean:
|
||||
rm -fr bin/*.dSYM
|
||||
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*.o dcraw/*~ doc/*~ bin/*~ src/*/*~
|
||||
|
||||
## script-created rules
|
||||
object/libraw_c_api.o: src/libraw_c_api.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
|
||||
object/libraw_datastream.o: src/libraw_datastream.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_datastream.o src/libraw_datastream.cpp
|
||||
object/canon_600.o: src/decoders/canon_600.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon_600.o src/decoders/canon_600.cpp
|
||||
object/crx.o: src/decoders/crx.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/crx.o src/decoders/crx.cpp
|
||||
object/decoders_dcraw.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_dcraw.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_libraw_dcrdefs.o: src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw_dcrdefs.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw.o: src/decoders/decoders_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw.o src/decoders/decoders_libraw.cpp
|
||||
object/dng.o: src/decoders/dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dng.o src/decoders/dng.cpp
|
||||
object/fp_dng.o: src/decoders/fp_dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fp_dng.o src/decoders/fp_dng.cpp
|
||||
object/fuji_compressed.o: src/decoders/fuji_compressed.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji_compressed.o src/decoders/fuji_compressed.cpp
|
||||
object/generic.o: src/decoders/generic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/generic.o src/decoders/generic.cpp
|
||||
object/kodak_decoders.o: src/decoders/kodak_decoders.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak_decoders.o src/decoders/kodak_decoders.cpp
|
||||
object/load_mfbacks.o: src/decoders/load_mfbacks.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/load_mfbacks.o src/decoders/load_mfbacks.cpp
|
||||
object/smal.o: src/decoders/smal.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/smal.o src/decoders/smal.cpp
|
||||
object/unpack_thumb.o: src/decoders/unpack_thumb.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack_thumb.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack.o: src/decoders/unpack.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack.o src/decoders/unpack.cpp
|
||||
object/dngsdk_glue.o: src/integration/dngsdk_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dngsdk_glue.o src/integration/dngsdk_glue.cpp
|
||||
object/rawspeed_glue.o: src/integration/rawspeed_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/rawspeed_glue.o src/integration/rawspeed_glue.cpp
|
||||
object/adobepano.o: src/metadata/adobepano.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/adobepano.o src/metadata/adobepano.cpp
|
||||
object/canon.o: src/metadata/canon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon.o src/metadata/canon.cpp
|
||||
object/ciff.o: src/metadata/ciff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ciff.o src/metadata/ciff.cpp
|
||||
object/cr3_parser.o: src/metadata/cr3_parser.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cr3_parser.o src/metadata/cr3_parser.cpp
|
||||
object/epson.o: src/metadata/epson.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/epson.o src/metadata/epson.cpp
|
||||
object/exif_gps.o: src/metadata/exif_gps.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/exif_gps.o src/metadata/exif_gps.cpp
|
||||
object/fuji.o: src/metadata/fuji.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji.o src/metadata/fuji.cpp
|
||||
object/identify_tools.o: src/metadata/identify_tools.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify_tools.o src/metadata/identify_tools.cpp
|
||||
object/identify.o: src/metadata/identify.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify.o src/metadata/identify.cpp
|
||||
object/kodak.o: src/metadata/kodak.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak.o src/metadata/kodak.cpp
|
||||
object/leica.o: src/metadata/leica.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/leica.o src/metadata/leica.cpp
|
||||
object/makernotes.o: src/metadata/makernotes.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/makernotes.o src/metadata/makernotes.cpp
|
||||
object/mediumformat.o: src/metadata/mediumformat.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mediumformat.o src/metadata/mediumformat.cpp
|
||||
object/minolta.o: src/metadata/minolta.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/minolta.o src/metadata/minolta.cpp
|
||||
object/misc_parsers.o: src/metadata/misc_parsers.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_parsers.o src/metadata/misc_parsers.cpp
|
||||
object/nikon.o: src/metadata/nikon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/nikon.o src/metadata/nikon.cpp
|
||||
object/hasselblad_model.o: src/metadata/hasselblad_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/hasselblad_model.o src/metadata/hasselblad_model.cpp
|
||||
object/normalize_model.o: src/metadata/normalize_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/normalize_model.o src/metadata/normalize_model.cpp
|
||||
object/olympus.o: src/metadata/olympus.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/olympus.o src/metadata/olympus.cpp
|
||||
object/p1.o: src/metadata/p1.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/p1.o src/metadata/p1.cpp
|
||||
object/pentax.o: src/metadata/pentax.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/pentax.o src/metadata/pentax.cpp
|
||||
object/samsung.o: src/metadata/samsung.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/samsung.o src/metadata/samsung.cpp
|
||||
object/sony.o: src/metadata/sony.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/sony.o src/metadata/sony.cpp
|
||||
object/tiff.o: src/metadata/tiff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff.o src/metadata/tiff.cpp
|
||||
|
||||
object/postprocessing_ph.o: src/postprocessing/postprocessing_ph.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_ph.o src/postprocessing/postprocessing_ph.cpp
|
||||
|
||||
object/raw2image.o: src/preprocessing/raw2image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/raw2image.o src/preprocessing/raw2image.cpp
|
||||
object/ext_preprocess.o: src/preprocessing/ext_preprocess.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ext_preprocess.o src/preprocessing/ext_preprocess.cpp
|
||||
object/subtract_black.o: src/preprocessing/subtract_black.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/subtract_black.o src/preprocessing/subtract_black.cpp
|
||||
object/cameralist.o: src/tables/cameralist.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cameralist.o src/tables/cameralist.cpp
|
||||
object/colorconst.o: src/tables/colorconst.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colorconst.o src/tables/colorconst.cpp
|
||||
object/colordata.o: src/tables/colordata.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colordata.o src/tables/colordata.cpp
|
||||
object/wblists.o: src/tables/wblists.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/wblists.o src/tables/wblists.cpp
|
||||
object/curves.o: src/utils/curves.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/curves.o src/utils/curves.cpp
|
||||
object/decoder_info.o: src/utils/decoder_info.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoder_info.o src/utils/decoder_info.cpp
|
||||
object/init_close_utils.o: src/utils/init_close_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/init_close_utils.o src/utils/init_close_utils.cpp
|
||||
object/open.o: src/utils/open.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/open.o src/utils/open.cpp
|
||||
object/phaseone_processing.o: src/utils/phaseone_processing.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/phaseone_processing.o src/utils/phaseone_processing.cpp
|
||||
object/read_utils.o: src/utils/read_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/read_utils.o src/utils/read_utils.cpp
|
||||
object/thumb_utils.o: src/utils/thumb_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/thumb_utils.o src/utils/thumb_utils.cpp
|
||||
object/utils_dcraw.o: src/utils/utils_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_dcraw.o src/utils/utils_dcraw.cpp
|
||||
object/utils_libraw.o: src/utils/utils_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_libraw.o src/utils/utils_libraw.cpp
|
||||
object/file_write.o: src/write/file_write.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/file_write.o src/write/file_write.cpp
|
||||
object/tiff_writer.o: src/write/tiff_writer.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff_writer.o src/write/tiff_writer.cpp
|
||||
object/x3f_parse_process.o: src/x3f/x3f_parse_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_parse_process.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_utils_patched.o: src/x3f/x3f_utils_patched.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_utils_patched.o src/x3f/x3f_utils_patched.cpp
|
227
rtengine/libraw/Makefile.devel.noppr2i
Normal file
227
rtengine/libraw/Makefile.devel.noppr2i
Normal file
@@ -0,0 +1,227 @@
|
||||
all: library all_samples
|
||||
|
||||
CC=clang
|
||||
CXX=clang++
|
||||
|
||||
#CC=gcc
|
||||
#CXX=g++
|
||||
|
||||
LDADD+=-lz
|
||||
|
||||
CFLAGS=-DLIBRAW_USE_AUTOPTR
|
||||
CFLAGS+= -g -I. -pedantic -Wno-long-long -Wno-overflow -O3
|
||||
|
||||
# RawSpeed Support
|
||||
# CFLAGS+=-DUSE_RAWSPEED -I../RawSpeed -I/opt/local/include/libxml2
|
||||
# LDADD+=-L../RawSpeed/RawSpeed/release -lrawspeed -L/opt/local/include -ljpeg -lxml2
|
||||
# RAWSPEED_DATA=../RawSpeed/data/cameras.xml
|
||||
|
||||
# DNG SDK Support
|
||||
# CFLAGS+=-DUSE_DNGSDK -I../dng_sdk/source
|
||||
# LDADDD+=-L../dng_sdk/release -ldng -ljpeg -lz
|
||||
|
||||
# LCMS support
|
||||
# For lcms2 set -DUSE_LCMS2
|
||||
#CFLAGS+=-DUSE_LCMS2 -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -llcms
|
||||
|
||||
# Jasper support for RedCine
|
||||
#CFLAGS+=-DUSE_JASPER -I/opt/local/include
|
||||
#LDADD+=-L/opt/local/lib -ljasper
|
||||
|
||||
# JPEG support for DNG and Kodak
|
||||
CFLAGS+=-DUSE_JPEG -I/usr/local/include
|
||||
LDADD+=-L/usr/local/lib -ljpeg
|
||||
|
||||
# LIBJPEG8:
|
||||
CFLAGS+=-DUSE_JPEG8
|
||||
|
||||
CSTFLAGS=$(CFLAGS) -DLIBRAW_NOTHREADS
|
||||
|
||||
LIB_OBJECTS= object/libraw_datastream.o \
|
||||
object/cameralist.o object/fuji_compressed.o \
|
||||
object/crx.o object/fp_dng.o object/decoders_libraw.o \
|
||||
object/unpack.o object/unpack_thumb.o \
|
||||
object/rawspeed_glue.o object/dngsdk_glue.o \
|
||||
object/colorconst.o object/utils_libraw.o object/init_close_utils.o \
|
||||
object/decoder_info.o object/open.o object/phaseone_processing.o \
|
||||
object/thumb_utils.o \
|
||||
object/x3f_utils_patched.o object/x3f_parse_process.o \
|
||||
object/read_utils.o object/curves.o object/utils_dcraw.o \
|
||||
object/colordata.o \
|
||||
object/canon_600.o object/decoders_dcraw.o \
|
||||
object/decoders_libraw_dcrdefs.o object/generic.o \
|
||||
object/kodak_decoders.o object/dng.o object/smal.o \
|
||||
object/load_mfbacks.o \
|
||||
object/sony.o object/nikon.o object/samsung.o object/cr3_parser.o \
|
||||
object/canon.o object/epson.o object/olympus.o object/leica.o \
|
||||
object/fuji.o object/adobepano.o object/pentax.o object/p1.o \
|
||||
object/makernotes.o object/exif_gps.o object/kodak.o \
|
||||
object/tiff.o object/ciff.o object/mediumformat.o object/minolta.o \
|
||||
object/identify_tools.o \
|
||||
object/hasselblad_model.o object/normalize_model.o object/identify.o \
|
||||
object/misc_parsers.o object/wblists.o \
|
||||
object/write_ph.o \
|
||||
object/postprocessing_ph.o \
|
||||
object/preprocessing_ph.o \
|
||||
|
||||
|
||||
|
||||
LR_INCLUDES=libraw/libraw.h libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
LRLIB=lib/libraw_noppr2i.a
|
||||
|
||||
library: $(LRLIB)
|
||||
|
||||
all_samples: bin/raw-identify
|
||||
|
||||
## Samples ##
|
||||
bin/raw-identify: $(LRLIB) samples/raw-identify.cpp
|
||||
$(CXX) ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw_noppr2i -lm ${LDADD}
|
||||
|
||||
$(LRLIB): ${LIB_OBJECTS}
|
||||
rm -f $(LRLIB)
|
||||
ar crv $(LRLIB) ${LIB_OBJECTS}
|
||||
ranlib $(LRLIB)
|
||||
|
||||
clean:
|
||||
rm -fr bin/*.dSYM
|
||||
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*.o dcraw/*~ doc/*~ bin/*~ src/*/*~
|
||||
|
||||
## script-created rules
|
||||
object/libraw_c_api.o: src/libraw_c_api.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
|
||||
object/libraw_datastream.o: src/libraw_datastream.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_datastream.o src/libraw_datastream.cpp
|
||||
object/canon_600.o: src/decoders/canon_600.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon_600.o src/decoders/canon_600.cpp
|
||||
object/crx.o: src/decoders/crx.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/crx.o src/decoders/crx.cpp
|
||||
object/decoders_dcraw.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_dcraw.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_libraw_dcrdefs.o: src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw_dcrdefs.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw.o: src/decoders/decoders_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw.o src/decoders/decoders_libraw.cpp
|
||||
object/dng.o: src/decoders/dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dng.o src/decoders/dng.cpp
|
||||
object/fp_dng.o: src/decoders/fp_dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fp_dng.o src/decoders/fp_dng.cpp
|
||||
object/fuji_compressed.o: src/decoders/fuji_compressed.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji_compressed.o src/decoders/fuji_compressed.cpp
|
||||
object/generic.o: src/decoders/generic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/generic.o src/decoders/generic.cpp
|
||||
object/kodak_decoders.o: src/decoders/kodak_decoders.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak_decoders.o src/decoders/kodak_decoders.cpp
|
||||
object/load_mfbacks.o: src/decoders/load_mfbacks.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/load_mfbacks.o src/decoders/load_mfbacks.cpp
|
||||
object/smal.o: src/decoders/smal.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/smal.o src/decoders/smal.cpp
|
||||
object/unpack_thumb.o: src/decoders/unpack_thumb.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack_thumb.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack.o: src/decoders/unpack.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack.o src/decoders/unpack.cpp
|
||||
object/dngsdk_glue.o: src/integration/dngsdk_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dngsdk_glue.o src/integration/dngsdk_glue.cpp
|
||||
object/rawspeed_glue.o: src/integration/rawspeed_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/rawspeed_glue.o src/integration/rawspeed_glue.cpp
|
||||
object/adobepano.o: src/metadata/adobepano.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/adobepano.o src/metadata/adobepano.cpp
|
||||
object/canon.o: src/metadata/canon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon.o src/metadata/canon.cpp
|
||||
object/ciff.o: src/metadata/ciff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ciff.o src/metadata/ciff.cpp
|
||||
object/cr3_parser.o: src/metadata/cr3_parser.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cr3_parser.o src/metadata/cr3_parser.cpp
|
||||
object/epson.o: src/metadata/epson.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/epson.o src/metadata/epson.cpp
|
||||
object/exif_gps.o: src/metadata/exif_gps.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/exif_gps.o src/metadata/exif_gps.cpp
|
||||
object/fuji.o: src/metadata/fuji.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji.o src/metadata/fuji.cpp
|
||||
object/identify_tools.o: src/metadata/identify_tools.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify_tools.o src/metadata/identify_tools.cpp
|
||||
object/identify.o: src/metadata/identify.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify.o src/metadata/identify.cpp
|
||||
object/kodak.o: src/metadata/kodak.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak.o src/metadata/kodak.cpp
|
||||
object/leica.o: src/metadata/leica.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/leica.o src/metadata/leica.cpp
|
||||
object/makernotes.o: src/metadata/makernotes.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/makernotes.o src/metadata/makernotes.cpp
|
||||
object/mediumformat.o: src/metadata/mediumformat.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mediumformat.o src/metadata/mediumformat.cpp
|
||||
object/minolta.o: src/metadata/minolta.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/minolta.o src/metadata/minolta.cpp
|
||||
object/misc_parsers.o: src/metadata/misc_parsers.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_parsers.o src/metadata/misc_parsers.cpp
|
||||
object/nikon.o: src/metadata/nikon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/nikon.o src/metadata/nikon.cpp
|
||||
object/hasselblad_model.o: src/metadata/hasselblad_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/hasselblad_model.o src/metadata/hasselblad_model.cpp
|
||||
object/normalize_model.o: src/metadata/normalize_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/normalize_model.o src/metadata/normalize_model.cpp
|
||||
object/olympus.o: src/metadata/olympus.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/olympus.o src/metadata/olympus.cpp
|
||||
object/p1.o: src/metadata/p1.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/p1.o src/metadata/p1.cpp
|
||||
object/pentax.o: src/metadata/pentax.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/pentax.o src/metadata/pentax.cpp
|
||||
object/samsung.o: src/metadata/samsung.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/samsung.o src/metadata/samsung.cpp
|
||||
object/sony.o: src/metadata/sony.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/sony.o src/metadata/sony.cpp
|
||||
object/tiff.o: src/metadata/tiff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff.o src/metadata/tiff.cpp
|
||||
|
||||
object/preprocessing_ph.o: src/preprocessing/preprocessing_ph.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/preprocessing_ph.o src/preprocessing/preprocessing_ph.cpp
|
||||
|
||||
object/postprocessing_ph.o: src/postprocessing/postprocessing_ph.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_ph.o src/postprocessing/postprocessing_ph.cpp
|
||||
|
||||
object/raw2image.o: src/preprocessing/raw2image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/raw2image.o src/preprocessing/raw2image.cpp
|
||||
object/ext_preprocess.o: src/preprocessing/ext_preprocess.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ext_preprocess.o src/preprocessing/ext_preprocess.cpp
|
||||
object/subtract_black.o: src/preprocessing/subtract_black.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/subtract_black.o src/preprocessing/subtract_black.cpp
|
||||
object/cameralist.o: src/tables/cameralist.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cameralist.o src/tables/cameralist.cpp
|
||||
object/colorconst.o: src/tables/colorconst.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colorconst.o src/tables/colorconst.cpp
|
||||
object/colordata.o: src/tables/colordata.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colordata.o src/tables/colordata.cpp
|
||||
object/wblists.o: src/tables/wblists.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/wblists.o src/tables/wblists.cpp
|
||||
object/curves.o: src/utils/curves.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/curves.o src/utils/curves.cpp
|
||||
object/decoder_info.o: src/utils/decoder_info.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoder_info.o src/utils/decoder_info.cpp
|
||||
object/init_close_utils.o: src/utils/init_close_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/init_close_utils.o src/utils/init_close_utils.cpp
|
||||
object/open.o: src/utils/open.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/open.o src/utils/open.cpp
|
||||
object/phaseone_processing.o: src/utils/phaseone_processing.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/phaseone_processing.o src/utils/phaseone_processing.cpp
|
||||
object/read_utils.o: src/utils/read_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/read_utils.o src/utils/read_utils.cpp
|
||||
object/thumb_utils.o: src/utils/thumb_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/thumb_utils.o src/utils/thumb_utils.cpp
|
||||
object/utils_dcraw.o: src/utils/utils_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_dcraw.o src/utils/utils_dcraw.cpp
|
||||
object/utils_libraw.o: src/utils/utils_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_libraw.o src/utils/utils_libraw.cpp
|
||||
object/write_ph.o: src/write/write_ph.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/write_ph.o src/write/write_ph.cpp
|
||||
object/file_write.o: src/write/file_write.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/file_write.o src/write/file_write.cpp
|
||||
object/tiff_writer.o: src/write/tiff_writer.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff_writer.o src/write/tiff_writer.cpp
|
||||
object/x3f_parse_process.o: src/x3f/x3f_parse_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_parse_process.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_utils_patched.o: src/x3f/x3f_utils_patched.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_utils_patched.o src/x3f/x3f_utils_patched.cpp
|
501
rtengine/libraw/Makefile.dist
Normal file
501
rtengine/libraw/Makefile.dist
Normal file
@@ -0,0 +1,501 @@
|
||||
all: library all_samples
|
||||
|
||||
#CFLAGS=-arch i386 -arch x86_64 -O3 -I. -w
|
||||
CFLAGS=-O3 -I. -w
|
||||
CC=gcc
|
||||
CXX=g++
|
||||
|
||||
# OpenMP support
|
||||
#CFLAGS+=-fopenmp
|
||||
|
||||
# RawSpeed Support
|
||||
#CFLAGS+=-pthread -DUSE_RAWSPEED -I../RawSpeed -I/usr/local/include/libxml2
|
||||
#LDADD+=-L../RawSpeed/RawSpeed -lrawspeed -L/usr/local/lib -ljpeg -lxml2
|
||||
#RAWSPEED_DATA=../RawSpeed/data/cameras.xml
|
||||
|
||||
# RawSpeed3 Support
|
||||
#CFLAGS+=-DUSE_RAWSPEED3 -DUSE_RAWSPEED_BITS -I./RawSpeed3/
|
||||
#LDADD+=-L../RawSpeed-v3/release -lrawspeed3 -L/usr/local/lib -ljpeg -lz
|
||||
|
||||
# DNG SDK Support
|
||||
# CFLAGS+=-DUSE_DNGSDK -I../dng_sdk/source
|
||||
# LDADDD+=-L../dng_sdk/release -ldng -lXMPCore -ljpeg -lz
|
||||
|
||||
# Jasper support for RedCine
|
||||
#CFLAGS+=-DUSE_JASPER -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -ljasper
|
||||
|
||||
# ZLIB support (FP dng)
|
||||
CFLAGS+=-DUSE_ZLIB
|
||||
LDADD+=-lz
|
||||
|
||||
# JPEG support for lossy DNG
|
||||
#CFLAGS+=-DUSE_JPEG -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -ljpeg
|
||||
# LIBJPEG8:
|
||||
#CFLAGS+=-DUSE_JPEG8
|
||||
|
||||
# LCMS support
|
||||
#CFLAGS+=-DUSE_LCMS -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -llcms
|
||||
|
||||
# LCMS2.x support
|
||||
#CFLAGS+=-DUSE_LCMS2 -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -llcms2
|
||||
|
||||
CSTFLAGS=$(CFLAGS) -DLIBRAW_NOTHREADS
|
||||
|
||||
LIB_OBJECTS= object/libraw_datastream.o object/libraw_c_api.o \
|
||||
object/cameralist.o object/fuji_compressed.o \
|
||||
object/crx.o object/fp_dng.o object/decoders_libraw.o \
|
||||
object/unpack.o object/unpack_thumb.o \
|
||||
object/rawspeed_glue.o object/dngsdk_glue.o \
|
||||
object/colorconst.o object/utils_libraw.o object/init_close_utils.o \
|
||||
object/decoder_info.o object/open.o object/phaseone_processing.o \
|
||||
object/thumb_utils.o \
|
||||
object/tiff_writer.o object/subtract_black.o object/postprocessing_utils.o \
|
||||
object/dcraw_process.o object/raw2image.o object/mem_image.o \
|
||||
object/x3f_utils_patched.o object/x3f_parse_process.o \
|
||||
object/read_utils.o object/curves.o object/utils_dcraw.o \
|
||||
object/colordata.o \
|
||||
object/canon_600.o object/decoders_dcraw.o \
|
||||
object/decoders_libraw_dcrdefs.o object/generic.o \
|
||||
object/kodak_decoders.o object/dng.o object/smal.o \
|
||||
object/load_mfbacks.o \
|
||||
object/sony.o object/nikon.o object/samsung.o object/cr3_parser.o \
|
||||
object/canon.o object/epson.o object/olympus.o object/leica.o \
|
||||
object/fuji.o object/adobepano.o object/pentax.o object/p1.o \
|
||||
object/makernotes.o object/exif_gps.o object/kodak.o \
|
||||
object/tiff.o object/ciff.o object/mediumformat.o object/minolta.o \
|
||||
object/identify_tools.o \
|
||||
object/hasselblad_model.o object/normalize_model.o object/identify.o \
|
||||
object/misc_parsers.o object/wblists.o \
|
||||
object/postprocessing_aux.o object/postprocessing_utils_dcrdefs.o \
|
||||
object/aspect_ratio.o \
|
||||
object/misc_demosaic.o object/xtrans_demosaic.o object/ahd_demosaic.o \
|
||||
object/dht_demosaic.o object/aahd_demosaic.o object/dcb_demosaic.o \
|
||||
object/file_write.o \
|
||||
object/ext_preprocess.o object/apply_profile.o
|
||||
|
||||
|
||||
LIB_MT_OBJECTS= object/libraw_datastream.mt.o object/libraw_c_api.mt.o \
|
||||
object/cameralist.mt.o object/fuji_compressed.mt.o \
|
||||
object/crx.mt.o object/fp_dng.mt.o object/decoders_libraw.mt.o \
|
||||
object/unpack.mt.o object/unpack_thumb.mt.o \
|
||||
object/rawspeed_glue.mt.o object/dngsdk_glue.mt.o \
|
||||
object/colorconst.mt.o object/utils_libraw.mt.o \
|
||||
object/init_close_utils.mt.o \
|
||||
object/decoder_info.mt.o object/open.mt.o object/phaseone_processing.mt.o \
|
||||
object/thumb_utils.mt.o \
|
||||
object/tiff_writer.mt.o object/subtract_black.mt.o \
|
||||
object/postprocessing_utils.mt.o object/dcraw_process.mt.o \
|
||||
object/raw2image.mt.o object/mem_image.mt.o \
|
||||
object/x3f_utils_patched.mt.o object/x3f_parse_process.mt.o \
|
||||
object/read_utils.mt.o object/curves.mt.o object/utils_dcraw.mt.o \
|
||||
object/colordata.mt.o \
|
||||
object/canon_600.mt.o object/decoders_dcraw.mt.o \
|
||||
object/decoders_libraw_dcrdefs.mt.o object/generic.mt.o \
|
||||
object/kodak_decoders.mt.o object/dng.mt.o object/smal.mt.o \
|
||||
object/load_mfbacks.mt.o \
|
||||
object/sony.mt.o object/nikon.mt.o object/samsung.mt.o \
|
||||
object/cr3_parser.mt.o object/canon.mt.o object/epson.mt.o \
|
||||
object/olympus.mt.o object/leica.mt.o \
|
||||
object/fuji.mt.o object/adobepano.mt.o object/pentax.mt.o object/p1.mt.o \
|
||||
object/makernotes.mt.o object/exif_gps.mt.o object/kodak.mt.o \
|
||||
object/tiff.mt.o object/ciff.mt.o object/mediumformat.mt.o \
|
||||
object/minolta.mt.o \
|
||||
object/identify_tools.mt.o \
|
||||
object/hasselblad_model.o object/normalize_model.mt.o object/identify.mt.o \
|
||||
object/misc_parsers.mt.o object/wblists.mt.o \
|
||||
object/postprocessing_aux.mt.o object/postprocessing_utils_dcrdefs.mt.o \
|
||||
object/aspect_ratio.mt.o \
|
||||
object/misc_demosaic.mt.o object/xtrans_demosaic.mt.o \
|
||||
object/ahd_demosaic.mt.o object/dht_demosaic.mt.o \
|
||||
object/aahd_demosaic.mt.o object/dcb_demosaic.mt.o \
|
||||
object/file_write.mt.o \
|
||||
object/ext_preprocess.mt.o object/apply_profile.mt.o
|
||||
|
||||
|
||||
LR_INCLUDES=libraw/libraw.h libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
library: lib/libraw.a lib/libraw_r.a
|
||||
|
||||
all_samples: bin/raw-identify bin/simple_dcraw bin/dcraw_emu bin/dcraw_half bin/half_mt bin/mem_image \
|
||||
bin/unprocessed_raw bin/4channels bin/multirender_test bin/postprocessing_benchmark \
|
||||
bin/rawtextdump
|
||||
|
||||
install: library
|
||||
@if [ -d /usr/local/include ] ; then cp -R libraw /usr/local/include/ ; else echo 'no /usr/local/include' ; fi
|
||||
@if [ -d /usr/local/lib ] ; then cp lib/libraw.a lib/libraw_r.a /usr/local/lib/ ; else echo 'no /usr/local/lib' ; fi
|
||||
|
||||
install-binaries: all_samples
|
||||
@if [ -d /usr/local/bin ] ; then cp bin/[a-z]* /usr/local/bin/ ; else echo 'no /usr/local/bin' ; fi
|
||||
|
||||
|
||||
## RawSpeed xml file
|
||||
|
||||
RawSpeed/rawspeed_xmldata.cpp: ${RAWSPEED_DATA}
|
||||
./rsxml2c.sh ${RAWSPEED_DATA} > RawSpeed/rawspeed_xmldata.cpp
|
||||
|
||||
#binaries
|
||||
|
||||
bin/raw-identify: lib/libraw.a samples/raw-identify.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/unprocessed_raw: lib/libraw.a samples/unprocessed_raw.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/unprocessed_raw samples/unprocessed_raw.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/4channels: lib/libraw.a samples/4channels.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/4channels samples/4channels.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/rawtextdump: lib/libraw.a samples/rawtextdump.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/rawtextdump samples/rawtextdump.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/simple_dcraw: lib/libraw.a samples/simple_dcraw.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/simple_dcraw samples/simple_dcraw.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/multirender_test: lib/libraw.a samples/multirender_test.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/multirender_test samples/multirender_test.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/postprocessing_benchmark: lib/libraw.a samples/postprocessing_benchmark.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/postprocessing_benchmark samples/postprocessing_benchmark.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/mem_image: lib/libraw.a samples/mem_image_sample.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/mem_image samples/mem_image_sample.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
bin/dcraw_half: lib/libraw.a object/dcraw_half.o
|
||||
${CC} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/dcraw_half object/dcraw_half.o -L./lib -lraw -lm -lstdc++ ${LDADD}
|
||||
|
||||
bin/half_mt: lib/libraw_r.a object/half_mt.o
|
||||
${CC} -pthread ${CFLAGS} -o bin/half_mt object/half_mt.o -L./lib -lraw_r -lm -lstdc++ ${LDADD}
|
||||
|
||||
bin/dcraw_emu: lib/libraw.a samples/dcraw_emu.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/dcraw_emu samples/dcraw_emu.cpp -L./lib -lraw -lm ${LDADD}
|
||||
|
||||
#objects
|
||||
|
||||
object/dcraw_half.o: samples/dcraw_half.c
|
||||
${CC} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcraw_half.o samples/dcraw_half.c
|
||||
|
||||
object/half_mt.o: samples/half_mt.c
|
||||
${CC} -c -pthread ${CFLAGS} -o object/half_mt.o samples/half_mt.c
|
||||
|
||||
|
||||
lib/libraw.a: ${LIB_OBJECTS}
|
||||
rm -f lib/libraw.a
|
||||
ar crv lib/libraw.a ${LIB_OBJECTS}
|
||||
ranlib lib/libraw.a
|
||||
|
||||
lib/libraw_r.a: ${LIB_MT_OBJECTS}
|
||||
rm -f lib/libraw_r.a
|
||||
ar crv lib/libraw_r.a ${LIB_MT_OBJECTS}
|
||||
ranlib lib/libraw_r.a
|
||||
|
||||
clean:
|
||||
rm -fr bin/*.dSYM
|
||||
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*o dcraw/*~ doc/*~ bin/*~ src/*/*~
|
||||
|
||||
### generated
|
||||
object/libraw_c_api.o: src/libraw_c_api.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
|
||||
object/libraw_c_api.mt.o: src/libraw_c_api.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/libraw_c_api.mt.o src/libraw_c_api.cpp
|
||||
object/libraw_datastream.o: src/libraw_datastream.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_datastream.o src/libraw_datastream.cpp
|
||||
object/libraw_datastream.mt.o: src/libraw_datastream.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/libraw_datastream.mt.o src/libraw_datastream.cpp
|
||||
object/canon_600.o: src/decoders/canon_600.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon_600.o src/decoders/canon_600.cpp
|
||||
object/canon_600.mt.o: src/decoders/canon_600.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/canon_600.mt.o src/decoders/canon_600.cpp
|
||||
object/crx.o: src/decoders/crx.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/crx.o src/decoders/crx.cpp
|
||||
object/crx.mt.o: src/decoders/crx.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/crx.mt.o src/decoders/crx.cpp
|
||||
object/decoders_dcraw.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_dcraw.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_dcraw.mt.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_dcraw.mt.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_libraw_dcrdefs.o: src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw_dcrdefs.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw_dcrdefs.mt.o: src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_libraw_dcrdefs.mt.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw.o: src/decoders/decoders_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw.o src/decoders/decoders_libraw.cpp
|
||||
object/decoders_libraw.mt.o: src/decoders/decoders_libraw.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/decoders_libraw.mt.o src/decoders/decoders_libraw.cpp
|
||||
object/dng.o: src/decoders/dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dng.o src/decoders/dng.cpp
|
||||
object/dng.mt.o: src/decoders/dng.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/dng.mt.o src/decoders/dng.cpp
|
||||
object/fp_dng.o: src/decoders/fp_dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fp_dng.o src/decoders/fp_dng.cpp
|
||||
object/fp_dng.mt.o: src/decoders/fp_dng.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/fp_dng.mt.o src/decoders/fp_dng.cpp
|
||||
object/fuji_compressed.o: src/decoders/fuji_compressed.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji_compressed.o src/decoders/fuji_compressed.cpp
|
||||
object/fuji_compressed.mt.o: src/decoders/fuji_compressed.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/fuji_compressed.mt.o src/decoders/fuji_compressed.cpp
|
||||
object/generic.o: src/decoders/generic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/generic.o src/decoders/generic.cpp
|
||||
object/generic.mt.o: src/decoders/generic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/generic.mt.o src/decoders/generic.cpp
|
||||
object/kodak_decoders.o: src/decoders/kodak_decoders.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak_decoders.o src/decoders/kodak_decoders.cpp
|
||||
object/kodak_decoders.mt.o: src/decoders/kodak_decoders.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/kodak_decoders.mt.o src/decoders/kodak_decoders.cpp
|
||||
object/load_mfbacks.o: src/decoders/load_mfbacks.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/load_mfbacks.o src/decoders/load_mfbacks.cpp
|
||||
object/load_mfbacks.mt.o: src/decoders/load_mfbacks.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/load_mfbacks.mt.o src/decoders/load_mfbacks.cpp
|
||||
object/smal.o: src/decoders/smal.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/smal.o src/decoders/smal.cpp
|
||||
object/smal.mt.o: src/decoders/smal.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/smal.mt.o src/decoders/smal.cpp
|
||||
object/unpack_thumb.o: src/decoders/unpack_thumb.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack_thumb.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack_thumb.mt.o: src/decoders/unpack_thumb.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/unpack_thumb.mt.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack.o: src/decoders/unpack.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack.o src/decoders/unpack.cpp
|
||||
object/unpack.mt.o: src/decoders/unpack.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/unpack.mt.o src/decoders/unpack.cpp
|
||||
object/aahd_demosaic.o: src/demosaic/aahd_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aahd_demosaic.o src/demosaic/aahd_demosaic.cpp
|
||||
object/aahd_demosaic.mt.o: src/demosaic/aahd_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/aahd_demosaic.mt.o src/demosaic/aahd_demosaic.cpp
|
||||
object/ahd_demosaic.o: src/demosaic/ahd_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ahd_demosaic.o src/demosaic/ahd_demosaic.cpp
|
||||
object/ahd_demosaic.mt.o: src/demosaic/ahd_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/ahd_demosaic.mt.o src/demosaic/ahd_demosaic.cpp
|
||||
object/dcb_demosaic.o: src/demosaic/dcb_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcb_demosaic.o src/demosaic/dcb_demosaic.cpp
|
||||
object/dcb_demosaic.mt.o: src/demosaic/dcb_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/dcb_demosaic.mt.o src/demosaic/dcb_demosaic.cpp
|
||||
object/dht_demosaic.o: src/demosaic/dht_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dht_demosaic.o src/demosaic/dht_demosaic.cpp
|
||||
object/dht_demosaic.mt.o: src/demosaic/dht_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/dht_demosaic.mt.o src/demosaic/dht_demosaic.cpp
|
||||
object/misc_demosaic.o: src/demosaic/misc_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_demosaic.o src/demosaic/misc_demosaic.cpp
|
||||
object/misc_demosaic.mt.o: src/demosaic/misc_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/misc_demosaic.mt.o src/demosaic/misc_demosaic.cpp
|
||||
object/xtrans_demosaic.o: src/demosaic/xtrans_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/xtrans_demosaic.o src/demosaic/xtrans_demosaic.cpp
|
||||
object/xtrans_demosaic.mt.o: src/demosaic/xtrans_demosaic.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/xtrans_demosaic.mt.o src/demosaic/xtrans_demosaic.cpp
|
||||
object/dngsdk_glue.o: src/integration/dngsdk_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dngsdk_glue.o src/integration/dngsdk_glue.cpp
|
||||
object/dngsdk_glue.mt.o: src/integration/dngsdk_glue.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/dngsdk_glue.mt.o src/integration/dngsdk_glue.cpp
|
||||
object/rawspeed_glue.o: src/integration/rawspeed_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/rawspeed_glue.o src/integration/rawspeed_glue.cpp
|
||||
object/rawspeed_glue.mt.o: src/integration/rawspeed_glue.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/rawspeed_glue.mt.o src/integration/rawspeed_glue.cpp
|
||||
object/adobepano.o: src/metadata/adobepano.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/adobepano.o src/metadata/adobepano.cpp
|
||||
object/adobepano.mt.o: src/metadata/adobepano.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/adobepano.mt.o src/metadata/adobepano.cpp
|
||||
object/canon.o: src/metadata/canon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon.o src/metadata/canon.cpp
|
||||
object/canon.mt.o: src/metadata/canon.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/canon.mt.o src/metadata/canon.cpp
|
||||
object/ciff.o: src/metadata/ciff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ciff.o src/metadata/ciff.cpp
|
||||
object/ciff.mt.o: src/metadata/ciff.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/ciff.mt.o src/metadata/ciff.cpp
|
||||
object/cr3_parser.o: src/metadata/cr3_parser.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cr3_parser.o src/metadata/cr3_parser.cpp
|
||||
object/cr3_parser.mt.o: src/metadata/cr3_parser.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/cr3_parser.mt.o src/metadata/cr3_parser.cpp
|
||||
object/epson.o: src/metadata/epson.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/epson.o src/metadata/epson.cpp
|
||||
object/epson.mt.o: src/metadata/epson.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/epson.mt.o src/metadata/epson.cpp
|
||||
object/exif_gps.o: src/metadata/exif_gps.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/exif_gps.o src/metadata/exif_gps.cpp
|
||||
object/exif_gps.mt.o: src/metadata/exif_gps.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/exif_gps.mt.o src/metadata/exif_gps.cpp
|
||||
object/fuji.o: src/metadata/fuji.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji.o src/metadata/fuji.cpp
|
||||
object/fuji.mt.o: src/metadata/fuji.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/fuji.mt.o src/metadata/fuji.cpp
|
||||
object/identify_tools.o: src/metadata/identify_tools.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify_tools.o src/metadata/identify_tools.cpp
|
||||
object/identify_tools.mt.o: src/metadata/identify_tools.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/identify_tools.mt.o src/metadata/identify_tools.cpp
|
||||
object/identify.o: src/metadata/identify.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify.o src/metadata/identify.cpp
|
||||
object/identify.mt.o: src/metadata/identify.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/identify.mt.o src/metadata/identify.cpp
|
||||
object/kodak.o: src/metadata/kodak.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak.o src/metadata/kodak.cpp
|
||||
object/kodak.mt.o: src/metadata/kodak.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/kodak.mt.o src/metadata/kodak.cpp
|
||||
object/leica.o: src/metadata/leica.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/leica.o src/metadata/leica.cpp
|
||||
object/leica.mt.o: src/metadata/leica.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/leica.mt.o src/metadata/leica.cpp
|
||||
object/makernotes.o: src/metadata/makernotes.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/makernotes.o src/metadata/makernotes.cpp
|
||||
object/makernotes.mt.o: src/metadata/makernotes.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/makernotes.mt.o src/metadata/makernotes.cpp
|
||||
object/mediumformat.o: src/metadata/mediumformat.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mediumformat.o src/metadata/mediumformat.cpp
|
||||
object/mediumformat.mt.o: src/metadata/mediumformat.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/mediumformat.mt.o src/metadata/mediumformat.cpp
|
||||
object/minolta.o: src/metadata/minolta.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/minolta.o src/metadata/minolta.cpp
|
||||
object/minolta.mt.o: src/metadata/minolta.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/minolta.mt.o src/metadata/minolta.cpp
|
||||
object/misc_parsers.o: src/metadata/misc_parsers.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_parsers.o src/metadata/misc_parsers.cpp
|
||||
object/misc_parsers.mt.o: src/metadata/misc_parsers.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/misc_parsers.mt.o src/metadata/misc_parsers.cpp
|
||||
object/nikon.o: src/metadata/nikon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/nikon.o src/metadata/nikon.cpp
|
||||
object/nikon.mt.o: src/metadata/nikon.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/nikon.mt.o src/metadata/nikon.cpp
|
||||
object/hasselblad_model.o: src/metadata/hasselblad_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/hasselblad_model.o src/metadata/hasselblad_model.cpp
|
||||
object/hasselblad_model.mt.o: src/metadata/hasselblad_model.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/hasselblad_model.mt.o src/metadata/hasselblad_model.cpp
|
||||
object/normalize_model.o: src/metadata/normalize_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/normalize_model.o src/metadata/normalize_model.cpp
|
||||
object/normalize_model.mt.o: src/metadata/normalize_model.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/normalize_model.mt.o src/metadata/normalize_model.cpp
|
||||
object/olympus.o: src/metadata/olympus.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/olympus.o src/metadata/olympus.cpp
|
||||
object/olympus.mt.o: src/metadata/olympus.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/olympus.mt.o src/metadata/olympus.cpp
|
||||
object/p1.o: src/metadata/p1.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/p1.o src/metadata/p1.cpp
|
||||
object/p1.mt.o: src/metadata/p1.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/p1.mt.o src/metadata/p1.cpp
|
||||
object/pentax.o: src/metadata/pentax.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/pentax.o src/metadata/pentax.cpp
|
||||
object/pentax.mt.o: src/metadata/pentax.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/pentax.mt.o src/metadata/pentax.cpp
|
||||
object/samsung.o: src/metadata/samsung.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/samsung.o src/metadata/samsung.cpp
|
||||
object/samsung.mt.o: src/metadata/samsung.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/samsung.mt.o src/metadata/samsung.cpp
|
||||
object/sony.o: src/metadata/sony.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/sony.o src/metadata/sony.cpp
|
||||
object/sony.mt.o: src/metadata/sony.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/sony.mt.o src/metadata/sony.cpp
|
||||
object/tiff.o: src/metadata/tiff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff.o src/metadata/tiff.cpp
|
||||
object/tiff.mt.o: src/metadata/tiff.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/tiff.mt.o src/metadata/tiff.cpp
|
||||
object/aspect_ratio.o: src/postprocessing/aspect_ratio.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aspect_ratio.o src/postprocessing/aspect_ratio.cpp
|
||||
object/aspect_ratio.mt.o: src/postprocessing/aspect_ratio.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/aspect_ratio.mt.o src/postprocessing/aspect_ratio.cpp
|
||||
object/dcraw_process.o: src/postprocessing/dcraw_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcraw_process.o src/postprocessing/dcraw_process.cpp
|
||||
object/dcraw_process.mt.o: src/postprocessing/dcraw_process.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/dcraw_process.mt.o src/postprocessing/dcraw_process.cpp
|
||||
object/mem_image.o: src/postprocessing/mem_image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mem_image.o src/postprocessing/mem_image.cpp
|
||||
object/mem_image.mt.o: src/postprocessing/mem_image.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/mem_image.mt.o src/postprocessing/mem_image.cpp
|
||||
object/postprocessing_aux.o: src/postprocessing/postprocessing_aux.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_aux.o src/postprocessing/postprocessing_aux.cpp
|
||||
object/postprocessing_aux.mt.o: src/postprocessing/postprocessing_aux.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_aux.mt.o src/postprocessing/postprocessing_aux.cpp
|
||||
object/postprocessing_utils_dcrdefs.o: src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils_dcrdefs.o src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
object/postprocessing_utils_dcrdefs.mt.o: src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_utils_dcrdefs.mt.o src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
object/postprocessing_utils.o: src/postprocessing/postprocessing_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils.o src/postprocessing/postprocessing_utils.cpp
|
||||
object/postprocessing_utils.mt.o: src/postprocessing/postprocessing_utils.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/postprocessing_utils.mt.o src/postprocessing/postprocessing_utils.cpp
|
||||
object/raw2image.o: src/preprocessing/raw2image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/raw2image.o src/preprocessing/raw2image.cpp
|
||||
object/raw2image.mt.o: src/preprocessing/raw2image.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/raw2image.mt.o src/preprocessing/raw2image.cpp
|
||||
object/ext_preprocess.o: src/preprocessing/ext_preprocess.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ext_preprocess.o src/preprocessing/ext_preprocess.cpp
|
||||
object/ext_preprocess.mt.o: src/preprocessing/ext_preprocess.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/ext_preprocess.mt.o src/preprocessing/ext_preprocess.cpp
|
||||
object/subtract_black.o: src/preprocessing/subtract_black.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/subtract_black.o src/preprocessing/subtract_black.cpp
|
||||
object/subtract_black.mt.o: src/preprocessing/subtract_black.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/subtract_black.mt.o src/preprocessing/subtract_black.cpp
|
||||
object/cameralist.o: src/tables/cameralist.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cameralist.o src/tables/cameralist.cpp
|
||||
object/cameralist.mt.o: src/tables/cameralist.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/cameralist.mt.o src/tables/cameralist.cpp
|
||||
object/colorconst.o: src/tables/colorconst.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colorconst.o src/tables/colorconst.cpp
|
||||
object/colorconst.mt.o: src/tables/colorconst.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/colorconst.mt.o src/tables/colorconst.cpp
|
||||
object/colordata.o: src/tables/colordata.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colordata.o src/tables/colordata.cpp
|
||||
object/colordata.mt.o: src/tables/colordata.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/colordata.mt.o src/tables/colordata.cpp
|
||||
object/wblists.o: src/tables/wblists.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/wblists.o src/tables/wblists.cpp
|
||||
object/wblists.mt.o: src/tables/wblists.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/wblists.mt.o src/tables/wblists.cpp
|
||||
object/curves.o: src/utils/curves.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/curves.o src/utils/curves.cpp
|
||||
object/curves.mt.o: src/utils/curves.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/curves.mt.o src/utils/curves.cpp
|
||||
object/decoder_info.o: src/utils/decoder_info.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoder_info.o src/utils/decoder_info.cpp
|
||||
object/decoder_info.mt.o: src/utils/decoder_info.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/decoder_info.mt.o src/utils/decoder_info.cpp
|
||||
object/init_close_utils.o: src/utils/init_close_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/init_close_utils.o src/utils/init_close_utils.cpp
|
||||
object/init_close_utils.mt.o: src/utils/init_close_utils.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/init_close_utils.mt.o src/utils/init_close_utils.cpp
|
||||
object/open.o: src/utils/open.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/open.o src/utils/open.cpp
|
||||
object/open.mt.o: src/utils/open.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/open.mt.o src/utils/open.cpp
|
||||
object/phaseone_processing.o: src/utils/phaseone_processing.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/phaseone_processing.o src/utils/phaseone_processing.cpp
|
||||
object/phaseone_processing.mt.o: src/utils/phaseone_processing.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/phaseone_processing.mt.o src/utils/phaseone_processing.cpp
|
||||
object/read_utils.o: src/utils/read_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/read_utils.o src/utils/read_utils.cpp
|
||||
object/read_utils.mt.o: src/utils/read_utils.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/read_utils.mt.o src/utils/read_utils.cpp
|
||||
object/thumb_utils.o: src/utils/thumb_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/thumb_utils.o src/utils/thumb_utils.cpp
|
||||
object/thumb_utils.mt.o: src/utils/thumb_utils.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/thumb_utils.mt.o src/utils/thumb_utils.cpp
|
||||
object/utils_dcraw.o: src/utils/utils_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_dcraw.o src/utils/utils_dcraw.cpp
|
||||
object/utils_dcraw.mt.o: src/utils/utils_dcraw.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/utils_dcraw.mt.o src/utils/utils_dcraw.cpp
|
||||
object/utils_libraw.o: src/utils/utils_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_libraw.o src/utils/utils_libraw.cpp
|
||||
object/utils_libraw.mt.o: src/utils/utils_libraw.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/utils_libraw.mt.o src/utils/utils_libraw.cpp
|
||||
object/apply_profile.o: src/write/apply_profile.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/apply_profile.o src/write/apply_profile.cpp
|
||||
object/apply_profile.mt.o: src/write/apply_profile.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/apply_profile.mt.o src/write/apply_profile.cpp
|
||||
object/file_write.o: src/write/file_write.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/file_write.o src/write/file_write.cpp
|
||||
object/file_write.mt.o: src/write/file_write.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/file_write.mt.o src/write/file_write.cpp
|
||||
object/tiff_writer.o: src/write/tiff_writer.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff_writer.o src/write/tiff_writer.cpp
|
||||
object/tiff_writer.mt.o: src/write/tiff_writer.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/tiff_writer.mt.o src/write/tiff_writer.cpp
|
||||
object/x3f_parse_process.o: src/x3f/x3f_parse_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_parse_process.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_parse_process.mt.o: src/x3f/x3f_parse_process.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/x3f_parse_process.mt.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_utils_patched.o: src/x3f/x3f_utils_patched.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_utils_patched.o src/x3f/x3f_utils_patched.cpp
|
||||
object/x3f_utils_patched.mt.o: src/x3f/x3f_utils_patched.cpp
|
||||
${CXX} -c ${CFLAGS} -o object/x3f_utils_patched.mt.o src/x3f/x3f_utils_patched.cpp
|
297
rtengine/libraw/Makefile.mingw
Normal file
297
rtengine/libraw/Makefile.mingw
Normal file
@@ -0,0 +1,297 @@
|
||||
all: library all_samples
|
||||
|
||||
CFLAGS=-O3 -I. -w
|
||||
CC=gcc
|
||||
CXX=g++
|
||||
|
||||
# OpenMP support
|
||||
#CFLAGS+=-fopenmp
|
||||
|
||||
# RawSpeed Support
|
||||
#CFLAGS+=-pthread -DUSE_RAWSPEED -I../RawSpeed -I/usr/local/include/libxml2
|
||||
#LDADD+=-L../RawSpeed/RawSpeed -lrawspeed -L/usr/local/lib -ljpeg -lxml2
|
||||
#RAWSPEED_DATA=../RawSpeed/data/cameras.xml
|
||||
|
||||
# DNG SDK Support
|
||||
# CFLAGS+=-DUSE_DNGSDK -I../dng_sdk/source
|
||||
# LDADDD+=-L../dng_sdk/release -ldng -lXMPCore -ljpeg -lz
|
||||
|
||||
# Jasper support for RedCine
|
||||
#CFLAGS+=-DUSE_JASPER -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -ljasper
|
||||
|
||||
# JPEG support for lossy DNG
|
||||
#CFLAGS+=-DUSE_JPEG -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -ljpeg
|
||||
# LIBJPEG8:
|
||||
#CFLAGS+=-DUSE_JPEG8
|
||||
|
||||
# LCMS support
|
||||
#CFLAGS+=-DUSE_LCMS -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -llcms
|
||||
|
||||
# LCMS2.x support
|
||||
#CFLAGS+=-DUSE_LCMS2 -I/usr/local/include
|
||||
#LDADD+=-L/usr/local/lib -llcms2
|
||||
|
||||
CSTFLAGS=$(CFLAGS) -DLIBRAW_NOTHREADS
|
||||
|
||||
LIB_OBJECTS= object/libraw_datastream.o object/libraw_c_api.o \
|
||||
object/cameralist.o object/fuji_compressed.o \
|
||||
object/crx.o object/fp_dng.o object/decoders_libraw.o \
|
||||
object/unpack.o object/unpack_thumb.o \
|
||||
object/rawspeed_glue.o object/dngsdk_glue.o \
|
||||
object/colorconst.o object/utils_libraw.o object/init_close_utils.o \
|
||||
object/decoder_info.o object/open.o object/phaseone_processing.o \
|
||||
object/thumb_utils.o \
|
||||
object/tiff_writer.o object/subtract_black.o object/postprocessing_utils.o \
|
||||
object/dcraw_process.o object/raw2image.o object/mem_image.o \
|
||||
object/x3f_utils_patched.o object/x3f_parse_process.o \
|
||||
object/read_utils.o object/curves.o object/utils_dcraw.o \
|
||||
object/colordata.o \
|
||||
object/canon_600.o object/decoders_dcraw.o \
|
||||
object/decoders_libraw_dcrdefs.o object/generic.o \
|
||||
object/kodak_decoders.o object/dng.o object/smal.o \
|
||||
object/load_mfbacks.o \
|
||||
object/sony.o object/nikon.o object/samsung.o object/cr3_parser.o \
|
||||
object/canon.o object/epson.o object/olympus.o object/leica.o \
|
||||
object/fuji.o object/adobepano.o object/pentax.o object/p1.o \
|
||||
object/makernotes.o object/exif_gps.o object/kodak.o \
|
||||
object/tiff.o object/ciff.o object/mediumformat.o object/minolta.o \
|
||||
object/identify_tools.o \
|
||||
object/hasselblad_model.o object/normalize_model.o object/identify.o \
|
||||
object/misc_parsers.o object/wblists.o \
|
||||
object/postprocessing_aux.o object/postprocessing_utils_dcrdefs.o \
|
||||
object/aspect_ratio.o \
|
||||
object/misc_demosaic.o object/xtrans_demosaic.o object/ahd_demosaic.o \
|
||||
object/dht_demosaic.o object/aahd_demosaic.o object/dcb_demosaic.o \
|
||||
object/file_write.o \
|
||||
object/ext_preprocess.o object/apply_profile.o
|
||||
|
||||
|
||||
|
||||
LR_INCLUDES=libraw/libraw.h libraw/libraw_alloc.h \
|
||||
libraw/libraw_const.h libraw/libraw_datastream.h \
|
||||
libraw/libraw_internal.h libraw/libraw_types.h \
|
||||
libraw/libraw_version.h
|
||||
|
||||
library: lib/libraw.a
|
||||
|
||||
all_samples: bin/raw-identify bin/simple_dcraw bin/dcraw_emu bin/dcraw_half bin/mem_image \
|
||||
bin/unprocessed_raw bin/4channels bin/multirender_test bin/postprocessing_benchmark \
|
||||
bin/rawtextdump
|
||||
|
||||
install: library
|
||||
@if [ -d /usr/local/include ] ; then cp -R libraw /usr/local/include/ ; else echo 'no /usr/local/include' ; fi
|
||||
@if [ -d /usr/local/lib ] ; then cp lib/libraw.a lib/libraw_r.a /usr/local/lib/ ; else echo 'no /usr/local/lib' ; fi
|
||||
|
||||
install-binaries: all_samples
|
||||
@if [ -d /usr/local/bin ] ; then cp bin/[a-z]* /usr/local/bin/ ; else echo 'no /usr/local/bin' ; fi
|
||||
|
||||
|
||||
#binaries
|
||||
|
||||
bin/raw-identify: lib/libraw.a samples/raw-identify.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/raw-identify samples/raw-identify.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/unprocessed_raw: lib/libraw.a samples/unprocessed_raw.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/unprocessed_raw samples/unprocessed_raw.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/4channels: lib/libraw.a samples/4channels.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/4channels samples/4channels.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/rawtextdump: lib/libraw.a samples/rawtextdump.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/rawtextdump samples/rawtextdump.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/simple_dcraw: lib/libraw.a samples/simple_dcraw.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/simple_dcraw samples/simple_dcraw.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/multirender_test: lib/libraw.a samples/multirender_test.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/multirender_test samples/multirender_test.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/postprocessing_benchmark: lib/libraw.a samples/postprocessing_benchmark.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/postprocessing_benchmark samples/postprocessing_benchmark.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/mem_image: lib/libraw.a samples/mem_image_sample.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/mem_image samples/mem_image_sample.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
bin/dcraw_half: lib/libraw.a object/dcraw_half.o
|
||||
${CC} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/dcraw_half object/dcraw_half.o -L./lib -lraw -lws2_32 -lm -lstdc++ ${LDADD}
|
||||
|
||||
bin/dcraw_emu: lib/libraw.a samples/dcraw_emu.cpp
|
||||
${CXX} -DLIBRAW_NOTHREADS ${CFLAGS} -o bin/dcraw_emu samples/dcraw_emu.cpp -L./lib -lraw -lws2_32 -lm ${LDADD}
|
||||
|
||||
#objects
|
||||
|
||||
object/dcraw_half.o: samples/dcraw_half.c
|
||||
${CC} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcraw_half.o samples/dcraw_half.c
|
||||
|
||||
object/half_mt.o: samples/half_mt.c
|
||||
${CC} -c -pthread ${CFLAGS} -o object/half_mt.o samples/half_mt.c
|
||||
|
||||
|
||||
lib/libraw.a: ${LIB_OBJECTS}
|
||||
rm -f lib/libraw.a
|
||||
ar crv lib/libraw.a ${LIB_OBJECTS}
|
||||
ranlib lib/libraw.a
|
||||
|
||||
lib/libraw_r.a: ${LIB_MT_OBJECTS}
|
||||
rm -f lib/libraw_r.a
|
||||
ar crv lib/libraw_r.a ${LIB_MT_OBJECTS}
|
||||
ranlib lib/libraw_r.a
|
||||
|
||||
clean:
|
||||
rm -fr bin/*.dSYM
|
||||
rm -f *.o *~ src/*~ samples/*~ internal/*~ libraw/*~ lib/lib*.a bin/[4a-z]* object/*o dcraw/*~ doc/*~ bin/*~ src/*/*~
|
||||
|
||||
### generated
|
||||
object/libraw_c_api.o: src/libraw_c_api.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_c_api.o src/libraw_c_api.cpp
|
||||
object/libraw_datastream.o: src/libraw_datastream.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/libraw_datastream.o src/libraw_datastream.cpp
|
||||
object/canon_600.o: src/decoders/canon_600.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon_600.o src/decoders/canon_600.cpp
|
||||
object/crx.o: src/decoders/crx.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/crx.o src/decoders/crx.cpp
|
||||
object/decoders_dcraw.o: src/decoders/decoders_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_dcraw.o src/decoders/decoders_dcraw.cpp
|
||||
object/decoders_libraw_dcrdefs.o: src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw_dcrdefs.o src/decoders/decoders_libraw_dcrdefs.cpp
|
||||
object/decoders_libraw.o: src/decoders/decoders_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoders_libraw.o src/decoders/decoders_libraw.cpp
|
||||
object/dng.o: src/decoders/dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dng.o src/decoders/dng.cpp
|
||||
object/fp_dng.o: src/decoders/fp_dng.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fp_dng.o src/decoders/fp_dng.cpp
|
||||
object/fuji_compressed.o: src/decoders/fuji_compressed.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji_compressed.o src/decoders/fuji_compressed.cpp
|
||||
object/generic.o: src/decoders/generic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/generic.o src/decoders/generic.cpp
|
||||
object/kodak_decoders.o: src/decoders/kodak_decoders.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak_decoders.o src/decoders/kodak_decoders.cpp
|
||||
object/load_mfbacks.o: src/decoders/load_mfbacks.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/load_mfbacks.o src/decoders/load_mfbacks.cpp
|
||||
object/smal.o: src/decoders/smal.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/smal.o src/decoders/smal.cpp
|
||||
object/unpack_thumb.o: src/decoders/unpack_thumb.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack_thumb.o src/decoders/unpack_thumb.cpp
|
||||
object/unpack.o: src/decoders/unpack.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/unpack.o src/decoders/unpack.cpp
|
||||
object/aahd_demosaic.o: src/demosaic/aahd_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aahd_demosaic.o src/demosaic/aahd_demosaic.cpp
|
||||
object/ahd_demosaic.o: src/demosaic/ahd_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ahd_demosaic.o src/demosaic/ahd_demosaic.cpp
|
||||
object/dcb_demosaic.o: src/demosaic/dcb_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcb_demosaic.o src/demosaic/dcb_demosaic.cpp
|
||||
object/dht_demosaic.o: src/demosaic/dht_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dht_demosaic.o src/demosaic/dht_demosaic.cpp
|
||||
object/misc_demosaic.o: src/demosaic/misc_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_demosaic.o src/demosaic/misc_demosaic.cpp
|
||||
object/xtrans_demosaic.o: src/demosaic/xtrans_demosaic.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/xtrans_demosaic.o src/demosaic/xtrans_demosaic.cpp
|
||||
object/dngsdk_glue.o: src/integration/dngsdk_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dngsdk_glue.o src/integration/dngsdk_glue.cpp
|
||||
object/rawspeed_glue.o: src/integration/rawspeed_glue.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/rawspeed_glue.o src/integration/rawspeed_glue.cpp
|
||||
object/adobepano.o: src/metadata/adobepano.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/adobepano.o src/metadata/adobepano.cpp
|
||||
object/canon.o: src/metadata/canon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/canon.o src/metadata/canon.cpp
|
||||
object/ciff.o: src/metadata/ciff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ciff.o src/metadata/ciff.cpp
|
||||
object/cr3_parser.o: src/metadata/cr3_parser.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cr3_parser.o src/metadata/cr3_parser.cpp
|
||||
object/epson.o: src/metadata/epson.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/epson.o src/metadata/epson.cpp
|
||||
object/exif_gps.o: src/metadata/exif_gps.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/exif_gps.o src/metadata/exif_gps.cpp
|
||||
object/fuji.o: src/metadata/fuji.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/fuji.o src/metadata/fuji.cpp
|
||||
object/identify_tools.o: src/metadata/identify_tools.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify_tools.o src/metadata/identify_tools.cpp
|
||||
object/identify.o: src/metadata/identify.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/identify.o src/metadata/identify.cpp
|
||||
object/kodak.o: src/metadata/kodak.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/kodak.o src/metadata/kodak.cpp
|
||||
object/leica.o: src/metadata/leica.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/leica.o src/metadata/leica.cpp
|
||||
object/makernotes.o: src/metadata/makernotes.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/makernotes.o src/metadata/makernotes.cpp
|
||||
object/mediumformat.o: src/metadata/mediumformat.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mediumformat.o src/metadata/mediumformat.cpp
|
||||
object/minolta.o: src/metadata/minolta.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/minolta.o src/metadata/minolta.cpp
|
||||
object/misc_parsers.o: src/metadata/misc_parsers.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/misc_parsers.o src/metadata/misc_parsers.cpp
|
||||
object/nikon.o: src/metadata/nikon.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/nikon.o src/metadata/nikon.cpp
|
||||
object/hasselblad_model.o: src/metadata/hasselblad_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/hasselblad_model.o src/metadata/hasselblad_model.cpp
|
||||
object/normalize_model.o: src/metadata/normalize_model.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/normalize_model.o src/metadata/normalize_model.cpp
|
||||
object/olympus.o: src/metadata/olympus.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/olympus.o src/metadata/olympus.cpp
|
||||
object/p1.o: src/metadata/p1.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/p1.o src/metadata/p1.cpp
|
||||
object/pentax.o: src/metadata/pentax.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/pentax.o src/metadata/pentax.cpp
|
||||
object/samsung.o: src/metadata/samsung.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/samsung.o src/metadata/samsung.cpp
|
||||
object/sony.o: src/metadata/sony.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/sony.o src/metadata/sony.cpp
|
||||
object/tiff.o: src/metadata/tiff.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff.o src/metadata/tiff.cpp
|
||||
object/aspect_ratio.o: src/postprocessing/aspect_ratio.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/aspect_ratio.o src/postprocessing/aspect_ratio.cpp
|
||||
object/dcraw_process.o: src/postprocessing/dcraw_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/dcraw_process.o src/postprocessing/dcraw_process.cpp
|
||||
object/mem_image.o: src/postprocessing/mem_image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/mem_image.o src/postprocessing/mem_image.cpp
|
||||
object/postprocessing_aux.o: src/postprocessing/postprocessing_aux.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_aux.o src/postprocessing/postprocessing_aux.cpp
|
||||
object/postprocessing_utils_dcrdefs.o: src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils_dcrdefs.o src/postprocessing/postprocessing_utils_dcrdefs.cpp
|
||||
object/postprocessing_utils.o: src/postprocessing/postprocessing_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/postprocessing_utils.o src/postprocessing/postprocessing_utils.cpp
|
||||
object/raw2image.o: src/preprocessing/raw2image.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/raw2image.o src/preprocessing/raw2image.cpp
|
||||
object/ext_preprocess.o: src/preprocessing/ext_preprocess.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/ext_preprocess.o src/preprocessing/ext_preprocess.cpp
|
||||
object/subtract_black.o: src/preprocessing/subtract_black.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/subtract_black.o src/preprocessing/subtract_black.cpp
|
||||
object/cameralist.o: src/tables/cameralist.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/cameralist.o src/tables/cameralist.cpp
|
||||
object/colorconst.o: src/tables/colorconst.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colorconst.o src/tables/colorconst.cpp
|
||||
object/colordata.o: src/tables/colordata.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/colordata.o src/tables/colordata.cpp
|
||||
object/wblists.o: src/tables/wblists.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/wblists.o src/tables/wblists.cpp
|
||||
object/curves.o: src/utils/curves.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/curves.o src/utils/curves.cpp
|
||||
object/decoder_info.o: src/utils/decoder_info.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/decoder_info.o src/utils/decoder_info.cpp
|
||||
object/init_close_utils.o: src/utils/init_close_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/init_close_utils.o src/utils/init_close_utils.cpp
|
||||
object/open.o: src/utils/open.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/open.o src/utils/open.cpp
|
||||
object/phaseone_processing.o: src/utils/phaseone_processing.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/phaseone_processing.o src/utils/phaseone_processing.cpp
|
||||
object/read_utils.o: src/utils/read_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/read_utils.o src/utils/read_utils.cpp
|
||||
object/thumb_utils.o: src/utils/thumb_utils.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/thumb_utils.o src/utils/thumb_utils.cpp
|
||||
object/utils_dcraw.o: src/utils/utils_dcraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_dcraw.o src/utils/utils_dcraw.cpp
|
||||
object/utils_libraw.o: src/utils/utils_libraw.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/utils_libraw.o src/utils/utils_libraw.cpp
|
||||
object/apply_profile.o: src/write/apply_profile.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/apply_profile.o src/write/apply_profile.cpp
|
||||
object/file_write.o: src/write/file_write.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/file_write.o src/write/file_write.cpp
|
||||
object/tiff_writer.o: src/write/tiff_writer.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/tiff_writer.o src/write/tiff_writer.cpp
|
||||
object/x3f_parse_process.o: src/x3f/x3f_parse_process.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_parse_process.o src/x3f/x3f_parse_process.cpp
|
||||
object/x3f_utils_patched.o: src/x3f/x3f_utils_patched.cpp
|
||||
${CXX} -c -DLIBRAW_NOTHREADS ${CFLAGS} -o object/x3f_utils_patched.o src/x3f/x3f_utils_patched.cpp
|
628
rtengine/libraw/Makefile.msvc
Normal file
628
rtengine/libraw/Makefile.msvc
Normal file
@@ -0,0 +1,628 @@
|
||||
# Additional compiler flags (OpenMP, SSEx, AVX, ...)
|
||||
|
||||
#COPT_OPT=/arch:SSE2 /arch:AVX
|
||||
|
||||
# Compile with RawSpeed support
|
||||
#CFLAGS_RAWSPEED=/DUSE_RAWSPEED /I"..\\RawSpeed" /I"..\\RawSpeed\include" /I"..\\RawSpeed\include\libjpeg"
|
||||
#LDFLAGS_RAWSPEED=..\RawSpeed\lib\rawspeed.lib ..\RawSpeed\lib\libxml2.lib ..\RawSpeed\lib\iconv.lib ..\RawSpeed\lib\charset.lib ..\RawSpeed\lib\turbojpeg-static.lib
|
||||
|
||||
# Compile with DNG SDK support
|
||||
#CFLAGS_DNG=/DUSE_DNGSDK /I"..\\dng_sdk\\source"
|
||||
#LDFLAGS_DNG=..\\dng_sdk\\release\\libdng.lib ..\\dng_sdk\\release\\XMPCore.lib
|
||||
# you may also need to specify zlib.lib and jpeg.lib in the line above
|
||||
|
||||
# LCMS 1.x support
|
||||
#LCMS_DEF=/DUSE_LCMS /DCMS_DLL /I..\lcms-1.19\include
|
||||
#LCMS_LIB=..\lcms-1.19\bin\lcms.lib
|
||||
|
||||
# LCMS 2.x support
|
||||
#LCMS_DEF=/DUSE_LCMS2 /DCMS_DLL /I..\lcms2-2.3\include
|
||||
#LCMS_LIB=..\lcms2-2.3\bin\lcms2_dll.lib
|
||||
|
||||
# JPEG support for DNG
|
||||
#JPEG_DEF=/DUSE_JPEG /I..\jpeg-8d
|
||||
#JPEG_LIB=..\jpeg-8d\Release\jpeg.lib
|
||||
|
||||
|
||||
SAMPLES=bin\raw-identify.exe bin\simple_dcraw.exe bin\dcraw_emu.exe bin\dcraw_half.exe \
|
||||
bin\half_mt.exe bin\mem_image.exe bin\unprocessed_raw.exe bin\4channels.exe \
|
||||
bin\multirender_test.exe bin\postprocessing_benchmark.exe bin\openbayer_sample.exe \
|
||||
bin\rawtextdump.exe
|
||||
|
||||
LIBSTATIC=lib\libraw_static.lib
|
||||
DLL=bin\libraw.dll
|
||||
LIBDLL=lib\libraw.lib
|
||||
|
||||
all: $(DLL) $(LIBSTATIC) $(SAMPLES)
|
||||
|
||||
$(LIBDLL): $(DLL)
|
||||
|
||||
# Guess LIBPATH from $INCLUDE
|
||||
|
||||
LIB_OBJECTS= object\libraw_datastream_st.obj object\libraw_c_api_st.obj \
|
||||
object\cameralist_st.obj object\fuji_compressed_st.obj \
|
||||
object\crx_st.obj object\fp_dng_st.obj object\decoders_libraw_st.obj \
|
||||
object\unpack_st.obj object\unpack_thumb_st.obj \
|
||||
object\rawspeed_glue_st.obj object\dngsdk_glue_st.obj \
|
||||
object\colorconst_st.obj object\utils_libraw_st.obj object\init_close_utils_st.obj \
|
||||
object\decoder_info_st.obj object\open_st.obj object\phaseone_processing_st.obj \
|
||||
object\thumb_utils_st.obj \
|
||||
object\tiff_writer_st.obj object\subtract_black_st.obj object\postprocessing_utils_st.obj \
|
||||
object\dcraw_process_st.obj object\raw2image_st.obj object\mem_image_st.obj \
|
||||
object\x3f_utils_patched_st.obj object\x3f_parse_process_st.obj \
|
||||
object\read_utils_st.obj object\curves_st.obj object\utils_dcraw_st.obj \
|
||||
object\colordata_st.obj \
|
||||
object\canon_600_st.obj object\decoders_dcraw_st.obj \
|
||||
object\decoders_libraw_dcrdefs_st.obj object\generic_st.obj \
|
||||
object\kodak_decoders_st.obj object\dng_st.obj object\smal_st.obj \
|
||||
object\load_mfbacks_st.obj \
|
||||
object\sony_st.obj object\nikon_st.obj object\samsung_st.obj object\cr3_parser_st.obj \
|
||||
object\canon_st.obj object\epson_st.obj object\olympus_st.obj object\leica_st.obj \
|
||||
object\fuji_st.obj object\adobepano_st.obj object\pentax_st.obj object\p1_st.obj \
|
||||
object\makernotes_st.obj object\exif_gps_st.obj object\kodak_st.obj \
|
||||
object\tiff_st.obj object\ciff_st.obj object\mediumformat_st.obj object\minolta_st.obj \
|
||||
object\identify_tools_st.obj \
|
||||
object\hasselblad_model_st.obj object\normalize_model_st.obj object\identify_st.obj \
|
||||
object\misc_parsers_st.obj object\wblists_st.obj \
|
||||
object\postprocessing_aux_st.obj object\postprocessing_utils_dcrdefs_st.obj \
|
||||
object\aspect_ratio_st.obj \
|
||||
object\misc_demosaic_st.obj object\xtrans_demosaic_st.obj object\ahd_demosaic_st.obj \
|
||||
object\dht_demosaic_st.obj object\aahd_demosaic_st.obj object\dcb_demosaic_st.obj \
|
||||
object\file_write_st.obj \
|
||||
object\ext_preprocess_st.obj object\apply_profile_st.obj
|
||||
|
||||
|
||||
DLL_OBJECTS= object\libraw_datastream.obj object\libraw_c_api.obj \
|
||||
object\cameralist.obj object\fuji_compressed.obj \
|
||||
object\crx.obj object\fp_dng.obj object\decoders_libraw.obj \
|
||||
object\unpack.obj object\unpack_thumb.obj \
|
||||
object\rawspeed_glue.obj object\dngsdk_glue.obj \
|
||||
object\colorconst.obj object\utils_libraw.obj \
|
||||
object\init_close_utils.obj \
|
||||
object\decoder_info.obj object\open.obj object\phaseone_processing.obj \
|
||||
object\thumb_utils.obj \
|
||||
object\tiff_writer.obj object\subtract_black.obj \
|
||||
object\postprocessing_utils.obj object\dcraw_process.obj \
|
||||
object\raw2image.obj object\mem_image.obj \
|
||||
object\x3f_utils_patched.obj object\x3f_parse_process.obj \
|
||||
object\read_utils.obj object\curves.obj object\utils_dcraw.obj \
|
||||
object\colordata.obj \
|
||||
object\canon_600.obj object\decoders_dcraw.obj \
|
||||
object\decoders_libraw_dcrdefs.obj object\generic.obj \
|
||||
object\kodak_decoders.obj object\dng.obj object\smal.obj \
|
||||
object\load_mfbacks.obj \
|
||||
object\sony.obj object\nikon.obj object\samsung.obj \
|
||||
object\cr3_parser.obj object\canon.obj object\epson.obj \
|
||||
object\olympus.obj object\leica.obj \
|
||||
object\fuji.obj object\adobepano.obj object\pentax.obj object\p1.obj \
|
||||
object\makernotes.obj object\exif_gps.obj object\kodak.obj \
|
||||
object\tiff.obj object\ciff.obj object\mediumformat.obj \
|
||||
object\minolta.obj \
|
||||
object\identify_tools.obj \
|
||||
object\hasselblad_model.obj object\normalize_model.obj object\identify.obj \
|
||||
object\misc_parsers.obj object\wblists.obj \
|
||||
object\postprocessing_aux.obj object\postprocessing_utils_dcrdefs.obj \
|
||||
object\aspect_ratio.obj \
|
||||
object\misc_demosaic.obj object\xtrans_demosaic.obj \
|
||||
object\ahd_demosaic.obj object\dht_demosaic.obj \
|
||||
object\aahd_demosaic.obj object\dcb_demosaic.obj \
|
||||
object\file_write.obj \
|
||||
object\ext_preprocess.obj object\apply_profile.obj
|
||||
|
||||
|
||||
CC=cl.exe
|
||||
COPT=/EHsc /MP /MD /I. /DWIN32 /O2 /W0 /nologo $(COPT_OPT) $(CFLAGSG2) $(CFLAGSG3) $(LCMS_DEF) $(JPEG_DEF) $(CFLAGS_RAWSPEED) $(CFLAGS_DNG)
|
||||
|
||||
LINKLIB=$(LIBDLL) $(LDFLAGS_RAWSPEED) $(LDFLAGS_DNG)
|
||||
|
||||
|
||||
|
||||
# Samples - default to dynamic (DLL) link, uncomment next lines
|
||||
#CFLAGS2=/DLIBRAW_NODLL
|
||||
#LINKLIB=$(LIBSTATIC)
|
||||
|
||||
bin\raw-identify.exe: $(LINKLIB) samples\raw-identify.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\raw-identify.exe" /Fo"object\\" samples\raw-identify.cpp $(LINKLIB)
|
||||
|
||||
bin\unprocessed_raw.exe: $(LINKLIB) samples\unprocessed_raw.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\unprocessed_raw.exe" /Fo"object\\" samples\unprocessed_raw.cpp $(LINKLIB) ws2_32.lib
|
||||
|
||||
bin\4channels.exe: $(LINKLIB) samples\4channels.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\4channels.exe" /Fo"object\\" samples\4channels.cpp $(LINKLIB)
|
||||
|
||||
bin\rawtextdump.exe: $(LINKLIB) samples\rawtextdump.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\rawtextdump.exe" /Fo"object\\" samples\rawtextdump.cpp $(LINKLIB)
|
||||
|
||||
bin\simple_dcraw.exe: $(LINKLIB) samples\simple_dcraw.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\simple_dcraw.exe" /Fo"object\\" samples\simple_dcraw.cpp $(LINKLIB)
|
||||
|
||||
bin\postprocessing_benchmark.exe: $(LINKLIB) samples\postprocessing_benchmark.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\postprocessing_benchmark.exe" /Fo"object\\" samples\postprocessing_benchmark.cpp $(LINKLIB)
|
||||
|
||||
bin\multirender_test.exe: $(LINKLIB) samples\multirender_test.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\multirender_test.exe" /Fo"object\\" samples\multirender_test.cpp $(LINKLIB)
|
||||
|
||||
bin\openbayer_sample.exe: $(LINKLIB) samples\openbayer_sample.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\openbayer_sample.exe" /Fo"object\\" samples\openbayer_sample.cpp $(LINKLIB)
|
||||
|
||||
bin\mem_image.exe: $(LINKLIB) samples\mem_image_sample.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\mem_image.exe" /Fo"object\\" samples\mem_image_sample.cpp $(LINKLIB)
|
||||
|
||||
bin\dcraw_emu.exe: $(LINKLIB) samples\dcraw_emu.cpp
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\dcraw_emu.exe" /Fo"object\\" samples\dcraw_emu.cpp $(LINKLIB)
|
||||
|
||||
bin\dcraw_half.exe: $(LINKLIB) samples\dcraw_half.c
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\dcraw_half.exe" /Fo"object\\" samples\dcraw_half.c $(LINKLIB)
|
||||
|
||||
bin\half_mt.exe: $(LINKLIB) samples\half_mt_win32.c
|
||||
$(CC) $(COPT) $(CFLAGS2) /Fe"bin\\half_mt.exe" /Fo"object\\" samples\half_mt_win32.c $(LINKLIB)
|
||||
|
||||
# DLL build
|
||||
|
||||
$(DLL): $(DLL_OBJECTS)
|
||||
-del /f $(DLL) $(LIBDLL)
|
||||
cl $(COPT) /LD $(DLL_OBJECTS) $(LDFLAGS_RAWSPEED) $(LDFLAGS_DNG) $(LCMS_LIB) $(JPEG_LIB) /link /out:"$(DLL)" /implib:"$(LIBDLL)"
|
||||
|
||||
# LIBRARY BUILD
|
||||
$(LIBSTATIC): $(LIB_OBJECTS)
|
||||
-del /f $(LIBSTATIC)
|
||||
lib /OUT:$(LIBSTATIC) /LTCG $(LIB_OBJECTS)
|
||||
|
||||
# clean
|
||||
clean:
|
||||
-del $(LIBSTATIC) $(LIBDLL) lib\*.exp
|
||||
-del $(LIB_OBJECTS) $(DLL_OBJECTS)
|
||||
-del object\*.o
|
||||
-del $(DLL) $(SAMPLES)
|
||||
|
||||
# OBJ generation rules
|
||||
object\canon_600_st.obj: src\decoders\canon_600.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\canon_600_st.obj" /c src\decoders\canon_600.cpp
|
||||
|
||||
object\canon_600.obj: src\decoders\canon_600.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\canon_600.obj" /c src\decoders\canon_600.cpp
|
||||
|
||||
object\crx_st.obj: src\decoders\crx.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\crx_st.obj" /c src\decoders\crx.cpp
|
||||
|
||||
object\crx.obj: src\decoders\crx.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\crx.obj" /c src\decoders\crx.cpp
|
||||
|
||||
object\decoders_dcraw_st.obj: src\decoders\decoders_dcraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\decoders_dcraw_st.obj" /c src\decoders\decoders_dcraw.cpp
|
||||
|
||||
object\decoders_dcraw.obj: src\decoders\decoders_dcraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\decoders_dcraw.obj" /c src\decoders\decoders_dcraw.cpp
|
||||
|
||||
object\decoders_libraw_dcrdefs_st.obj: src\decoders\decoders_libraw_dcrdefs.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\decoders_libraw_dcrdefs_st.obj" /c src\decoders\decoders_libraw_dcrdefs.cpp
|
||||
|
||||
object\decoders_libraw_dcrdefs.obj: src\decoders\decoders_libraw_dcrdefs.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\decoders_libraw_dcrdefs.obj" /c src\decoders\decoders_libraw_dcrdefs.cpp
|
||||
|
||||
object\decoders_libraw_st.obj: src\decoders\decoders_libraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\decoders_libraw_st.obj" /c src\decoders\decoders_libraw.cpp
|
||||
|
||||
object\decoders_libraw.obj: src\decoders\decoders_libraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\decoders_libraw.obj" /c src\decoders\decoders_libraw.cpp
|
||||
|
||||
object\dng_st.obj: src\decoders\dng.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\dng_st.obj" /c src\decoders\dng.cpp
|
||||
|
||||
object\dng.obj: src\decoders\dng.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\dng.obj" /c src\decoders\dng.cpp
|
||||
|
||||
object\fp_dng_st.obj: src\decoders\fp_dng.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\fp_dng_st.obj" /c src\decoders\fp_dng.cpp
|
||||
|
||||
object\fp_dng.obj: src\decoders\fp_dng.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\fp_dng.obj" /c src\decoders\fp_dng.cpp
|
||||
|
||||
object\fuji_compressed_st.obj: src\decoders\fuji_compressed.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\fuji_compressed_st.obj" /c src\decoders\fuji_compressed.cpp
|
||||
|
||||
object\fuji_compressed.obj: src\decoders\fuji_compressed.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\fuji_compressed.obj" /c src\decoders\fuji_compressed.cpp
|
||||
|
||||
object\generic_st.obj: src\decoders\generic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\generic_st.obj" /c src\decoders\generic.cpp
|
||||
|
||||
object\generic.obj: src\decoders\generic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\generic.obj" /c src\decoders\generic.cpp
|
||||
|
||||
object\kodak_decoders_st.obj: src\decoders\kodak_decoders.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\kodak_decoders_st.obj" /c src\decoders\kodak_decoders.cpp
|
||||
|
||||
object\kodak_decoders.obj: src\decoders\kodak_decoders.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\kodak_decoders.obj" /c src\decoders\kodak_decoders.cpp
|
||||
|
||||
object\load_mfbacks_st.obj: src\decoders\load_mfbacks.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\load_mfbacks_st.obj" /c src\decoders\load_mfbacks.cpp
|
||||
|
||||
object\load_mfbacks.obj: src\decoders\load_mfbacks.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\load_mfbacks.obj" /c src\decoders\load_mfbacks.cpp
|
||||
|
||||
object\smal_st.obj: src\decoders\smal.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\smal_st.obj" /c src\decoders\smal.cpp
|
||||
|
||||
object\smal.obj: src\decoders\smal.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\smal.obj" /c src\decoders\smal.cpp
|
||||
|
||||
object\unpack_thumb_st.obj: src\decoders\unpack_thumb.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\unpack_thumb_st.obj" /c src\decoders\unpack_thumb.cpp
|
||||
|
||||
object\unpack_thumb.obj: src\decoders\unpack_thumb.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\unpack_thumb.obj" /c src\decoders\unpack_thumb.cpp
|
||||
|
||||
object\unpack_st.obj: src\decoders\unpack.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\unpack_st.obj" /c src\decoders\unpack.cpp
|
||||
|
||||
object\unpack.obj: src\decoders\unpack.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\unpack.obj" /c src\decoders\unpack.cpp
|
||||
|
||||
object\aahd_demosaic_st.obj: src\demosaic\aahd_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\aahd_demosaic_st.obj" /c src\demosaic\aahd_demosaic.cpp
|
||||
|
||||
object\aahd_demosaic.obj: src\demosaic\aahd_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\aahd_demosaic.obj" /c src\demosaic\aahd_demosaic.cpp
|
||||
|
||||
object\ahd_demosaic_st.obj: src\demosaic\ahd_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\ahd_demosaic_st.obj" /c src\demosaic\ahd_demosaic.cpp
|
||||
|
||||
object\ahd_demosaic.obj: src\demosaic\ahd_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\ahd_demosaic.obj" /c src\demosaic\ahd_demosaic.cpp
|
||||
|
||||
object\dcb_demosaic_st.obj: src\demosaic\dcb_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\dcb_demosaic_st.obj" /c src\demosaic\dcb_demosaic.cpp
|
||||
|
||||
object\dcb_demosaic.obj: src\demosaic\dcb_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\dcb_demosaic.obj" /c src\demosaic\dcb_demosaic.cpp
|
||||
|
||||
object\dht_demosaic_st.obj: src\demosaic\dht_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\dht_demosaic_st.obj" /c src\demosaic\dht_demosaic.cpp
|
||||
|
||||
object\dht_demosaic.obj: src\demosaic\dht_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\dht_demosaic.obj" /c src\demosaic\dht_demosaic.cpp
|
||||
|
||||
object\misc_demosaic_st.obj: src\demosaic\misc_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\misc_demosaic_st.obj" /c src\demosaic\misc_demosaic.cpp
|
||||
|
||||
object\misc_demosaic.obj: src\demosaic\misc_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\misc_demosaic.obj" /c src\demosaic\misc_demosaic.cpp
|
||||
|
||||
object\xtrans_demosaic_st.obj: src\demosaic\xtrans_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\xtrans_demosaic_st.obj" /c src\demosaic\xtrans_demosaic.cpp
|
||||
|
||||
object\xtrans_demosaic.obj: src\demosaic\xtrans_demosaic.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\xtrans_demosaic.obj" /c src\demosaic\xtrans_demosaic.cpp
|
||||
|
||||
object\dngsdk_glue_st.obj: src\integration\dngsdk_glue.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\dngsdk_glue_st.obj" /c src\integration\dngsdk_glue.cpp
|
||||
|
||||
object\dngsdk_glue.obj: src\integration\dngsdk_glue.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\dngsdk_glue.obj" /c src\integration\dngsdk_glue.cpp
|
||||
|
||||
object\rawspeed_glue_st.obj: src\integration\rawspeed_glue.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\rawspeed_glue_st.obj" /c src\integration\rawspeed_glue.cpp
|
||||
|
||||
object\rawspeed_glue.obj: src\integration\rawspeed_glue.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\rawspeed_glue.obj" /c src\integration\rawspeed_glue.cpp
|
||||
|
||||
object\adobepano_st.obj: src\metadata\adobepano.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\adobepano_st.obj" /c src\metadata\adobepano.cpp
|
||||
|
||||
object\adobepano.obj: src\metadata\adobepano.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\adobepano.obj" /c src\metadata\adobepano.cpp
|
||||
|
||||
object\canon_st.obj: src\metadata\canon.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\canon_st.obj" /c src\metadata\canon.cpp
|
||||
|
||||
object\canon.obj: src\metadata\canon.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\canon.obj" /c src\metadata\canon.cpp
|
||||
|
||||
object\ciff_st.obj: src\metadata\ciff.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\ciff_st.obj" /c src\metadata\ciff.cpp
|
||||
|
||||
object\ciff.obj: src\metadata\ciff.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\ciff.obj" /c src\metadata\ciff.cpp
|
||||
|
||||
object\cr3_parser_st.obj: src\metadata\cr3_parser.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\cr3_parser_st.obj" /c src\metadata\cr3_parser.cpp
|
||||
|
||||
object\cr3_parser.obj: src\metadata\cr3_parser.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\cr3_parser.obj" /c src\metadata\cr3_parser.cpp
|
||||
|
||||
object\epson_st.obj: src\metadata\epson.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\epson_st.obj" /c src\metadata\epson.cpp
|
||||
|
||||
object\epson.obj: src\metadata\epson.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\epson.obj" /c src\metadata\epson.cpp
|
||||
|
||||
object\exif_gps_st.obj: src\metadata\exif_gps.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\exif_gps_st.obj" /c src\metadata\exif_gps.cpp
|
||||
|
||||
object\exif_gps.obj: src\metadata\exif_gps.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\exif_gps.obj" /c src\metadata\exif_gps.cpp
|
||||
|
||||
object\fuji_st.obj: src\metadata\fuji.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\fuji_st.obj" /c src\metadata\fuji.cpp
|
||||
|
||||
object\fuji.obj: src\metadata\fuji.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\fuji.obj" /c src\metadata\fuji.cpp
|
||||
|
||||
object\identify_tools_st.obj: src\metadata\identify_tools.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\identify_tools_st.obj" /c src\metadata\identify_tools.cpp
|
||||
|
||||
object\identify_tools.obj: src\metadata\identify_tools.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\identify_tools.obj" /c src\metadata\identify_tools.cpp
|
||||
|
||||
object\identify_st.obj: src\metadata\identify.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\identify_st.obj" /c src\metadata\identify.cpp
|
||||
|
||||
object\identify.obj: src\metadata\identify.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\identify.obj" /c src\metadata\identify.cpp
|
||||
|
||||
object\kodak_st.obj: src\metadata\kodak.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\kodak_st.obj" /c src\metadata\kodak.cpp
|
||||
|
||||
object\kodak.obj: src\metadata\kodak.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\kodak.obj" /c src\metadata\kodak.cpp
|
||||
|
||||
object\leica_st.obj: src\metadata\leica.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\leica_st.obj" /c src\metadata\leica.cpp
|
||||
|
||||
object\leica.obj: src\metadata\leica.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\leica.obj" /c src\metadata\leica.cpp
|
||||
|
||||
object\makernotes_st.obj: src\metadata\makernotes.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\makernotes_st.obj" /c src\metadata\makernotes.cpp
|
||||
|
||||
object\makernotes.obj: src\metadata\makernotes.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\makernotes.obj" /c src\metadata\makernotes.cpp
|
||||
|
||||
object\mediumformat_st.obj: src\metadata\mediumformat.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\mediumformat_st.obj" /c src\metadata\mediumformat.cpp
|
||||
|
||||
object\mediumformat.obj: src\metadata\mediumformat.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\mediumformat.obj" /c src\metadata\mediumformat.cpp
|
||||
|
||||
object\minolta_st.obj: src\metadata\minolta.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\minolta_st.obj" /c src\metadata\minolta.cpp
|
||||
|
||||
object\minolta.obj: src\metadata\minolta.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\minolta.obj" /c src\metadata\minolta.cpp
|
||||
|
||||
object\misc_parsers_st.obj: src\metadata\misc_parsers.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\misc_parsers_st.obj" /c src\metadata\misc_parsers.cpp
|
||||
|
||||
object\misc_parsers.obj: src\metadata\misc_parsers.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\misc_parsers.obj" /c src\metadata\misc_parsers.cpp
|
||||
|
||||
object\nikon_st.obj: src\metadata\nikon.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\nikon_st.obj" /c src\metadata\nikon.cpp
|
||||
|
||||
object\nikon.obj: src\metadata\nikon.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\nikon.obj" /c src\metadata\nikon.cpp
|
||||
|
||||
object\hasselblad_model_st.obj: src\metadata\hasselblad_model.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\hasselblad_model_st.obj" /c src\metadata\hasselblad_model.cpp
|
||||
|
||||
object\hasselblad_model.obj: src\metadata\hasselblad_model.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\hasselblad_model.obj" /c src\metadata\hasselblad_model.cpp
|
||||
|
||||
object\normalize_model_st.obj: src\metadata\normalize_model.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\normalize_model_st.obj" /c src\metadata\normalize_model.cpp
|
||||
|
||||
object\normalize_model.obj: src\metadata\normalize_model.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\normalize_model.obj" /c src\metadata\normalize_model.cpp
|
||||
|
||||
object\olympus_st.obj: src\metadata\olympus.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\olympus_st.obj" /c src\metadata\olympus.cpp
|
||||
|
||||
object\olympus.obj: src\metadata\olympus.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\olympus.obj" /c src\metadata\olympus.cpp
|
||||
|
||||
object\p1_st.obj: src\metadata\p1.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\p1_st.obj" /c src\metadata\p1.cpp
|
||||
|
||||
object\p1.obj: src\metadata\p1.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\p1.obj" /c src\metadata\p1.cpp
|
||||
|
||||
object\pentax_st.obj: src\metadata\pentax.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\pentax_st.obj" /c src\metadata\pentax.cpp
|
||||
|
||||
object\pentax.obj: src\metadata\pentax.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\pentax.obj" /c src\metadata\pentax.cpp
|
||||
|
||||
object\samsung_st.obj: src\metadata\samsung.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\samsung_st.obj" /c src\metadata\samsung.cpp
|
||||
|
||||
object\samsung.obj: src\metadata\samsung.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\samsung.obj" /c src\metadata\samsung.cpp
|
||||
|
||||
object\sony_st.obj: src\metadata\sony.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\sony_st.obj" /c src\metadata\sony.cpp
|
||||
|
||||
object\sony.obj: src\metadata\sony.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\sony.obj" /c src\metadata\sony.cpp
|
||||
|
||||
object\tiff_st.obj: src\metadata\tiff.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\tiff_st.obj" /c src\metadata\tiff.cpp
|
||||
|
||||
object\tiff.obj: src\metadata\tiff.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\tiff.obj" /c src\metadata\tiff.cpp
|
||||
|
||||
object\aspect_ratio_st.obj: src\postprocessing\aspect_ratio.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\aspect_ratio_st.obj" /c src\postprocessing\aspect_ratio.cpp
|
||||
|
||||
object\aspect_ratio.obj: src\postprocessing\aspect_ratio.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\aspect_ratio.obj" /c src\postprocessing\aspect_ratio.cpp
|
||||
|
||||
object\dcraw_process_st.obj: src\postprocessing\dcraw_process.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\dcraw_process_st.obj" /c src\postprocessing\dcraw_process.cpp
|
||||
|
||||
object\dcraw_process.obj: src\postprocessing\dcraw_process.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\dcraw_process.obj" /c src\postprocessing\dcraw_process.cpp
|
||||
|
||||
object\mem_image_st.obj: src\postprocessing\mem_image.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\mem_image_st.obj" /c src\postprocessing\mem_image.cpp
|
||||
|
||||
object\mem_image.obj: src\postprocessing\mem_image.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\mem_image.obj" /c src\postprocessing\mem_image.cpp
|
||||
|
||||
object\postprocessing_aux_st.obj: src\postprocessing\postprocessing_aux.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_aux_st.obj" /c src\postprocessing\postprocessing_aux.cpp
|
||||
|
||||
object\postprocessing_aux.obj: src\postprocessing\postprocessing_aux.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_aux.obj" /c src\postprocessing\postprocessing_aux.cpp
|
||||
|
||||
object\postprocessing_utils_dcrdefs_st.obj: src\postprocessing\postprocessing_utils_dcrdefs.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_utils_dcrdefs_st.obj" /c src\postprocessing\postprocessing_utils_dcrdefs.cpp
|
||||
|
||||
object\postprocessing_utils_dcrdefs.obj: src\postprocessing\postprocessing_utils_dcrdefs.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_utils_dcrdefs.obj" /c src\postprocessing\postprocessing_utils_dcrdefs.cpp
|
||||
|
||||
object\postprocessing_utils_st.obj: src\postprocessing\postprocessing_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_utils_st.obj" /c src\postprocessing\postprocessing_utils.cpp
|
||||
|
||||
object\postprocessing_utils.obj: src\postprocessing\postprocessing_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\postprocessing_utils.obj" /c src\postprocessing\postprocessing_utils.cpp
|
||||
|
||||
object\ext_preprocess_st.obj: src\preprocessing\ext_preprocess.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\ext_preprocess_st.obj" /c src\preprocessing\ext_preprocess.cpp
|
||||
|
||||
object\ext_preprocess.obj: src\preprocessing\ext_preprocess.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\ext_preprocess.obj" /c src\preprocessing\ext_preprocess.cpp
|
||||
|
||||
object\raw2image_st.obj: src\preprocessing\raw2image.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\raw2image_st.obj" /c src\preprocessing\raw2image.cpp
|
||||
|
||||
object\raw2image.obj: src\preprocessing\raw2image.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\raw2image.obj" /c src\preprocessing\raw2image.cpp
|
||||
|
||||
object\subtract_black_st.obj: src\preprocessing\subtract_black.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\subtract_black_st.obj" /c src\preprocessing\subtract_black.cpp
|
||||
|
||||
object\subtract_black.obj: src\preprocessing\subtract_black.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\subtract_black.obj" /c src\preprocessing\subtract_black.cpp
|
||||
|
||||
object\cameralist_st.obj: src\tables\cameralist.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\cameralist_st.obj" /c src\tables\cameralist.cpp
|
||||
|
||||
object\cameralist.obj: src\tables\cameralist.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\cameralist.obj" /c src\tables\cameralist.cpp
|
||||
|
||||
object\colorconst_st.obj: src\tables\colorconst.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\colorconst_st.obj" /c src\tables\colorconst.cpp
|
||||
|
||||
object\colorconst.obj: src\tables\colorconst.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\colorconst.obj" /c src\tables\colorconst.cpp
|
||||
|
||||
object\colordata_st.obj: src\tables\colordata.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\colordata_st.obj" /c src\tables\colordata.cpp
|
||||
|
||||
object\colordata.obj: src\tables\colordata.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\colordata.obj" /c src\tables\colordata.cpp
|
||||
|
||||
object\wblists_st.obj: src\tables\wblists.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\wblists_st.obj" /c src\tables\wblists.cpp
|
||||
|
||||
object\wblists.obj: src\tables\wblists.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\wblists.obj" /c src\tables\wblists.cpp
|
||||
|
||||
object\curves_st.obj: src\utils\curves.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\curves_st.obj" /c src\utils\curves.cpp
|
||||
|
||||
object\curves.obj: src\utils\curves.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\curves.obj" /c src\utils\curves.cpp
|
||||
|
||||
object\decoder_info_st.obj: src\utils\decoder_info.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\decoder_info_st.obj" /c src\utils\decoder_info.cpp
|
||||
|
||||
object\decoder_info.obj: src\utils\decoder_info.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\decoder_info.obj" /c src\utils\decoder_info.cpp
|
||||
|
||||
object\init_close_utils_st.obj: src\utils\init_close_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\init_close_utils_st.obj" /c src\utils\init_close_utils.cpp
|
||||
|
||||
object\init_close_utils.obj: src\utils\init_close_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\init_close_utils.obj" /c src\utils\init_close_utils.cpp
|
||||
|
||||
object\open_st.obj: src\utils\open.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\open_st.obj" /c src\utils\open.cpp
|
||||
|
||||
object\open.obj: src\utils\open.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\open.obj" /c src\utils\open.cpp
|
||||
|
||||
object\phaseone_processing_st.obj: src\utils\phaseone_processing.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\phaseone_processing_st.obj" /c src\utils\phaseone_processing.cpp
|
||||
|
||||
object\phaseone_processing.obj: src\utils\phaseone_processing.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\phaseone_processing.obj" /c src\utils\phaseone_processing.cpp
|
||||
|
||||
object\read_utils_st.obj: src\utils\read_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\read_utils_st.obj" /c src\utils\read_utils.cpp
|
||||
|
||||
object\read_utils.obj: src\utils\read_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\read_utils.obj" /c src\utils\read_utils.cpp
|
||||
|
||||
object\thumb_utils_st.obj: src\utils\thumb_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\thumb_utils_st.obj" /c src\utils\thumb_utils.cpp
|
||||
|
||||
object\thumb_utils.obj: src\utils\thumb_utils.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\thumb_utils.obj" /c src\utils\thumb_utils.cpp
|
||||
|
||||
object\utils_dcraw_st.obj: src\utils\utils_dcraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\utils_dcraw_st.obj" /c src\utils\utils_dcraw.cpp
|
||||
|
||||
object\utils_dcraw.obj: src\utils\utils_dcraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\utils_dcraw.obj" /c src\utils\utils_dcraw.cpp
|
||||
|
||||
object\utils_libraw_st.obj: src\utils\utils_libraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\utils_libraw_st.obj" /c src\utils\utils_libraw.cpp
|
||||
|
||||
object\utils_libraw.obj: src\utils\utils_libraw.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\utils_libraw.obj" /c src\utils\utils_libraw.cpp
|
||||
|
||||
object\apply_profile_st.obj: src\write\apply_profile.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\apply_profile_st.obj" /c src\write\apply_profile.cpp
|
||||
|
||||
object\apply_profile.obj: src\write\apply_profile.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\apply_profile.obj" /c src\write\apply_profile.cpp
|
||||
|
||||
object\file_write_st.obj: src\write\file_write.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\file_write_st.obj" /c src\write\file_write.cpp
|
||||
|
||||
object\file_write.obj: src\write\file_write.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\file_write.obj" /c src\write\file_write.cpp
|
||||
|
||||
object\tiff_writer_st.obj: src\write\tiff_writer.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\tiff_writer_st.obj" /c src\write\tiff_writer.cpp
|
||||
|
||||
object\tiff_writer.obj: src\write\tiff_writer.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\tiff_writer.obj" /c src\write\tiff_writer.cpp
|
||||
|
||||
object\x3f_parse_process_st.obj: src\x3f\x3f_parse_process.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\x3f_parse_process_st.obj" /c src\x3f\x3f_parse_process.cpp
|
||||
|
||||
object\x3f_parse_process.obj: src\x3f\x3f_parse_process.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\x3f_parse_process.obj" /c src\x3f\x3f_parse_process.cpp
|
||||
|
||||
object\x3f_utils_patched_st.obj: src\x3f\x3f_utils_patched.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\x3f_utils_patched_st.obj" /c src\x3f\x3f_utils_patched.cpp
|
||||
|
||||
object\x3f_utils_patched.obj: src\x3f\x3f_utils_patched.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\x3f_utils_patched.obj" /c src\x3f\x3f_utils_patched.cpp
|
||||
|
||||
object\libraw_c_api_st.obj: src\libraw_c_api.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\libraw_c_api_st.obj" /c src\libraw_c_api.cpp
|
||||
|
||||
object\libraw_c_api.obj: src\libraw_c_api.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\libraw_c_api.obj" /c src\libraw_c_api.cpp
|
||||
|
||||
object\libraw_datastream_st.obj: src\libraw_datastream.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_NODLL /DLIBRAW_BUILDLIB /Fo"object\\libraw_datastream_st.obj" /c src\libraw_datastream.cpp
|
||||
|
||||
object\libraw_datastream.obj: src\libraw_datastream.cpp
|
||||
$(CC) $(COPT) /DLIBRAW_BUILDLIB /Fo"object\\libraw_datastream.obj" /c src\libraw_datastream.cpp
|
||||
|
43
rtengine/libraw/README.DNGSDK.txt
Normal file
43
rtengine/libraw/README.DNGSDK.txt
Normal file
@@ -0,0 +1,43 @@
|
||||
LibRaw can decode most common DNG formats (Bayer/Linear, 16-bit integer and
|
||||
floating point) by itself (you need to use zlib for deflate decompression
|
||||
support and libjpeg for lossy compressed DNGs).
|
||||
|
||||
Some rare flavours of DNG files (e.g. for 8-bit files) are not implemented in
|
||||
LibRaw. These files never come from camera or DNG files created by
|
||||
Adobe DNG Converter, but created by some processing software that uses DNG as
|
||||
intermediate format.
|
||||
|
||||
To decode such files you need to compile LibRaw with Adobe DNG SDK. This SDK
|
||||
to be used internally, standard LibRaw API remains untouched (you may specify
|
||||
what kinds of DNG files you want to decode via Adobe code, see below).
|
||||
|
||||
To build LibRaw with DNG SDK specify USE_DNGSDK in defines and adjust
|
||||
include/linker path settings to point to DNG SDK's include and library folders.
|
||||
|
||||
DNG SDK Version compatibility:
|
||||
- Since LibRaw 0.20, DNG SDK 1.4 is required (DNG SDK 1.5 may work too, but
|
||||
have not tested w/ LibRaw).
|
||||
- There are several DNG SDK 1.4 versions circulated, the oldest known is
|
||||
dated May 2012, you'll need the last one (dated June 2015).
|
||||
- This version is available from Adobe site:
|
||||
http://download.adobe.com/pub/adobe/dng/dng_sdk_1_4.zip
|
||||
|
||||
In your application
|
||||
|
||||
* create dng_host object (or derived object, e.g. with multithreaded) entity in your program;
|
||||
* pass it to LibRaw via LibRaw::set_dng_host(dng_host *) call to enable DNG SDK use on runtime
|
||||
* adjust imgdata.rawparams.use_dngsdk parameter with one of this values
|
||||
(ORed bitwise):
|
||||
LIBRAW_DNG_NONE - do not use DNG SDK for DNG processing
|
||||
LIBRAW_DNG_FLOAT - process floating point DNGs via Adobe DNG SDK
|
||||
LIBRAW_DNG_LINEAR - process 'linear DNG' (i.e. demosaiced)
|
||||
LIBRAW_DNG_DEFLATE - process DNGs compressed with deflate (gzip)
|
||||
LIBRAW_DNG_XTRANS - process Fuji X-Trans DNGs (6x6 CFA)
|
||||
LIBRAW_DNG_OTHER - process other files (so usual 2x2 bayer)
|
||||
LIBRAW_DNG_8BIT - process 8bit DNGs (e.g. JPEG compressed ones)
|
||||
|
||||
Default value for this field:
|
||||
LIBRAW_DNG_DEFAULT=LIBRAW_DNG_FLOAT|LIBRAW_DNG_LINEAR|LIBRAW_DNG_DEFLATE | LIBRAW_DNG_8BIT
|
||||
|
||||
You also may use this macro to pass all supported DNGs to Adobe SDK:
|
||||
LIBRAW_DNG_ALL = LIBRAW_DNG_FLOAT|LIBRAW_DNG_LINEAR|LIBRAW_DNG_XTRANS|LIBRAW_DNG_OTHER | LIBRAW_DNG_8BIT
|
112
rtengine/libraw/README.GoPro.txt
Normal file
112
rtengine/libraw/README.GoPro.txt
Normal file
@@ -0,0 +1,112 @@
|
||||
GoPro HERO/Fusion .GPR files are DNG files by nature, but with own wavelet-based codec.
|
||||
|
||||
GoPro provides GPR SDK for reading these files, available at https://github.com/gopro/gpr
|
||||
|
||||
LibRaw is able to use this GPR SDK to read GoPro HERO/Fusion files.
|
||||
|
||||
To enable this support:
|
||||
|
||||
1. Build GPR SDK (see NOTES section below)
|
||||
2. Build LibRaw with -DUSE_DNGSDK and -DUSE_GPRSDK compiler flags
|
||||
(you'll need to adjust INCLUDE path and linker flags to add GPR SDK files to compile/link).
|
||||
|
||||
|
||||
NOTES:
|
||||
I. GPR SDK comes with (patched) Adobe DNG SDK source (v1.4 but outdated).
|
||||
This DNG SDK is *NOT* compatible with LibRaw since 0.20 due to
|
||||
internals change .
|
||||
|
||||
II. So, you need to patch latest Adobe DNG SDK v1.4 (dated 2015), this version
|
||||
is available from Adobe:
|
||||
http://download.adobe.com/pub/adobe/dng/dng_sdk_1_4.zip
|
||||
or use Adobe DNG SDK v1.6
|
||||
|
||||
(most likely, this apply for v1.5 too, but not tested/checked):
|
||||
|
||||
a) For Adobe DNG SDK v1.4 you'll need to enable dng_ifd.fCompression value == 9 in
|
||||
dng_ifd::IsValidCFA() call
|
||||
Use provided patch: LibRaw/GoPro/dng-sdk-1_4-allow-VC5-validate.diff
|
||||
(it may not apply to any Adobe DNG SDK version, if so apply it by hands).
|
||||
|
||||
This compression type is already handled (passed via validation)
|
||||
in Adobe DNG SDK v1.6
|
||||
|
||||
b) Adobe DNG SDK v1.6 defines the ccVc5 constant in dng_tag_values.h
|
||||
so GPR SDK's gpr_read_image.cpp will not compile due to constant redefinition
|
||||
so use provided patch: LibRaw/GoPro/dng-sdk-1_6-hide-ccVc5-definitiion.diff
|
||||
to use Adobe's definitiion
|
||||
|
||||
c) Newer (than supplied w/ GPR SDK) Adobe SDK versions changes
|
||||
dng_read_image::ReadTile interface, please apply patches
|
||||
LibRaw/GoPro/gpr_read_image.cpp.diff
|
||||
and LibRaw/GoPro/gpr_read_image.h.diff to your GPR SDK code
|
||||
|
||||
d) GPR SDK's gpr_sdk/private/gpr.cpp uses own (added) dng_host method
|
||||
GetGPMFPayload so it will not compile with Adobes (not patched)
|
||||
dng_host.h
|
||||
LibRaw does not use high-level interface provided by gpr.cpp, so
|
||||
possible problem solutions are:
|
||||
- either compile GPR SDK without gpr_sdk/private/gpr.cpp file
|
||||
- or provide GPR's dng_host.h while building GPR SDK.
|
||||
(in our software we use 1st method).
|
||||
|
||||
See Note VII below for detailed GPR SDK build instructions w/ Cmake
|
||||
|
||||
III. LibRaw uses private gpr_read_image() interface
|
||||
So you'll need to add PATH_TO/gpr_sdk/gpr_sdk/private to -I compiler flags.
|
||||
|
||||
IV. -DUSE_GPRSDK LibRaw build flag requires -DUSE_DNGSDK. LibRaw will not
|
||||
compile if USE_GPRSDK is set, but USE_DNGSDK is not
|
||||
|
||||
V. LibRaw will use DNG SDK to unpack GoPro files even if imgdata.params.use_dng_sdk is set to 0.
|
||||
|
||||
VI. If LibRaw is built with -DUSE_GPRSDK, LibRaw::capabilities will return LIBRAW_CAPS_GPRSDK flag.
|
||||
|
||||
VII. GPR SDK build using cmake (contributed by our user, great thanks)
|
||||
|
||||
1. replace gopro's toplevel CMakeLists.txt with this one (this builds only a subset of the libraries):
|
||||
------------------------------------
|
||||
# minimum required cmake version
|
||||
cmake_minimum_required( VERSION 3.5 FATAL_ERROR )
|
||||
|
||||
set(CMAKE_SUPPRESS_REGENERATION true)
|
||||
set(CMAKE_C_FLAGS "-std=c99")
|
||||
|
||||
# project name
|
||||
project( gpr )
|
||||
|
||||
option(DNGINCLUDEDIR "Adobe DNG toolkit include directory")
|
||||
INCLUDE_DIRECTORIES( ${DNGINCLUDEDIR} )
|
||||
|
||||
# DNG toolkit requires C++11 minimum:
|
||||
set_property(GLOBAL PROPERTY CXX_STANDARD 17)
|
||||
|
||||
# add needed subdirectories
|
||||
add_subdirectory( "source/lib/common" )
|
||||
add_subdirectory( "source/lib/vc5_common" )
|
||||
add_subdirectory( "source/lib/vc5_decoder" )
|
||||
add_subdirectory( "source/lib/gpr_sdk" )
|
||||
|
||||
set_property(TARGET gpr_sdk PROPERTY CXX_STANDARD 17)
|
||||
|
||||
IF (WIN32)
|
||||
TARGET_COMPILE_DEFINITIONS( gpr_sdk PUBLIC -DqWinOS=1 -DqMacOS=0 -DqLinux=0)
|
||||
ELSEIF (APPLE)
|
||||
TARGET_COMPILE_DEFINITIONS( gpr_sdk PUBLIC -DqWinOS=0 -DqMacOS=1 -DqLinux=0)
|
||||
ELSE()
|
||||
TARGET_COMPILE_DEFINITIONS( gpr_sdk PUBLIC -DqWinOS=0 -DqMacOS=0 -DqLinux=1)
|
||||
ENDIF()
|
||||
----------------------------------------
|
||||
|
||||
2. apply the two patches of README.GoPro.txt section II b.
|
||||
the patch of section IIa is not needed with libdng1.5.
|
||||
|
||||
3. delete these two files:
|
||||
/source/lib/gpr_sdk/private/gpr.cpp
|
||||
/source/lib/gpr_sdk/private/gpr_image_writer.cpp
|
||||
|
||||
4. run CMAKE with -DDNGINCLUDEDIR, pointing to the headers from Adobe dng 1.5.
|
||||
|
||||
5. build. You get 4 libraries "gpr_sdk", "vc5_common", "vc5_decoder", "common", the rest is ignored.
|
||||
|
||||
|
62
rtengine/libraw/README.RawSpeed.txt
Normal file
62
rtengine/libraw/README.RawSpeed.txt
Normal file
@@ -0,0 +1,62 @@
|
||||
================= Compile LibRaw with RawSpeed support ========================
|
||||
|
||||
0) RawSpeed version:
|
||||
LibRaw supports 'master' version of RawSpeed library: https://github.com/darktable-org/rawspeed/tree/master
|
||||
|
||||
Although this version is really outdated, newer versions does not looks stable enough for production
|
||||
use (for example, this critical issue not fixed for 10+ months: https://github.com/darktable-org/rawspeed/issues/100 )
|
||||
|
||||
1) Prerequisites
|
||||
|
||||
To build RawSpeed you need libxml2, iconv, and JPEG library installed on your
|
||||
system.
|
||||
|
||||
2) Build RawSpeed:
|
||||
|
||||
-- consult http://rawstudio.org/blog/?p=800 for details
|
||||
|
||||
-- Win32: you need POSIX Threads for Win32 installed on your system
|
||||
(http://sources.redhat.com/pthreads-win32/)
|
||||
|
||||
-- use provided RawSpeed/rawspeed.samsung-decoder.patch to fix
|
||||
old Samsung decoder bug
|
||||
|
||||
-- you may use qmake .pro files supplied in LibRaw distribution
|
||||
(RawSpeed/rawspeed.qmake-pro-files.patch)
|
||||
Adjust path to libraries/includes according to your setup.
|
||||
|
||||
-- Win32: you need to add __declspec(..) to external C++ classes.
|
||||
Use patch provided with LibRaw (RawSpeed/rawspeed.win32-dll.patch)
|
||||
|
||||
-- Unix: you need to define rawspeed_get_number_of_processor_cores() call
|
||||
For most unix systems (Linux, MacOS X 10.4+, FreeBSD) patch provided
|
||||
with LibRaw (RawSpeed/rawspeed.cpucount-unix.patch) should work.
|
||||
|
||||
3) Build LibRaw with RawSpeed support:
|
||||
|
||||
Win32:
|
||||
--Uncomment CFLAGS_RAWSPEED and LDFLAGS_RAWSPEED lines in
|
||||
Makefile.msvc. Adjust paths to libraries/includes if needed.
|
||||
-- run nmake -f Makefile.msvc
|
||||
|
||||
Unix/MacOS:
|
||||
-- Uncomment CFLAGS/LDADD lines in RawSpeed section in Makefile.dist
|
||||
-- Uncomment RAWSPEED_DATA line if you wish to rebuild
|
||||
internal copy of RawSpeed's cameras.xml
|
||||
-- run make -f Makefile.dist
|
||||
|
||||
Compile options:
|
||||
-- You may specify -DNOSONY_RAWSPEED define if you do not want to use
|
||||
RawSpeed's Sony formats decoder (because result of this decoder is
|
||||
different from LibRaw's built-in decoder)
|
||||
|
||||
4) Build/run your Apps with LibRaw+RawSpeed
|
||||
|
||||
-- Build as usual, no changes required in your apps unless you
|
||||
access LibRaw::imgdata.rawdata.raw_image[] directly
|
||||
|
||||
-- you may turn off RawSpeed support on runtime by setting
|
||||
imgdata.params.use_rawspeed to 0.
|
||||
|
||||
-- You'll need all shared libraries you linked to at runtime (libxml2,
|
||||
iconv, LibJPEG, and posix threads on Win32).
|
9
rtengine/libraw/README.cmake
Normal file
9
rtengine/libraw/README.cmake
Normal file
@@ -0,0 +1,9 @@
|
||||
Due to inability to support (user contributed) Cmake scripts,
|
||||
the cmake builds are not officially supported by LibRaw team
|
||||
since October 23, 2014
|
||||
|
||||
The scripts are moved to separate github repository
|
||||
github.com:LibRaw/LibRaw-cmake.git
|
||||
|
||||
Checkout from this repo if you want to use Cmake to build LibRaw.
|
||||
|
17
rtengine/libraw/README.demosaic-packs
Normal file
17
rtengine/libraw/README.demosaic-packs
Normal file
@@ -0,0 +1,17 @@
|
||||
======================= LibRaw demosaic pack(s) ===============================
|
||||
|
||||
We were forced to stop supporting LibRaw demosaic packs: the contributed code
|
||||
is out of date for several years, initial contributors has no interest in it.
|
||||
|
||||
We too: we (LibRaw team) focused on RAW decode and metadata extraction, but not
|
||||
on postprocessing (demosaic, noise suppression, etc).
|
||||
|
||||
So, LibRaw-demosaic-pack-GPLn are abandoned now. We will be happy to convey
|
||||
their support and development to any developer who will show interest.
|
||||
|
||||
LibRaw 0.19 contains callback calls placed instead of calls to demosaic pack routines.
|
||||
So, adaptation of demosaic packs to new LibRaw should be easy (and, of course, we'll
|
||||
provide some support and/or implement additional callbacks if needed).
|
||||
|
||||
|
||||
|
106
rtengine/libraw/README.md
Normal file
106
rtengine/libraw/README.md
Normal file
@@ -0,0 +1,106 @@
|
||||
# LibRaw
|
||||
## Library for reading and processing of RAW digicam images
|
||||
|
||||
The LibRaw library provides a simple and unified interface for extracting out of RAW files generated by digital photo cameras the following:
|
||||
|
||||
* RAW data (_pixel values)_
|
||||
* Metadata necessary for processing RAW (_geometry, CFA / Bayer pattern, black level, white balance, etc.)_
|
||||
* Embedded preview / thumbnail.
|
||||
|
||||
The library is intended for use with programs that work with RAW files, such as:
|
||||
|
||||
* RAW viewers
|
||||
* RAW converters
|
||||
* RAW data analyzers
|
||||
* Software for stitching and compositing multi-frame aggregates like panoramas and image stacks.
|
||||
|
||||
Using the LibRaw library allows one to focus on the substantive part of processing the data contained in RAW files, without getting distracted by the wide variety of RAW file and metadata formats, compression algorithms, etc.
|
||||
|
||||
The library<72>s development is focused on:
|
||||
|
||||
* Support for new cameras and formats
|
||||
* Improving extraction of metadata necessary for RAW processing
|
||||
* Providing an interface for reading other types of metadata.
|
||||
|
||||
Additionally, the LibRaw library offers some basic RAW conversion, intended for cases when such conversion is not the main function of the LibRaw-using application _(for example: a viewer for 500+ graphic file formats, including RAW)._ These methods are inherited from the Dave Coffin<69>s dcraw.c utility _(see below the <20>Project history<72> section);_ their further development is not currently planned, because we do not consider production-quality rendering to be in the scope of LibRaw<61>s functionality _(the methods are retained for compatibility with prior versions and for rapid-fire testing of RAW support and other aspects)._
|
||||
|
||||
## Licensing
|
||||
|
||||
|
||||
The LibRaw library is distributed free of charge and with open-source code subject to two licenses:
|
||||
|
||||
1\. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
|
||||
2\. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
|
||||
To use the LibRaw library in an application, you can choose the license that better suits your needs.
|
||||
|
||||
If you modify/add/improve the LibRaw source code, then your patches can only be included into the library<72>s official source code if you agree to it being distributed under both of the above licenses.
|
||||
|
||||
We do not guarantee that the licensing will not change in future versions of LibRaw.
|
||||
|
||||
## Update policy
|
||||
|
||||
|
||||
### Major/minor releases
|
||||
|
||||
* Major releases _(for example, 0.20)_ are published once every year and a half to two years.
|
||||
* When the first public beta version of a major release is published, the list of supported cameras and formats is frozen; we try (but do not guarantee) to freeze the API/ABI as well.
|
||||
* The public major release contains only that code which has been sufficiently tested on a wide user base (including in our commercial products). Something very new may not be included in it (but it will probably be included in a public snapshot, see below).
|
||||
* Minor updates _(0.20.1, 0.20.2<EFBFBD>)_ do not change the API/ABI and new cameras are not added; generally they are just bugfixes.
|
||||
* Bugfixes are published as soon as possible in the [public GitHub repository](https://github.com/LibRaw/LibRaw).
|
||||
* Minor version increments: these are generally published if a serious error has been fixed, one that potentially affects many library users (for example, a possible stack overflow).
|
||||
|
||||
### Public snapshots
|
||||
|
||||
* Public snapshots are published every 7-9 months in the [public GitHub repository](https://github.com/LibRaw/LibRaw).
|
||||
* These versions contain support for new cameras that was added after the previous major release. The API/ABI of public snapshots is not frozen, and may change.
|
||||
* Public snapshots are always tested on a fairly large user base, and may be considered suitable for use in programs that work with files with known origins (that is, recorded directly by users<72> digital cameras). However, public snapshots should not be considered sufficiently reliable for processing files that are specially constructed for vulnerability testing; that is, they should not be used in public services that allow for anonymous processing of files of unknown provenance
|
||||
|
||||
## Support and feedback
|
||||
|
||||
* You can submit a bug report in one of the following ways:
|
||||
* [Issues](https://github.com/LibRaw/LibRaw/issues) on GitHub
|
||||
* The libraw.org [forum](https://www.libraw.org/forum)
|
||||
* [Feedback form](https://www.libraw.org/contact) on libraw.org
|
||||
* E-mail us at [info@libraw.org](mailto:info@libraw.org)
|
||||
* Questions can be asked on the forum, through the feedback form, and via the email indicated above.
|
||||
Please do not use Issues on GitHub for questions; it is intended specifically for problem reports.
|
||||
* We prefer to process additions to the source code via the [Pull Requests](https://github.com/LibRaw/LibRaw/pulls) on GitHub.
|
||||
|
||||
We cannot guarantee any response to requests submitted via the above methods. If you need a guaranteed response for a bug report and/or for extending technical support, please use the Extended Support option.
|
||||
|
||||
## Project history
|
||||
|
||||
|
||||
The LibRaw project was launched in 2008, based on the [dcraw.c](https://www.dechifro.org/dcraw/) (Dave Coffin) utility, with its goals being to:
|
||||
|
||||
* Convert dcraw.c into a library that could be used by other programs, while also somewhat improving the structure of dcraw.c (removing global variables, making it thread-safe, etc.)
|
||||
* Import changes made to dcraw.c
|
||||
* Improve/expand the extraction of metadata.
|
||||
|
||||
Unfortunately, support for dcraw.c was reduced to a minimum in 2015, and completely ceased in 2018. Since then, support for new cameras (including support for new formats) has been done entirely by the LibRaw team.
|
||||
|
||||
The code that implements rendering of RAW to RGB is inherited from dcraw.c, without major changes (though a set of changes was implemented to speed up and parallelize this code).
|
||||
|
||||
In the early-to-mid 2010s, we gladly expanded post-processing implemented in LibRaw, and readily accepted the input of outside developers (new/improved methods for debayerization/demosaicing, systematic noise reduction etc.).
|
||||
|
||||
Experience has shown that the LibRaw team cannot support this added code on their own, while contributors do not provide support and development of the code they suggest and it ends up abandoned. As such, the majority of the modifications that are implemented by people outside the LibRaw team was moved to the [LibRaw-demosaic-pack-<2D>.](https://github.com/LibRaw?tab=repositories), where they remain in their original form (but these projects are still present in our GitHub).
|
||||
|
||||
Thus, we arrive at our current status, described in the first part of this text.
|
||||
|
||||
## Copyrights and Acknowledgements
|
||||
|
||||
Copyright (C) 2008-2021 LibRaw LLC
|
||||
|
||||
LibRaw uses code from Dave Coffin<69>s dcraw.c utility (without RESTRICTED/GPL2 code):
|
||||
|
||||
Copyright 1997-2018 by Dave Coffin, dcoffin a cybercom o net
|
||||
|
||||
LibRaw uses DCB demosaic code by Jaceck Gozdz distributed under BSD license:
|
||||
|
||||
Copyright (C) 2010, Jacek Gozdz (mailto:cuniek@kft.umcs.lublin.pl)
|
||||
|
||||
LibRaw uses Roland Karlsson<6F>s X3F tools source code, licensed under BSD license:
|
||||
|
||||
Copyright (c) 2010, Roland Karlsson (roland@proxel.se)
|
15
rtengine/libraw/RawSpeed/rawspeed.cpucount-unix.patch
Normal file
15
rtengine/libraw/RawSpeed/rawspeed.cpucount-unix.patch
Normal file
@@ -0,0 +1,15 @@
|
||||
diff --git a/RawSpeed/Common.cpp b/RawSpeed/Common.cpp
|
||||
index abec232..6990c04 100644
|
||||
--- a/RawSpeed/Common.cpp
|
||||
+++ b/RawSpeed/Common.cpp
|
||||
@@ -31,5 +31,10 @@ void* _aligned_malloc(size_t bytes, size_t alignment) {
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
+#include <unistd.h>
|
||||
+int rawspeed_get_number_of_processor_cores()
|
||||
+{
|
||||
+ return sysconf( _SC_NPROCESSORS_ONLN );
|
||||
+}
|
||||
|
||||
#endif
|
84
rtengine/libraw/RawSpeed/rawspeed.qmake-pro-files.patch
Normal file
84
rtengine/libraw/RawSpeed/rawspeed.qmake-pro-files.patch
Normal file
@@ -0,0 +1,84 @@
|
||||
diff --git a/RawSpeed/rawspeed-lib.pro b/RawSpeed/rawspeed-lib.pro
|
||||
new file mode 100644
|
||||
index 0000000..1599ddf
|
||||
--- /dev/null
|
||||
+++ b/RawSpeed/rawspeed-lib.pro
|
||||
@@ -0,0 +1,42 @@
|
||||
+TEMPLATE=lib
|
||||
+TARGET=rawspeed
|
||||
+
|
||||
+win32:INCLUDEPATH+=d:/Qt/iconv/include d:/Qt/libxml2/include/libxml2 d:/Qt/pthreads/include d:/Qt/libjpeg-turbo/include
|
||||
+win32:LIBS+=-Ld:/Qt/iconv/lib/x86 -liconv -Ld:/Qt/libxml2/lib/x86 -llibxml2 -Ld:/Qt/pthreads/lib/x86 -lpthreadVC2 -Ld:/Qt/libjpeg-turbo/lib/x86 -ljpeg8
|
||||
+
|
||||
+unix:INCLUDEPATH+=/usr/local/include /usr/local/include/libxml2
|
||||
+unix:CONFIG+=staticlib
|
||||
+
|
||||
+INCLUDEPATH+=.
|
||||
+
|
||||
+HEADERS = ArwDecoder.h BitPumpJPEG.h BitPumpMSB.h BitPumpMSB32.h \
|
||||
+ BitPumpPlain.h BlackArea.h ByteStream.h ByteStreamSwap.h \
|
||||
+ Camera.h CameraMetaData.h CameraMetadataException.h \
|
||||
+ CameraSensorInfo.h ColorFilterArray.h Common.h Cr2Decoder.h \
|
||||
+ DngDecoder.h DngDecoderSlices.h DngOpcodes.h FileIOException.h \
|
||||
+ FileMap.h FileReader.h IOException.h LJpegDecompressor.h \
|
||||
+ LJpegPlain.h NefDecoder.h NikonDecompressor.h OrfDecoder.h \
|
||||
+ PefDecoder.h PentaxDecompressor.h Point.h RawDecoder.h \
|
||||
+ RawDecoderException.h RawImage.h RawParser.h Rw2Decoder.h SrwDecoder.h \
|
||||
+ StdAfx.h TiffEntry.h TiffEntryBE.h TiffIFD.h TiffIFDBE.h TiffParser.h \
|
||||
+ TiffParserException.h TiffParserHeaderless.h TiffParserOlympus.h \
|
||||
+ TiffTag.h dlldef.h
|
||||
+
|
||||
+SOURCES = \
|
||||
+ ArwDecoder.cpp BitPumpJPEG.cpp BitPumpMSB.cpp BitPumpMSB32.cpp \
|
||||
+ BitPumpPlain.cpp BlackArea.cpp ByteStream.cpp ByteStreamSwap.cpp \
|
||||
+ Camera.cpp CameraMetaData.cpp CameraMetadataException.cpp \
|
||||
+ CameraSensorInfo.cpp ColorFilterArray.cpp Common.cpp Cr2Decoder.cpp \
|
||||
+ DngDecoder.cpp DngDecoderSlices.cpp DngOpcodes.cpp \
|
||||
+ FileIOException.cpp FileMap.cpp FileReader.cpp IOException.cpp \
|
||||
+ LJpegDecompressor.cpp LJpegPlain.cpp NefDecoder.cpp \
|
||||
+ NikonDecompressor.cpp OrfDecoder.cpp PefDecoder.cpp \
|
||||
+ PentaxDecompressor.cpp RawDecoder.cpp RawDecoderException.cpp \
|
||||
+ RawImage.cpp RawImageDataFloat.cpp RawImageDataU16.cpp RawParser.cpp \
|
||||
+ Rw2Decoder.cpp SrwDecoder.cpp TiffEntry.cpp TiffEntryBE.cpp\
|
||||
+ TiffIFD.cpp TiffIFDBE.cpp TiffParser.cpp TiffParserException.cpp \
|
||||
+ TiffParserHeaderless.cpp TiffParserOlympus.cpp
|
||||
+
|
||||
+DEFINES+=RAWSPEED_BUILDLIB
|
||||
+CONFIG-=qt
|
||||
+win32:QMAKE_CXXFLAGS+=/O2 /arch:SSE2 /fp:fast /MP
|
||||
diff --git a/RawSpeed/rawspeed-test.pro b/RawSpeed/rawspeed-test.pro
|
||||
new file mode 100644
|
||||
index 0000000..518aa98
|
||||
--- /dev/null
|
||||
+++ b/RawSpeed/rawspeed-test.pro
|
||||
@@ -0,0 +1,21 @@
|
||||
+TEMPLATE=app
|
||||
+TARGET=rawspeed-test
|
||||
+
|
||||
+SOURCES=RawSpeed.cpp
|
||||
+
|
||||
+win32:CONFIG(debug,debug|release) {
|
||||
+ LIBDIR = debug
|
||||
+} else {
|
||||
+ LIBDIR = release
|
||||
+}
|
||||
+
|
||||
+
|
||||
+INCLUDEPATH+=../
|
||||
+
|
||||
+unix:INCLUDEPATH+=/usr/local/include /usr/local/include/libxml2
|
||||
+unix:LIBS+=-L. -lrawspeed -L/usr/local/lib -lxml2 -ljpeg
|
||||
+win32:LIBS+=-L$$LIBDIR -llibrawspeed
|
||||
+win32:LIBS+=-Ld:/Qt/iconv/lib/x86 -liconv -Ld:/Qt/libxml2/lib/x86 -llibxml2a -Ld:/Qt/pthreads/lib/x86 -lpthreadVC2 -Ld:/Qt/libjpeg-turbo/lib/x86 -ljpeg8
|
||||
+win32:INCLUDEPATH+=d:/Qt/iconv/include d:/Qt/libxml2/include/libxml2 d:/Qt/pthreads/include d:/Qt/libjpeg-turbo/include
|
||||
+CONFIG-=qt
|
||||
+CONFIG+=console
|
||||
diff --git a/RawSpeed/rawspeed.pro b/RawSpeed/rawspeed.pro
|
||||
new file mode 100644
|
||||
index 0000000..df2a0b9
|
||||
--- /dev/null
|
||||
+++ b/RawSpeed/rawspeed.pro
|
||||
@@ -0,0 +1,3 @@
|
||||
+TEMPLATE=subdirs
|
||||
+SUBDIRS=rawspeed-lib.pro rawspeed-test.pro
|
||||
+
|
39
rtengine/libraw/RawSpeed/rawspeed.samsung-decoder.patch
Normal file
39
rtengine/libraw/RawSpeed/rawspeed.samsung-decoder.patch
Normal file
@@ -0,0 +1,39 @@
|
||||
diff --git a/RawSpeed/SrwDecoder.cpp b/RawSpeed/SrwDecoder.cpp
|
||||
index fa46499..1aff689 100644
|
||||
--- a/RawSpeed/SrwDecoder.cpp
|
||||
+++ b/RawSpeed/SrwDecoder.cpp
|
||||
@@ -141,7 +141,7 @@ void SrwDecoder::decodeCompressed( TiffIFD* raw )
|
||||
// First we decode even pixels
|
||||
for (int c = 0; c < 16; c += 2) {
|
||||
int b = len[(c >> 3)];
|
||||
- int32 adj = ((int32) bits.getBits(b) << (32-b) >> (32-b));
|
||||
+ int32 adj = b > 0 ? ((int32) bits.getBits(b) << (32-b) >> (32-b)) :0;
|
||||
img[c] = adj + img_up[c];
|
||||
}
|
||||
// Now we decode odd pixels
|
||||
@@ -149,7 +149,7 @@ void SrwDecoder::decodeCompressed( TiffIFD* raw )
|
||||
// is beyond me, it will hurt compression a deal.
|
||||
for (int c = 1; c < 16; c += 2) {
|
||||
int b = len[2 | (c >> 3)];
|
||||
- int32 adj = ((int32) bits.getBits(b) << (32-b) >> (32-b));
|
||||
+ int32 adj = b > 0 ? ((int32) bits.getBits(b) << (32-b) >> (32-b)) :0;
|
||||
img[c] = adj + img_up2[c];
|
||||
}
|
||||
} else {
|
||||
@@ -158,14 +158,14 @@ void SrwDecoder::decodeCompressed( TiffIFD* raw )
|
||||
int pred_left = x ? img[-2] : 128;
|
||||
for (int c = 0; c < 16; c += 2) {
|
||||
int b = len[(c >> 3)];
|
||||
- int32 adj = ((int32) bits.getBits(b) << (32-b) >> (32-b));
|
||||
+ int32 adj = b > 0 ? ((int32) bits.getBits(b) << (32-b) >> (32-b)) :0;
|
||||
img[c] = adj + pred_left;
|
||||
}
|
||||
// Now we decode odd pixels
|
||||
pred_left = x ? img[-1] : 128;
|
||||
for (int c = 1; c < 16; c += 2) {
|
||||
int b = len[2 | (c >> 3)];
|
||||
- int32 adj = ((int32) bits.getBits(b) << (32-b) >> (32-b));
|
||||
+ int32 adj = b > 0 ? ((int32) bits.getBits(b) << (32-b) >> (32-b)) :0;
|
||||
img[c] = adj + pred_left;
|
||||
}
|
||||
}
|
@@ -0,0 +1,13 @@
|
||||
diff --git a/RawSpeed/DngDecoder.cpp b/RawSpeed/DngDecoder.cpp
|
||||
index 56c701b..98f2474 100644
|
||||
--- a/RawSpeed/DngDecoder.cpp
|
||||
+++ b/RawSpeed/DngDecoder.cpp
|
||||
@@ -216,7 +216,7 @@ RawImage DngDecoder::decodeRawInternal() {
|
||||
if (bps != 8 && bps != 16)
|
||||
big_endian = true;
|
||||
try {
|
||||
- readUncompressedRaw(in, size, pos, width*bps / 8, bps, big_endian ? BitOrder_Jpeg : BitOrder_Plain);
|
||||
+ readUncompressedRaw(in, size, pos, mRaw->getCpp()*width*bps / 8, bps, big_endian ? BitOrder_Jpeg : BitOrder_Plain);
|
||||
} catch(IOException &ex) {
|
||||
if (i > 0)
|
||||
mRaw->setError(ex.what());
|
186
rtengine/libraw/RawSpeed/rawspeed.win32-dll.patch
Normal file
186
rtengine/libraw/RawSpeed/rawspeed.win32-dll.patch
Normal file
@@ -0,0 +1,186 @@
|
||||
diff --git a/RawSpeed/Camera.h b/RawSpeed/Camera.h
|
||||
index 7b3045d..4363c1b 100644
|
||||
--- a/RawSpeed/Camera.h
|
||||
+++ b/RawSpeed/Camera.h
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <libxml/parser.h>
|
||||
#include "BlackArea.h"
|
||||
#include "CameraMetadataException.h"
|
||||
+#include "dlldef.h"
|
||||
/*
|
||||
RawSpeed - RAW file decoder.
|
||||
|
||||
@@ -30,7 +31,7 @@
|
||||
|
||||
namespace RawSpeed {
|
||||
|
||||
-class Camera
|
||||
+class DllDef Camera
|
||||
{
|
||||
public:
|
||||
Camera(xmlDocPtr doc, xmlNodePtr cur);
|
||||
diff --git a/RawSpeed/CameraMetaData.h b/RawSpeed/CameraMetaData.h
|
||||
index 616b2bb..c6b8031 100644
|
||||
--- a/RawSpeed/CameraMetaData.h
|
||||
+++ b/RawSpeed/CameraMetaData.h
|
||||
@@ -27,9 +27,10 @@
|
||||
http://www.klauspost.com
|
||||
*/
|
||||
|
||||
+#include "dlldef.h"
|
||||
namespace RawSpeed {
|
||||
|
||||
-class CameraMetaData
|
||||
+class DllDef CameraMetaData
|
||||
{
|
||||
public:
|
||||
CameraMetaData();
|
||||
diff --git a/RawSpeed/CameraMetadataException.h b/RawSpeed/CameraMetadataException.h
|
||||
index 55a2814..52d5ea1 100644
|
||||
--- a/RawSpeed/CameraMetadataException.h
|
||||
+++ b/RawSpeed/CameraMetadataException.h
|
||||
@@ -22,10 +22,11 @@
|
||||
#ifndef CAMERA_METADATA_EXCEPTION_H
|
||||
#define CAMERA_METADATA_EXCEPTION_H
|
||||
|
||||
+#include "dlldef.h"
|
||||
|
||||
namespace RawSpeed {
|
||||
|
||||
-void ThrowCME(const char* fmt, ...);
|
||||
+void DllDef ThrowCME(const char* fmt, ...);
|
||||
|
||||
class CameraMetadataException :
|
||||
public std::runtime_error
|
||||
diff --git a/RawSpeed/FileMap.h b/RawSpeed/FileMap.h
|
||||
index 5c15918..bcd2a79 100644
|
||||
--- a/RawSpeed/FileMap.h
|
||||
+++ b/RawSpeed/FileMap.h
|
||||
@@ -25,6 +25,7 @@
|
||||
*/
|
||||
|
||||
#include "IOException.h"
|
||||
+#include "dlldef.h"
|
||||
|
||||
namespace RawSpeed {
|
||||
|
||||
@@ -36,7 +37,7 @@ namespace RawSpeed {
|
||||
* This can also be done as a MemMap
|
||||
*
|
||||
*****************************/
|
||||
-class FileMap
|
||||
+class DllDef FileMap
|
||||
{
|
||||
public:
|
||||
FileMap(uint32 _size); // Allocates the data array itself
|
||||
diff --git a/RawSpeed/FileReader.h b/RawSpeed/FileReader.h
|
||||
index 7448ec2..fb42ac0 100644
|
||||
--- a/RawSpeed/FileReader.h
|
||||
+++ b/RawSpeed/FileReader.h
|
||||
@@ -24,10 +24,11 @@
|
||||
|
||||
#include "FileIOException.h"
|
||||
#include "FileMap.h"
|
||||
+#include "dlldef.h"
|
||||
|
||||
namespace RawSpeed {
|
||||
|
||||
-class FileReader
|
||||
+class DllDef FileReader
|
||||
{
|
||||
public:
|
||||
FileReader(LPCWSTR filename);
|
||||
diff --git a/RawSpeed/RawDecoder.h b/RawSpeed/RawDecoder.h
|
||||
index a6c4708..b35cae5 100644
|
||||
--- a/RawSpeed/RawDecoder.h
|
||||
+++ b/RawSpeed/RawDecoder.h
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "BitPumpPlain.h"
|
||||
#include "CameraMetaData.h"
|
||||
#include "TiffIFD.h"
|
||||
+#include "dlldef.h"
|
||||
|
||||
/*
|
||||
RawSpeed - RAW file decoder.
|
||||
@@ -48,7 +49,7 @@ class RawDecoderThread
|
||||
RawDecoder* parent;
|
||||
};
|
||||
|
||||
-class RawDecoder
|
||||
+class DllDef RawDecoder
|
||||
{
|
||||
public:
|
||||
/* Construct decoder instance - FileMap is a filemap of the file to be decoded */
|
||||
diff --git a/RawSpeed/RawImage.h b/RawSpeed/RawImage.h
|
||||
index 5741760..74cea96 100644
|
||||
--- a/RawSpeed/RawImage.h
|
||||
+++ b/RawSpeed/RawImage.h
|
||||
@@ -26,13 +26,15 @@
|
||||
http://www.klauspost.com
|
||||
*/
|
||||
|
||||
+#include "dlldef.h"
|
||||
+
|
||||
namespace RawSpeed {
|
||||
|
||||
class RawImage;
|
||||
class RawImageWorker;
|
||||
typedef enum {TYPE_USHORT16, TYPE_FLOAT32} RawImageType;
|
||||
|
||||
-class RawImageData
|
||||
+class DllDef RawImageData
|
||||
{
|
||||
friend class RawImageWorker;
|
||||
public:
|
||||
@@ -125,7 +127,7 @@ protected:
|
||||
int end_y;
|
||||
};
|
||||
|
||||
- class RawImage {
|
||||
+ class DllDef RawImage {
|
||||
public:
|
||||
static RawImage create(RawImageType type = TYPE_USHORT16);
|
||||
static RawImage create(iPoint2D dim, RawImageType type = TYPE_USHORT16, uint32 componentsPerPixel = 1);
|
||||
diff --git a/RawSpeed/RawParser.h b/RawSpeed/RawParser.h
|
||||
index 9ef86e3..1b3cb83 100644
|
||||
--- a/RawSpeed/RawParser.h
|
||||
+++ b/RawSpeed/RawParser.h
|
||||
@@ -25,10 +25,11 @@
|
||||
|
||||
#include "FileMap.h"
|
||||
#include "RawDecoder.h"
|
||||
+#include "dlldef.h"
|
||||
|
||||
namespace RawSpeed {
|
||||
|
||||
-class RawParser
|
||||
+class DllDef RawParser
|
||||
{
|
||||
public:
|
||||
RawParser(FileMap* input);
|
||||
diff --git a/RawSpeed/dlldef.h b/RawSpeed/dlldef.h
|
||||
new file mode 100644
|
||||
index 0000000..c806451
|
||||
--- /dev/null
|
||||
+++ b/RawSpeed/dlldef.h
|
||||
@@ -0,0 +1,20 @@
|
||||
+#ifndef DLLDEF_H
|
||||
+#define DLLDEF_H
|
||||
+
|
||||
+#ifdef _WIN32
|
||||
+#ifdef _MSC_VER
|
||||
+#pragma warning( disable: 4251 )
|
||||
+#endif
|
||||
+#ifdef RAWSPEED_NODLL
|
||||
+# define DllDef
|
||||
+#else
|
||||
+# ifdef RAWSPEED_BUILDLIB
|
||||
+# define DllDef __declspec( dllexport )
|
||||
+# else
|
||||
+# define DllDef __declspec( dllimport )
|
||||
+# endif
|
||||
+#endif
|
||||
+#else
|
||||
+# define DllDef
|
||||
+#endif
|
||||
+#endif
|
4115
rtengine/libraw/RawSpeed/rawspeed_xmldata.cpp
Normal file
4115
rtengine/libraw/RawSpeed/rawspeed_xmldata.cpp
Normal file
File diff suppressed because it is too large
Load Diff
69
rtengine/libraw/RawSpeed3/README.md
Normal file
69
rtengine/libraw/RawSpeed3/README.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# About RawSpeed v3
|
||||
|
||||
The current version of the RawSpeed library (https://github.com/darktable-org/rawspeed ) does not have a version number, we call it "version 3" to distinguish it from RawSpeed/master, the version number is taken from darktable 3.x (which uses this library).
|
||||
|
||||
This library provides faster decoding of some RAW formats (even faster than RawSpeed v1), the difference can be tens of percent (without using OpenMP) for Huffman-compressed files (Canon CR2, Nikon NEF, etc).
|
||||
|
||||
Unfortunately, the RawSpeed-v3 source code is constantly changing and this is due not so much to the development of the library (support for new cameras, formats, etc.), but to the fact that the current maintainer is using it as an aid in self-development as a programmer.
|
||||
|
||||
They are extremely reluctant to accept 3rd-party patches to this library, therefore, the fixes necessary for correct work with LibRaw have been added to the LibRaw distribution (see below). All our patches, of course, are suitable only for a specific version (commit-id) of RawSpeed-v3, if you want to use a different version, you will have to adjust them.
|
||||
|
||||
# Building RawSpeed v3 and C-API wrapper
|
||||
|
||||
## Preparing the source
|
||||
1. Take a specific commit from github
|
||||
https://github.com/darktable-org/rawspeed/commit/de70ef5fbc62cde91009c8cff7a206272abe631e
|
||||
|
||||
2. Apply the following patches from LibRaw/RawSpeed3/patches folder:
|
||||
* **01.CameraMeta-extensibility.patch** - allows derived classes from CameraMeta, which allows loading camera descriptions not only from a disk file.
|
||||
* **02.Makernotes-processing.patch** - fixes an error in processing the Makernotes tag.
|
||||
* **03.remove-limits-and-logging.patch** - removes debug printing and file size limits. This patch is optional, but if you are going to decode files from cameras that were not available at the time a particular version of RawSpeed was created, then this patch can be useful.
|
||||
* **04.clang-cl-compatibility.patch -** fixes for compatibility with Microsoft C++ library.
|
||||
|
||||
## Building the RawSpeed-v3 library
|
||||
|
||||
We **do not** offer advice on building RawSpeed3, if you need such advice please contact the maintainer of the library. At a minimum, it **can be** compiled with Clang (XCode) on macOS and clang-cl (MSVC) on Windows.
|
||||
|
||||
Use your favorite build system. Files for CMake come with RawSpeed, but any other build system can be used (in that case you probably will need to create your own rawspeedconfig.h instead of one created via CMake).
|
||||
|
||||
In our projects we use RawSpeed-v3 without OpenMP.
|
||||
|
||||
## Building the C-API wrapper
|
||||
To simplify the integration with LibRaw, we have implemented a simple wrapper with a C interface, which hides everything unnecessary, thus:
|
||||
* To build LibRaw (with RawSpeed-v3 support) you do not need access to RawSpeed .h-files
|
||||
* When building LibRaw and RawSpeed-v3 using different compilers there is no issue with C++ name mangling.
|
||||
|
||||
The wrapper sources are in the **LibRaw/RawSpeed3/rawspeed3_c_api folder**, they include four files:
|
||||
1. **rawspeed3_capi.h** - header file
|
||||
2. **rawspeed3_capi.cpp** - wrapper sources
|
||||
3. **rsxml2c.sh** - shell script that will convert RawSpeed/data/cameras.xml to a C++ file containing camera definitions
|
||||
4. **rawspeed3_capi_test.cpp** - test program for checking the build correctness and operation ability.
|
||||
|
||||
The wrapper provides simple *decode only* interface (init library, decode RAW passed via buffer, free decoded file buffer, release the library) it is self-documented via comments in the rawspeed3_capi.h file.
|
||||
|
||||
To make a file with camera definitions, run the command (you can add it to the build system):
|
||||
`sh ./rawspeed3_c_api/rsxml2c.sh < path/to/RawSpeed/data/cameras.xml > rawspeed3_c_api/cameras.cpp`
|
||||
|
||||
The **rsxml2c.sh** script requires **cat**, **tr**, and **sed** unix command-line utilities installed, there is no specific version requirements.
|
||||
|
||||
Add the resulting file (LibRaw/RawSpeed3/rawspeed3_c_api/cameras.cpp) and LibRaw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi.cpp, to the build of the RawSpeed-v3 (dynamic) library, which you learned to build in the previous step.
|
||||
If building Windows DLL: rawspeed3_capi.cpp should be compiled with -DRAWSPEED_BUILDLIB to create dll export entries automatically.
|
||||
|
||||
To check that everything works, you can use the LibRaw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi_test.cpp test program, it should be possible to build it and link with RawSpeed-v3 (+ C-API); and after that this test program should be ready to decode RAW files passed to it from command line.
|
||||
|
||||
# Building LibRaw with RawSpeed-v3 support
|
||||
When building, specify the following parameters
|
||||
* LibRaw/RawSpeed3/rawspeed3_c_api to the search path for include files
|
||||
* Specify preprocessor flags -DUSE_RAWSPEED3 -DUSE_RAWSPEED_BITS:
|
||||
* USE_RAWSPEED3 enables the use of RawSpeed-v3
|
||||
* USE_RAWSPEED_BITS enables (a more granulated) control of RawSpeed-v3 / RawSpeed processing
|
||||
* set the RawSpeed-v3 (+ C-API) library, obtained in the previous steps, as an input linker file
|
||||
|
||||
# Using LibRaw with RawSpeed-v3 Support
|
||||
Use LibRaw as usual. Enable RawSpeed3 use by setting bits in imgdata.rawparams.userawspeed (LIBRAW_RAWSPEEDV3_USE, LIBRAW_RAWSPEEDV3_IGNOREERRORS, LIBRAW_RAWSPEEDV3_FAILONUNKNOWN)
|
||||
If RawSpeed was set as the decoder the following bits will be set in imgdata.processwarnings:
|
||||
* LIBRAW_WARN_RAWSPEED3_PROCESSED - if decoding was successful
|
||||
* LIBRAW_WARN_RAWSPEED3_PROBLEM - if decoding attempt failed
|
||||
(flags and bits are described in LibRaw's Changelog)
|
||||
|
||||
With RawSpeed-v3, the entire RAW file is read into the memory buffer (as it is with RawSpeed version 1), so it increases LibRaw memory footprint.
|
@@ -0,0 +1,13 @@
|
||||
diff --git a/src/librawspeed/metadata/CameraMetaData.h b/src/librawspeed/metadata/CameraMetaData.h
|
||||
index c2f6f1dd..13cab9c9 100644
|
||||
--- a/src/librawspeed/metadata/CameraMetaData.h
|
||||
+++ b/src/librawspeed/metadata/CameraMetaData.h
|
||||
@@ -41,7 +41,7 @@ struct CameraId {
|
||||
}
|
||||
};
|
||||
|
||||
-class CameraMetaData {
|
||||
+class CameraMetaData final {
|
||||
public:
|
||||
CameraMetaData() = default;
|
||||
|
@@ -0,0 +1,36 @@
|
||||
diff --git a/src/librawspeed/tiff/TiffIFD.cpp b/src/librawspeed/tiff/TiffIFD.cpp
|
||||
index e732eae2..05251dd9 100644
|
||||
--- a/src/librawspeed/tiff/TiffIFD.cpp
|
||||
+++ b/src/librawspeed/tiff/TiffIFD.cpp
|
||||
@@ -143,6 +143,7 @@ TiffRootIFDOwner TiffIFD::parseMakerNote(NORangesSet<Buffer>* ifds,
|
||||
string make = makeEntry != nullptr ? trimSpaces(makeEntry->getString()) : "";
|
||||
|
||||
ByteStream bs = t->getData();
|
||||
+ auto bufbegin = bs.begin() + bs.getPosition();
|
||||
|
||||
// helper function for easy setup of ByteStream buffer for the different maker note types
|
||||
// 'rebase' means position 0 of new stream equals current position
|
||||
@@ -159,7 +160,9 @@ TiffRootIFDOwner TiffIFD::parseMakerNote(NORangesSet<Buffer>* ifds,
|
||||
bs.skipBytes(newPosition);
|
||||
};
|
||||
|
||||
- if (bs.hasPrefix("AOC\0", 4)) {
|
||||
+ if (bs.hasPrefix("LSI1\0", 5)) { // Skip LSI1 makernotes
|
||||
+ return std::make_unique<TiffRootIFD>(this, ifds, bs, UINT32_MAX); // UINT32_MAX offset => special handling, empty IFD
|
||||
+ } else if (bs.hasPrefix("AOC\0", 4)) {
|
||||
setup(false, 6, 4, "Pentax makernote");
|
||||
} else if (bs.hasPrefix("PENTAX", 6)) {
|
||||
setup(true, 10, 8, "Pentax makernote");
|
||||
@@ -197,6 +200,12 @@ TiffRootIFDOwner TiffIFD::parseMakerNote(NORangesSet<Buffer>* ifds,
|
||||
}
|
||||
}
|
||||
|
||||
+ auto readed = bs.begin() - bufbegin + bs.getPosition();
|
||||
+ ByteStream bscheck(bs);
|
||||
+ const auto IFDSize = 6 + 12 * bscheck.getU16();
|
||||
+
|
||||
+ if(IFDSize > t->count - readed) // IFDSize too big, probably binary Makernotes dir, not TIFF-like, could not be handled by TiffRootIFD reader
|
||||
+ return std::make_unique<TiffRootIFD>(this, ifds, bs, UINT32_MAX); // // UINT32_MAX offset => special handling, empty IFD
|
||||
// Attempt to parse the rest as an IFD
|
||||
return std::make_unique<TiffRootIFD>(this, ifds, bs, bs.getPosition());
|
||||
}
|
@@ -0,0 +1,245 @@
|
||||
diff --git a/src/librawspeed/common/Common.cpp b/src/librawspeed/common/Common.cpp
|
||||
index 8c8c5663..d9b5e463 100644
|
||||
--- a/src/librawspeed/common/Common.cpp
|
||||
+++ b/src/librawspeed/common/Common.cpp
|
||||
@@ -36,6 +36,7 @@ writeLog(DEBUG_PRIO priority, const char* format, ...) {
|
||||
#else
|
||||
|
||||
void writeLog(DEBUG_PRIO priority, const char* format, ...) {
|
||||
+#if 0
|
||||
#ifndef _DEBUG
|
||||
if (priority < DEBUG_PRIO_INFO)
|
||||
#endif // _DEBUG
|
||||
@@ -55,6 +56,7 @@ void writeLog(DEBUG_PRIO priority, const char* format, ...) {
|
||||
if (priority < DEBUG_PRIO_INFO)
|
||||
#endif // _DEBUG
|
||||
fprintf(stdout, "%s", "\n");
|
||||
+#endif
|
||||
}
|
||||
|
||||
#endif
|
||||
diff --git a/src/librawspeed/common/RawspeedException.h b/src/librawspeed/common/RawspeedException.h
|
||||
index 33b9cc29..a9f503a7 100644
|
||||
--- a/src/librawspeed/common/RawspeedException.h
|
||||
+++ b/src/librawspeed/common/RawspeedException.h
|
||||
@@ -45,12 +45,13 @@ template <typename T>
|
||||
"Don't have thread-local-storage! Exception text may be garbled if used multithreaded"
|
||||
static char buf[bufSize];
|
||||
#endif
|
||||
-
|
||||
+#if 0
|
||||
va_list val;
|
||||
va_start(val, fmt);
|
||||
vsnprintf(buf.data(), sizeof(buf), fmt, val);
|
||||
va_end(val);
|
||||
writeLog(DEBUG_PRIO_EXTRA, "EXCEPTION: %s", buf.data());
|
||||
+#endif
|
||||
throw T(buf.data());
|
||||
}
|
||||
|
||||
diff --git a/src/librawspeed/decoders/ArwDecoder.cpp b/src/librawspeed/decoders/ArwDecoder.cpp
|
||||
index f1d5a63c..2025d260 100644
|
||||
--- a/src/librawspeed/decoders/ArwDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/ArwDecoder.cpp
|
||||
@@ -186,8 +186,8 @@ RawImage ArwDecoder::decodeRawInternal() {
|
||||
}
|
||||
}
|
||||
|
||||
- if (width == 0 || height == 0 || height % 2 != 0 || width > 9600 ||
|
||||
- height > 6376)
|
||||
+ if (width == 0 || height == 0 || height % 2 != 0 /* || width > 9600 ||
|
||||
+ height > 6376 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
bool arw1 = uint64_t(counts->getU32()) * 8 != width * height * bitPerPixel;
|
||||
@@ -241,7 +241,7 @@ void ArwDecoder::DecodeUncompressed(const TiffIFD* raw) {
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
|
||||
- if (width == 0 || height == 0 || width > 9600 || height > 6376)
|
||||
+ if (width == 0 || height == 0 /* || width > 9600 || height > 6376 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
if (c2 == 0)
|
||||
diff --git a/src/librawspeed/decoders/IiqDecoder.cpp b/src/librawspeed/decoders/IiqDecoder.cpp
|
||||
index 31c460d9..61b04e1a 100644
|
||||
--- a/src/librawspeed/decoders/IiqDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/IiqDecoder.cpp
|
||||
@@ -185,7 +185,7 @@ RawImage IiqDecoder::decodeRawInternal() {
|
||||
}
|
||||
|
||||
// FIXME: could be wrong. max "active pixels" in "Sensor+" mode - "101 MP"
|
||||
- if (width == 0 || height == 0 || width > 11976 || height > 8854)
|
||||
+ if (width == 0 || height == 0 /* || width > 11976 || height > 8854 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
if (split_col > width || split_row > height)
|
||||
diff --git a/src/librawspeed/decoders/MosDecoder.cpp b/src/librawspeed/decoders/MosDecoder.cpp
|
||||
index 9f01a11c..db4b8f50 100644
|
||||
--- a/src/librawspeed/decoders/MosDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/MosDecoder.cpp
|
||||
@@ -113,7 +113,7 @@ RawImage MosDecoder::decodeRawInternal() {
|
||||
uint32_t height = raw->getEntry(IMAGELENGTH)->getU32();
|
||||
|
||||
// FIXME: could be wrong. max "active pixels" - "80 MP"
|
||||
- if (width == 0 || height == 0 || width > 10328 || height > 7760)
|
||||
+ if (width == 0 || height == 0 /* || width > 10328 || height > 7760 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
diff --git a/src/librawspeed/decoders/NefDecoder.cpp b/src/librawspeed/decoders/NefDecoder.cpp
|
||||
index 222c62f0..7314ca15 100644
|
||||
--- a/src/librawspeed/decoders/NefDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/NefDecoder.cpp
|
||||
@@ -214,7 +214,7 @@ void NefDecoder::DecodeUncompressed() {
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
|
||||
- if (width == 0 || height == 0 || width > 8288 || height > 5520)
|
||||
+ if (width == 0 || height == 0 /* || width > 8288 || height > 5520 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
if (counts->count != offsets->count) {
|
||||
@@ -370,8 +370,8 @@ void NefDecoder::DecodeSNefUncompressed() {
|
||||
uint32_t width = raw->getEntry(IMAGEWIDTH)->getU32();
|
||||
uint32_t height = raw->getEntry(IMAGELENGTH)->getU32();
|
||||
|
||||
- if (width == 0 || height == 0 || width % 2 != 0 || width > 3680 ||
|
||||
- height > 2456)
|
||||
+ if (width == 0 || height == 0 || width % 2 != 0 /* || width > 3680 ||
|
||||
+ height > 2456 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
diff --git a/src/librawspeed/decoders/OrfDecoder.cpp b/src/librawspeed/decoders/OrfDecoder.cpp
|
||||
index 7eb1a901..de557d5f 100644
|
||||
--- a/src/librawspeed/decoders/OrfDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/OrfDecoder.cpp
|
||||
@@ -109,7 +109,7 @@ RawImage OrfDecoder::decodeRawInternal() {
|
||||
uint32_t width = raw->getEntry(IMAGEWIDTH)->getU32();
|
||||
uint32_t height = raw->getEntry(IMAGELENGTH)->getU32();
|
||||
|
||||
- if (!width || !height || width % 2 != 0 || width > 10400 || height > 7796)
|
||||
+ if (!width || !height || width % 2 != 0 /* || width > 10400 || height > 7796 */ )
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
diff --git a/src/librawspeed/decoders/RafDecoder.cpp b/src/librawspeed/decoders/RafDecoder.cpp
|
||||
index 5baf02b9..27e67e7a 100644
|
||||
--- a/src/librawspeed/decoders/RafDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/RafDecoder.cpp
|
||||
@@ -79,7 +79,7 @@ RawImage RafDecoder::decodeRawInternal() {
|
||||
} else
|
||||
ThrowRDE("Unable to locate image size");
|
||||
|
||||
- if (width == 0 || height == 0 || width > 11808 || height > 8754)
|
||||
+ if (width == 0 || height == 0 /* || width > 11808 || height > 8754 */ )
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
if (raw->hasEntry(FUJI_LAYOUT)) {
|
||||
@@ -334,7 +334,7 @@ int RafDecoder::isCompressed() {
|
||||
} else
|
||||
ThrowRDE("Unable to locate image size");
|
||||
|
||||
- if (width == 0 || height == 0 || width > 11808 || height > 8754)
|
||||
+ if (width == 0 || height == 0 /* || width > 11808 || height > 8754 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
uint32_t count = raw->getEntry(FUJI_STRIPBYTECOUNTS)->getU32();
|
||||
diff --git a/src/librawspeed/decoders/RawDecoder.cpp b/src/librawspeed/decoders/RawDecoder.cpp
|
||||
index a69727f6..e5315a42 100644
|
||||
--- a/src/librawspeed/decoders/RawDecoder.cpp
|
||||
+++ b/src/librawspeed/decoders/RawDecoder.cpp
|
||||
@@ -62,7 +62,7 @@ void RawDecoder::decodeUncompressed(const TiffIFD *rawIFD, BitOrder order) {
|
||||
uint32_t height = rawIFD->getEntry(IMAGELENGTH)->getU32();
|
||||
uint32_t bitPerPixel = rawIFD->getEntry(BITSPERSAMPLE)->getU32();
|
||||
|
||||
- if (width == 0 || height == 0 || width > 5632 || height > 3720)
|
||||
+ if (width == 0 || height == 0 /* || width > 5632 || height > 3720 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
mRaw->dim = iPoint2D(width, height);
|
||||
diff --git a/src/librawspeed/decoders/Rw2Decoder.cpp b/src/librawspeed/decoders/Rw2Decoder.cpp
|
||||
index 0e9d111d..a54de998 100644
|
||||
--- a/src/librawspeed/decoders/Rw2Decoder.cpp
|
||||
+++ b/src/librawspeed/decoders/Rw2Decoder.cpp
|
||||
@@ -72,7 +72,7 @@ RawImage Rw2Decoder::decodeRawInternal() {
|
||||
uint32_t width = raw->getEntry(static_cast<TiffTag>(2))->getU16();
|
||||
|
||||
if (isOldPanasonic) {
|
||||
- if (width == 0 || height == 0 || width > 4330 || height > 2751)
|
||||
+ if (width == 0 || height == 0 /* || width > 4330 || height > 2751 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", width, height);
|
||||
|
||||
TiffEntry *offsets = raw->getEntry(STRIPOFFSETS);
|
||||
diff --git a/src/librawspeed/decompressors/HasselbladDecompressor.cpp b/src/librawspeed/decompressors/HasselbladDecompressor.cpp
|
||||
index 0d650065..aaa70fb5 100644
|
||||
--- a/src/librawspeed/decompressors/HasselbladDecompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/HasselbladDecompressor.cpp
|
||||
@@ -41,8 +41,8 @@ HasselbladDecompressor::HasselbladDecompressor(const ByteStream& bs,
|
||||
ThrowRDE("Unexpected component count / data type");
|
||||
|
||||
// FIXME: could be wrong. max "active pixels" - "100 MP"
|
||||
- if (mRaw->dim.x == 0 || mRaw->dim.y == 0 || mRaw->dim.x % 2 != 0 ||
|
||||
- mRaw->dim.x > 12000 || mRaw->dim.y > 8816) {
|
||||
+ if (mRaw->dim.x == 0 || mRaw->dim.y == 0 || mRaw->dim.x % 2 != 0 /* ||
|
||||
+ mRaw->dim.x > 12000 || mRaw->dim.y > 8816 */) {
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", mRaw->dim.x,
|
||||
mRaw->dim.y);
|
||||
}
|
||||
diff --git a/src/librawspeed/decompressors/NikonDecompressor.cpp b/src/librawspeed/decompressors/NikonDecompressor.cpp
|
||||
index ca39cd0a..54568243 100644
|
||||
--- a/src/librawspeed/decompressors/NikonDecompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/NikonDecompressor.cpp
|
||||
@@ -442,8 +442,8 @@ NikonDecompressor::NikonDecompressor(const RawImage& raw, ByteStream metadata,
|
||||
mRaw->getBpp() != sizeof(uint16_t))
|
||||
ThrowRDE("Unexpected component count / data type");
|
||||
|
||||
- if (mRaw->dim.x == 0 || mRaw->dim.y == 0 || mRaw->dim.x % 2 != 0 ||
|
||||
- mRaw->dim.x > 8288 || mRaw->dim.y > 5520)
|
||||
+ if (mRaw->dim.x == 0 || mRaw->dim.y == 0 || mRaw->dim.x % 2 != 0 /* ||
|
||||
+ mRaw->dim.x > 8288 || mRaw->dim.y > 5520 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", mRaw->dim.x,
|
||||
mRaw->dim.y);
|
||||
|
||||
diff --git a/src/librawspeed/decompressors/OlympusDecompressor.cpp b/src/librawspeed/decompressors/OlympusDecompressor.cpp
|
||||
index b859b562..dc8aa0bc 100644
|
||||
--- a/src/librawspeed/decompressors/OlympusDecompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/OlympusDecompressor.cpp
|
||||
@@ -56,7 +56,7 @@ OlympusDecompressor::OlympusDecompressor(const RawImage& img) : mRaw(img) {
|
||||
const uint32_t w = mRaw->dim.x;
|
||||
const uint32_t h = mRaw->dim.y;
|
||||
|
||||
- if (w == 0 || h == 0 || w % 2 != 0 || w > 10400 || h > 7792)
|
||||
+ if (w == 0 || h == 0 || w % 2 != 0 /* || w > 10400 || h > 7792 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", w, h);
|
||||
}
|
||||
|
||||
diff --git a/src/librawspeed/decompressors/PentaxDecompressor.cpp b/src/librawspeed/decompressors/PentaxDecompressor.cpp
|
||||
index 11b1d677..c2adc2e6 100644
|
||||
--- a/src/librawspeed/decompressors/PentaxDecompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/PentaxDecompressor.cpp
|
||||
@@ -49,8 +49,8 @@ PentaxDecompressor::PentaxDecompressor(const RawImage& img,
|
||||
mRaw->getBpp() != sizeof(uint16_t))
|
||||
ThrowRDE("Unexpected component count / data type");
|
||||
|
||||
- if (!mRaw->dim.x || !mRaw->dim.y || mRaw->dim.x % 2 != 0 ||
|
||||
- mRaw->dim.x > 8384 || mRaw->dim.y > 6208) {
|
||||
+ if (!mRaw->dim.x || !mRaw->dim.y || mRaw->dim.x % 2 != 0 /* ||
|
||||
+ mRaw->dim.x > 8384 || mRaw->dim.y > 6208 */) {
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", mRaw->dim.x,
|
||||
mRaw->dim.y);
|
||||
}
|
||||
diff --git a/src/librawspeed/decompressors/SonyArw2Decompressor.cpp b/src/librawspeed/decompressors/SonyArw2Decompressor.cpp
|
||||
index 8f935d9c..3cbc7e26 100644
|
||||
--- a/src/librawspeed/decompressors/SonyArw2Decompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/SonyArw2Decompressor.cpp
|
||||
@@ -45,7 +45,7 @@ SonyArw2Decompressor::SonyArw2Decompressor(const RawImage& img,
|
||||
const uint32_t w = mRaw->dim.x;
|
||||
const uint32_t h = mRaw->dim.y;
|
||||
|
||||
- if (w == 0 || h == 0 || w % 32 != 0 || w > 9600 || h > 6376)
|
||||
+ if (w == 0 || h == 0 || w % 32 != 0 /* || w > 9600 || h > 6376 */)
|
||||
ThrowRDE("Unexpected image dimensions found: (%u; %u)", w, h);
|
||||
|
||||
// 1 byte per pixel
|
@@ -0,0 +1,37 @@
|
||||
diff --git a/src/librawspeed/common/DefaultInitAllocatorAdaptor.h b/src/librawspeed/common/DefaultInitAllocatorAdaptor.h
|
||||
index 2ff8969e..fa18c312 100644
|
||||
--- a/src/librawspeed/common/DefaultInitAllocatorAdaptor.h
|
||||
+++ b/src/librawspeed/common/DefaultInitAllocatorAdaptor.h
|
||||
@@ -27,8 +27,12 @@
|
||||
namespace rawspeed {
|
||||
|
||||
template <typename T, typename ActualAllocator = std::allocator<T>,
|
||||
- typename = std::enable_if_t<std::is_pod<T>::value>>
|
||||
-class DefaultInitAllocatorAdaptor {
|
||||
+#ifdef _MSC_VER
|
||||
+ typename = std::enable_if_t<true>>
|
||||
+#else
|
||||
+ typename = std::enable_if_t<std::is_pod<T>::value >>
|
||||
+#endif
|
||||
+ class DefaultInitAllocatorAdaptor {
|
||||
public:
|
||||
using allocator_traits = std::allocator_traits<ActualAllocator>;
|
||||
|
||||
diff --git a/src/librawspeed/decompressors/VC5Decompressor.cpp b/src/librawspeed/decompressors/VC5Decompressor.cpp
|
||||
index c498ac3a..de4ae412 100644
|
||||
--- a/src/librawspeed/decompressors/VC5Decompressor.cpp
|
||||
+++ b/src/librawspeed/decompressors/VC5Decompressor.cpp
|
||||
@@ -398,7 +398,12 @@ VC5Decompressor::VC5Decompressor(ByteStream bs, const RawImage& img)
|
||||
wavelet.height = waveletHeight;
|
||||
|
||||
wavelet.bands.resize(
|
||||
- &wavelet == channel.wavelets.begin() ? 1 : Wavelet::maxBands);
|
||||
+#ifdef _MSC_VER
|
||||
+ Wavelet::maxBands
|
||||
+#else
|
||||
+ &wavelet == channel.wavelets.begin() ? 1 : Wavelet::maxBands
|
||||
+#endif
|
||||
+ );
|
||||
}
|
||||
}
|
||||
|
251
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi.cpp
Normal file
251
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi.cpp
Normal file
@@ -0,0 +1,251 @@
|
||||
#include "rawspeed3_capi.h"
|
||||
#include "RawSpeed-API.h"
|
||||
#define HAVE_PUGIXML
|
||||
#include <../pugixml/pugixml.hpp> // for xml_document, xml_pars...
|
||||
|
||||
extern const char* _rawspeed3_data_xml;
|
||||
|
||||
class rawspeed3_handle_data
|
||||
{
|
||||
public:
|
||||
rawspeed3_handle_data(const char* cameradefs, bool is_file);
|
||||
void release();
|
||||
int decodefile(rawspeed3_ret_t* resultp, const void *data, size_t datasize, bool allowunknown);
|
||||
~rawspeed3_handle_data();
|
||||
private:
|
||||
std::unique_ptr <rawspeed::CameraMetaData> cameraMeta;
|
||||
std::unique_ptr<rawspeed::RawParser> rawParser;
|
||||
std::unique_ptr<rawspeed::RawDecoder> rawDecoder;
|
||||
};
|
||||
|
||||
|
||||
/* API calls */
|
||||
|
||||
extern "C"
|
||||
{
|
||||
|
||||
/*
|
||||
void rawspeed3_clearresult(rawspeed3_ret_t* r)
|
||||
|
||||
Clears (inits) results structure
|
||||
*/
|
||||
DllDef void rawspeed3_clearresult(rawspeed3_ret_t* r)
|
||||
{
|
||||
if(!r) return;
|
||||
r->width = r->height = r->bpp = r->cpp = 0;
|
||||
r->status = rawspeed_inited;
|
||||
r->pitch = r->filters = 0;
|
||||
r->pixeldata = nullptr;
|
||||
}
|
||||
|
||||
/*
|
||||
rawspeed3_init()
|
||||
Init rawspeed3 Camera, returns: 0 on failure, pointer to data block on success
|
||||
Cameradefs: cameras.xml in string (is_file == false) or file (is_file == true)
|
||||
*/
|
||||
|
||||
DllDef rawspeed3_handle_t rawspeed3_init(const char* cameradefs, bool is_file)
|
||||
{
|
||||
/* Create rawspeed3_handle_data and return it as void document */
|
||||
if(!cameradefs) return nullptr;
|
||||
try
|
||||
{
|
||||
/* code */
|
||||
auto *handle = new rawspeed3_handle_data(cameradefs, is_file);
|
||||
return (void*)handle;
|
||||
}
|
||||
catch(const std::exception& e)
|
||||
{
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
rawspeed3_initdefault()
|
||||
Init rawspeed3 Cameradefs with built-in cameras.xml (converted to _rawspeed3_data_xml),
|
||||
returns: 0 on failure, pointer to data block on success
|
||||
*/
|
||||
|
||||
DllDef rawspeed3_handle_t rawspeed3_initdefault()
|
||||
{
|
||||
return rawspeed3_init(_rawspeed3_data_xml,false);
|
||||
}
|
||||
|
||||
/*
|
||||
rawspeed3_decodefile(..)
|
||||
parse/decode RAW file passed via memory
|
||||
Parameters:
|
||||
handle - rawspeed3_handle_t => handle created by rawspeed3_init()
|
||||
resultp -> pointer to rawspeed3_ret_t to be filled with
|
||||
data -> data buffer with raw file
|
||||
datasize -> size of this buffer
|
||||
allowunknown -> allow to process unknown cameras (not listed in cameras.xml)
|
||||
Return values:
|
||||
0 -> OK
|
||||
>=1 -> decode error
|
||||
-1 -> Incorrect parameters passed (handle, or data, or datasize)
|
||||
*/
|
||||
|
||||
DllDef int rawspeed3_decodefile(rawspeed3_handle_t handle, rawspeed3_ret_t* resultp,
|
||||
const void *data, size_t datasize, bool allowunknown)
|
||||
{
|
||||
if(!handle || !resultp || !data || datasize > 2UL * 1024UL * 1024UL * 1024UL)
|
||||
{
|
||||
if(resultp)
|
||||
resultp->status = rawspeed3_param_error;
|
||||
return -1;
|
||||
}
|
||||
rawspeed3_clearresult(resultp);
|
||||
auto *p = static_cast<rawspeed3_handle_data*>(handle);
|
||||
return p->decodefile(resultp,data,datasize,allowunknown);
|
||||
}
|
||||
|
||||
/*
|
||||
void rawspeed3_release(rawspeed3_handle_t handle)
|
||||
|
||||
release internal raw data buffer and error code;
|
||||
*/
|
||||
|
||||
/* release internal raw data buffer and errmessage (if any) */
|
||||
DllDef void rawspeed3_release(rawspeed3_handle_t handle)
|
||||
{
|
||||
if(!handle) return;
|
||||
auto *p = static_cast<rawspeed3_handle_data*>(handle);
|
||||
p->release();
|
||||
}
|
||||
|
||||
/* close handle: release all internal data */
|
||||
DllDef void rawspeed3_close(rawspeed3_handle_t handle)
|
||||
{
|
||||
if(!handle) return;
|
||||
auto *p = static_cast<rawspeed3_handle_data*>(handle);
|
||||
delete p;
|
||||
}
|
||||
|
||||
} /* extern "C" */
|
||||
|
||||
// == Implementation
|
||||
|
||||
int rawspeed3_handle_data::decodefile(rawspeed3_ret_t* resultp,
|
||||
const void *data, size_t datasize, bool allowunknown)
|
||||
{
|
||||
if(!cameraMeta)
|
||||
{
|
||||
resultp->status = rawspeed3_not_inited;
|
||||
return rawspeed3_not_inited;
|
||||
}
|
||||
try
|
||||
{
|
||||
rawspeed::Buffer buffer( static_cast<const uint8_t*>(data),datasize);
|
||||
release();
|
||||
rawParser = std::make_unique<rawspeed::RawParser>(buffer);
|
||||
auto d(rawParser->getDecoder(cameraMeta.get()));
|
||||
if(!d)
|
||||
{
|
||||
resultp->status = rawspeed3_no_decoder;
|
||||
return rawspeed3_no_decoder;
|
||||
}
|
||||
|
||||
d->applyCrop = false;
|
||||
d->failOnUnknown = !allowunknown;
|
||||
d->interpolateBadPixels = false;
|
||||
d->applyStage1DngOpcodes = false;
|
||||
d->fujiRotate = false;
|
||||
d->applyCrop = false;
|
||||
|
||||
try {
|
||||
d->checkSupport(cameraMeta.get());
|
||||
} catch (...) {
|
||||
release();
|
||||
resultp->status = rawspeed3_not_supported;
|
||||
return resultp->status;
|
||||
}
|
||||
|
||||
rawspeed::RawImage r = d->mRaw;
|
||||
d->decodeMetaData(cameraMeta.get());
|
||||
|
||||
d->checkSupport(cameraMeta.get());
|
||||
d->decodeRaw();
|
||||
d->decodeMetaData(cameraMeta.get());
|
||||
r = d->mRaw;
|
||||
|
||||
rawDecoder = std::move(d);
|
||||
// we're here w/o exceptions: success
|
||||
const rawspeed::iPoint2D dimUncropped = r->getUncroppedDim();
|
||||
resultp->width = dimUncropped.x;
|
||||
resultp->height = dimUncropped.y;
|
||||
resultp->filters = r->cfa.getDcrawFilter();
|
||||
resultp->cpp = r->getCpp();
|
||||
resultp->bpp = r->getBpp();
|
||||
resultp->pitch = r->pitch;
|
||||
resultp->pixeldata = r->getDataUncropped(0,0);
|
||||
const auto errors = r->getErrors();
|
||||
resultp->status = errors.empty()? rawspeed3_ok : rawspeed3_ok_warnings;
|
||||
return resultp->status;
|
||||
/* code */
|
||||
}
|
||||
catch(...)
|
||||
{
|
||||
resultp->status = rawspeed3_processing_error;
|
||||
return rawspeed3_processing_error;
|
||||
}
|
||||
}
|
||||
|
||||
namespace rawspeed
|
||||
{
|
||||
class CameraMetaDataFromMem : public CameraMetaData
|
||||
{
|
||||
public:
|
||||
explicit CameraMetaDataFromMem(const char* xmlstring);
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
rawspeed3_handle_data::rawspeed3_handle_data(const char* cameradefs, bool is_file)
|
||||
: rawParser(nullptr)
|
||||
{
|
||||
cameraMeta = is_file ? std::make_unique<rawspeed::CameraMetaData>(cameradefs)
|
||||
: std::make_unique <rawspeed::CameraMetaDataFromMem>(cameradefs);
|
||||
}
|
||||
rawspeed3_handle_data::~rawspeed3_handle_data()
|
||||
{
|
||||
release();
|
||||
cameraMeta.reset();
|
||||
}
|
||||
|
||||
void rawspeed3_handle_data::release()
|
||||
{
|
||||
if(rawDecoder)
|
||||
rawDecoder.reset();
|
||||
if (rawParser)
|
||||
rawParser.reset();
|
||||
}
|
||||
|
||||
// Camera metadata from mem
|
||||
namespace rawspeed
|
||||
{
|
||||
CameraMetaDataFromMem::CameraMetaDataFromMem(const char* document)
|
||||
{
|
||||
using pugi::xml_node;
|
||||
using pugi::xml_document;
|
||||
using pugi::xml_parse_result;
|
||||
|
||||
xml_document doc;
|
||||
xml_parse_result result = doc.load_string(document);
|
||||
|
||||
if (!result)
|
||||
throw "Camera definitions parse error";
|
||||
|
||||
for (xml_node camera : doc.child("Cameras").children("Camera"))
|
||||
{
|
||||
const auto* cam = addCamera(std::make_unique<Camera>(camera));
|
||||
|
||||
if (cam == nullptr)
|
||||
continue;
|
||||
|
||||
// Create cameras for aliases.
|
||||
for (auto i = 0UL; i < cam->aliases.size(); i++)
|
||||
addCamera(std::make_unique<Camera>(cam, i));
|
||||
}
|
||||
}
|
||||
} // namespace rawspeed
|
83
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi.h
Normal file
83
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rawspeed3_capi.h
Normal file
@@ -0,0 +1,83 @@
|
||||
#pragma once
|
||||
#include <stdint.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifdef RAWSPEED_BUILDLIB
|
||||
#define DllDef __declspec(dllexport)
|
||||
#else
|
||||
#define DllDef __declspec(dllimport)
|
||||
#endif
|
||||
#else
|
||||
#define DllDef
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
enum rawspeed3_error_codes
|
||||
{
|
||||
rawspeed_inited = -2,
|
||||
rawspeed3_param_error = -1,
|
||||
rawspeed3_ok = 0,
|
||||
rawspeed3_ok_warnings = 1,
|
||||
rawspeed3_not_inited = 2,
|
||||
rawspeed3_processing_error = 3,
|
||||
rawspeed3_no_decoder = 4,
|
||||
rawspeed3_not_supported = 5,
|
||||
};
|
||||
|
||||
typedef void *rawspeed3_handle_t;
|
||||
|
||||
/* RAW file parsing results */
|
||||
typedef struct
|
||||
{
|
||||
int status; /* -1: param error, 0 => OK, >=1 error code */
|
||||
uint16_t width, height, bpp, cpp;
|
||||
unsigned pitch, filters;
|
||||
const void *pixeldata;
|
||||
}rawspeed3_ret_t;
|
||||
|
||||
/* API calls */
|
||||
DllDef void rawspeed3_clearresult(rawspeed3_ret_t*);
|
||||
/*
|
||||
rawspeed3_init()
|
||||
Init rawspeed3 Camera, returns: 0 on failure, pointer to data block on success
|
||||
Cameradefs: cameras.xml in string (is_file == false) or file (is_file == true)
|
||||
*/
|
||||
DllDef rawspeed3_handle_t rawspeed3_init(const char* cameradefs, bool is_file);
|
||||
|
||||
/* init with built-in cameras.xml */
|
||||
DllDef rawspeed3_handle_t rawspeed3_initdefault();
|
||||
|
||||
/*
|
||||
rawspeed3_decodefile(..)
|
||||
parse/decode RAW file passed via memory
|
||||
Parameters:
|
||||
handle - rawspeed3_handle_t => handle created by rawspeed3_init()
|
||||
resultp -> pointer to rawspeed3_ret_t to be filled with
|
||||
data -> data buffer with raw file
|
||||
datasize -> size of this buffer
|
||||
allowunknown -> allow to process unknown cameras (not listed in cameras.xml)
|
||||
Return values:
|
||||
0 -> OK
|
||||
1 -> decode warnings (not fatal)
|
||||
>1 -> error code
|
||||
-1 -> Incorrect parameters passed (handle, or data, or datasize)
|
||||
*/
|
||||
DllDef int rawspeed3_decodefile(rawspeed3_handle_t handle, rawspeed3_ret_t* resultp,
|
||||
const void *data, size_t datasize, bool allowunknown);
|
||||
|
||||
/* release internal raw data buffer */
|
||||
DllDef void rawspeed3_release(rawspeed3_handle_t handle);
|
||||
|
||||
/* close handle: release all internal data */
|
||||
DllDef void rawspeed3_close(rawspeed3_handle_t handle);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* Extern C */
|
||||
#endif
|
@@ -0,0 +1,71 @@
|
||||
#include "rawspeed3_capi.h"
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
#include <stdint.h>
|
||||
|
||||
|
||||
|
||||
std::vector<uint8_t> readfile(char *fn)
|
||||
{
|
||||
std::ifstream is(fn,std::ifstream::binary);
|
||||
if(is)
|
||||
{
|
||||
is.seekg(0, is.end);
|
||||
size_t length = is.tellg();
|
||||
is.seekg(0, is.beg);
|
||||
std::vector<uint8_t> ret;
|
||||
ret.resize(length+1);
|
||||
is.read ((char*)ret.data(),length);
|
||||
is.close();
|
||||
ret[length] = 0; // zero terminated
|
||||
std::cout << "File: " << fn << " size:" << ret.size() << std::endl;
|
||||
return ret;
|
||||
}
|
||||
else
|
||||
return std::vector<uint8_t>();
|
||||
}
|
||||
|
||||
|
||||
int main(int ac, char *av[])
|
||||
{
|
||||
if(ac < 2)
|
||||
{
|
||||
std::cout << "Usage: " << av[0] << " rawfile rawfile2 ...." << std::endl;
|
||||
return 1;
|
||||
}
|
||||
rawspeed3_handle_t handle = rawspeed3_initdefault();
|
||||
if(!handle)
|
||||
{
|
||||
std::cerr << "Unable to init rs3" << std::endl;
|
||||
return 2;
|
||||
}
|
||||
|
||||
for(int i = 1; i < ac; i++)
|
||||
{
|
||||
std::vector<uint8_t> rawdata = readfile(av[i]);
|
||||
if (rawdata.size() < 100) {
|
||||
std::cerr << "Input file " << av[i] << " too small or nonexistent" << std::endl;
|
||||
continue;
|
||||
}
|
||||
rawspeed3_ret_t result;
|
||||
int q = rawspeed3_decodefile(handle, &result, rawdata.data(),
|
||||
rawdata.size(), true);
|
||||
if (q >= rawspeed3_ok && q <= rawspeed3_ok_warnings) {
|
||||
std::cout << "File decoded code=" << result.status <<" width=" << result.width
|
||||
<< " height=" << result.height
|
||||
<< " pitch=" << result.pitch
|
||||
<< " filters=" << std::hex << result.filters << std::dec
|
||||
<< " channels=" << result.cpp
|
||||
<< " bpp=" << result.bpp
|
||||
<< std::endl;
|
||||
} else
|
||||
std::cout << "RawSpeed wrapper error code:" << result.status
|
||||
<< std::endl;
|
||||
|
||||
rawspeed3_release(handle);
|
||||
}
|
||||
|
||||
rawspeed3_close(handle);
|
||||
|
||||
}
|
5
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rsxml2c.sh
Normal file
5
rtengine/libraw/RawSpeed3/rawspeed3_c_api/rsxml2c.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "const char *_rawspeed3_data_xml="
|
||||
cat $1 | tr -d '\015' | sed -e 's/\\/\\\\/g;s/"/\\"/g;s/ /\\t/g;s/^/"/;s/$/\\n"/'
|
||||
echo "\"\\0\";"
|
2
rtengine/libraw/bin/.keep_me
Normal file
2
rtengine/libraw/bin/.keep_me
Normal file
@@ -0,0 +1,2 @@
|
||||
|
||||
|
5
rtengine/libraw/buildfiles/4channels.pro
Normal file
5
rtengine/libraw/buildfiles/4channels.pro
Normal file
@@ -0,0 +1,5 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
SOURCES=../samples/4channels.cpp
|
145
rtengine/libraw/buildfiles/4channels.vcxproj
Normal file
145
rtengine/libraw/buildfiles/4channels.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{F68CBE78-B27A-3A05-BCD3-293E8CAC1C52}</ProjectGuid>
|
||||
<RootNamespace>4channels</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\4channels.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>4channels</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\4channels.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>4channels</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\4channels.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">4channels</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\4channels.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">4channels</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\4channels.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\4channels.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\4channels.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\4channels.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\4channels.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\4channels.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\4channels.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/4channels.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/4channels.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\4channels.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/dcraw_emu.pro
Normal file
6
rtengine/libraw/buildfiles/dcraw_emu.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/dcraw_emu.cpp
|
145
rtengine/libraw/buildfiles/dcraw_emu.vcxproj
Normal file
145
rtengine/libraw/buildfiles/dcraw_emu.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{48688DB8-559A-3DE2-ADDE-5BD27BFEDDA2}</ProjectGuid>
|
||||
<RootNamespace>dcraw_emu</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\dcraw_emu.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>dcraw_emu</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\dcraw_emu.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>dcraw_emu</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\dcraw_emu.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dcraw_emu</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\dcraw_emu.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dcraw_emu</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\dcraw_emu.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\dcraw_emu.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\dcraw_emu.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\dcraw_emu.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\dcraw_emu.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\dcraw_emu.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\dcraw_emu.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/dcraw_emu.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/dcraw_emu.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\dcraw_emu.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/dcraw_half.pro
Normal file
6
rtengine/libraw/buildfiles/dcraw_half.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/dcraw_half.c
|
145
rtengine/libraw/buildfiles/dcraw_half.vcxproj
Normal file
145
rtengine/libraw/buildfiles/dcraw_half.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{C6EACFA3-9FC5-393B-BCF6-2874B05E4581}</ProjectGuid>
|
||||
<RootNamespace>dcraw_half</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\dcraw_half.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>dcraw_half</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\dcraw_half.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>dcraw_half</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\dcraw_half.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">dcraw_half</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\dcraw_half.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">dcraw_half</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\dcraw_half.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\dcraw_half.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\dcraw_half.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\dcraw_half.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\dcraw_half.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\dcraw_half.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\dcraw_half.c" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/dcraw_half.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/dcraw_half.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\dcraw_half.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
10
rtengine/libraw/buildfiles/half_mt.pro
Normal file
10
rtengine/libraw/buildfiles/half_mt.pro
Normal file
@@ -0,0 +1,10 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
win32 {
|
||||
SOURCES=../samples/half_mt_win32.c
|
||||
} else {
|
||||
SOURCES=../samples/half_mt.c
|
||||
}
|
28
rtengine/libraw/buildfiles/libraw-common-lib.pro
Normal file
28
rtengine/libraw/buildfiles/libraw-common-lib.pro
Normal file
@@ -0,0 +1,28 @@
|
||||
win32 {
|
||||
QMAKE_CXXFLAGS+=/MP
|
||||
!contains(QMAKE_HOST.arch, x86_64) {
|
||||
SUFF="x86"
|
||||
} else {
|
||||
## Windows x64 (64bit) specific build here
|
||||
SUFF="x86_64"
|
||||
}
|
||||
}
|
||||
|
||||
CONFIG(debug,debug|release) {
|
||||
win32:OUTD=debug-$$SUFF
|
||||
win32:OUTDE=debug-$$SUFF
|
||||
macx:OUTD=debug
|
||||
} else {
|
||||
win32:OUTD=release-$$SUFF
|
||||
win32:OUTDE=release-$$SUFF
|
||||
macx:OUTD=release
|
||||
}
|
||||
|
||||
INCLUDEPATH+=../
|
||||
OBJECTS_DIR = $$OUTD/$${TARGET}.obj
|
||||
MOC_DIR = $$OUTD/
|
||||
RCC_DIR = $$OUTD/
|
||||
UI_DIR = $$OUTD/
|
||||
DESTDIR = $$OUTD/
|
||||
LIBS+=-L$$OUTD
|
||||
CONFIG+=warn_off
|
8
rtengine/libraw/buildfiles/libraw-common.pro
Normal file
8
rtengine/libraw/buildfiles/libraw-common.pro
Normal file
@@ -0,0 +1,8 @@
|
||||
win32:CONFIG+=console
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
win32-g++:
|
||||
{
|
||||
LIBS += -lws2_32
|
||||
}
|
||||
include (libraw-common-lib.pro)
|
70
rtengine/libraw/buildfiles/libraw.pro
Normal file
70
rtengine/libraw/buildfiles/libraw.pro
Normal file
@@ -0,0 +1,70 @@
|
||||
TEMPLATE=lib
|
||||
TARGET=libraw
|
||||
INCLUDEPATH+=../
|
||||
include (libraw-common-lib.pro)
|
||||
|
||||
HEADERS=../libraw/libraw.h \
|
||||
../libraw/libraw_alloc.h \
|
||||
../libraw/libraw_const.h \
|
||||
../libraw/libraw_datastream.h \
|
||||
../libraw/libraw_types.h \
|
||||
../libraw/libraw_internal.h \
|
||||
../libraw/libraw_version.h \
|
||||
../internal/defines.h \
|
||||
../internal/var_defines.h \
|
||||
../internal/libraw_internal_funcs.h \
|
||||
../internal/dcraw_defs.h ../internal/dcraw_fileio_defs.h \
|
||||
../internal/dmp_include.h ../internal/libraw_cxx_defs.h \
|
||||
../internal/x3f_tools.h
|
||||
|
||||
CONFIG +=precompiled_headers
|
||||
|
||||
CONFIG-=qt
|
||||
CONFIG+=warn_off
|
||||
CONFIG+=debug_and_release
|
||||
macx: CONFIG+= static x86 x86_64
|
||||
macx: QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.5
|
||||
DEFINES+=LIBRAW_BUILDLIB
|
||||
|
||||
SOURCES+= ../src/libraw_datastream.cpp ../src/decoders/canon_600.cpp \
|
||||
../src/decoders/crx.cpp ../src/decoders/decoders_dcraw.cpp \
|
||||
../src/decoders/decoders_libraw_dcrdefs.cpp \
|
||||
../src/decoders/decoders_libraw.cpp ../src/decoders/dng.cpp \
|
||||
../src/decoders/fp_dng.cpp ../src/decoders/fuji_compressed.cpp \
|
||||
../src/decoders/generic.cpp ../src/decoders/kodak_decoders.cpp \
|
||||
../src/decoders/load_mfbacks.cpp ../src/decoders/smal.cpp \
|
||||
../src/decoders/unpack_thumb.cpp ../src/decoders/unpack.cpp \
|
||||
../src/demosaic/aahd_demosaic.cpp ../src/demosaic/ahd_demosaic.cpp \
|
||||
../src/demosaic/dcb_demosaic.cpp ../src/demosaic/dht_demosaic.cpp \
|
||||
../src/demosaic/misc_demosaic.cpp ../src/demosaic/xtrans_demosaic.cpp \
|
||||
../src/integration/dngsdk_glue.cpp ../src/integration/rawspeed_glue.cpp \
|
||||
../src/metadata/adobepano.cpp ../src/metadata/canon.cpp \
|
||||
../src/metadata/ciff.cpp ../src/metadata/cr3_parser.cpp \
|
||||
../src/metadata/epson.cpp ../src/metadata/exif_gps.cpp \
|
||||
../src/metadata/fuji.cpp ../src/metadata/identify_tools.cpp \
|
||||
../src/metadata/hasselblad_model.cpp \
|
||||
../src/metadata/identify.cpp ../src/metadata/kodak.cpp \
|
||||
../src/metadata/leica.cpp ../src/metadata/makernotes.cpp \
|
||||
../src/metadata/mediumformat.cpp ../src/metadata/minolta.cpp \
|
||||
../src/metadata/misc_parsers.cpp ../src/metadata/nikon.cpp \
|
||||
../src/metadata/normalize_model.cpp ../src/metadata/olympus.cpp \
|
||||
../src/metadata/p1.cpp ../src/metadata/pentax.cpp \
|
||||
../src/metadata/samsung.cpp ../src/metadata/sony.cpp \
|
||||
../src/metadata/tiff.cpp ../src/postprocessing/aspect_ratio.cpp \
|
||||
../src/postprocessing/dcraw_process.cpp ../src/postprocessing/mem_image.cpp \
|
||||
../src/postprocessing/postprocessing_aux.cpp \
|
||||
../src/postprocessing/postprocessing_utils_dcrdefs.cpp \
|
||||
../src/postprocessing/postprocessing_utils.cpp \
|
||||
../src/preprocessing/ext_preprocess.cpp ../src/preprocessing/raw2image.cpp \
|
||||
../src/preprocessing/subtract_black.cpp ../src/tables/cameralist.cpp \
|
||||
../src/tables/colorconst.cpp ../src/tables/colordata.cpp \
|
||||
../src/tables/wblists.cpp ../src/utils/curves.cpp \
|
||||
../src/utils/decoder_info.cpp ../src/utils/init_close_utils.cpp \
|
||||
../src/utils/open.cpp ../src/utils/phaseone_processing.cpp \
|
||||
../src/utils/read_utils.cpp ../src/utils/thumb_utils.cpp \
|
||||
../src/utils/utils_dcraw.cpp ../src/utils/utils_libraw.cpp \
|
||||
../src/write/apply_profile.cpp ../src/write/file_write.cpp \
|
||||
../src/write/tiff_writer.cpp ../src/x3f/x3f_parse_process.cpp \
|
||||
../src/x3f/x3f_utils_patched.cpp \
|
||||
../src/libraw_c_api.cpp
|
||||
|
234
rtengine/libraw/buildfiles/libraw.vcxproj
Normal file
234
rtengine/libraw/buildfiles/libraw.vcxproj
Normal file
@@ -0,0 +1,234 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{A71D2131-F425-381F-8A9A-29D60132A046}</ProjectGuid>
|
||||
<RootNamespace>libraw</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\libraw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>libraw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\libraw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>libraw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\libraw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">libraw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\libraw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">libraw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\libraw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\libraw.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;LIBRAW_BUILDLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkDLL>true</LinkDLL>
|
||||
<OutputFile>$(OutDir)\libraw.dll</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;LIBRAW_BUILDLIB;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\libraw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\libraw.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;LIBRAW_BUILDLIB;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkDLL>true</LinkDLL>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\libraw.dll</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;LIBRAW_BUILDLIB;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\src\demosaic\aahd_demosaic.cpp" />
|
||||
<ClCompile Include="..\src\metadata\adobepano.cpp" />
|
||||
<ClCompile Include="..\src\demosaic\ahd_demosaic.cpp" />
|
||||
<ClCompile Include="..\src\write\apply_profile.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\aspect_ratio.cpp" />
|
||||
<ClCompile Include="..\src\tables\cameralist.cpp" />
|
||||
<ClCompile Include="..\src\metadata\canon.cpp" />
|
||||
<ClCompile Include="..\src\decoders\canon_600.cpp" />
|
||||
<ClCompile Include="..\src\metadata\ciff.cpp" />
|
||||
<ClCompile Include="..\src\tables\colorconst.cpp" />
|
||||
<ClCompile Include="..\src\tables\colordata.cpp" />
|
||||
<ClCompile Include="..\src\metadata\cr3_parser.cpp" />
|
||||
<ClCompile Include="..\src\decoders\crx.cpp" />
|
||||
<ClCompile Include="..\src\utils\curves.cpp" />
|
||||
<ClCompile Include="..\src\demosaic\dcb_demosaic.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\dcraw_process.cpp" />
|
||||
<ClCompile Include="..\src\utils\decoder_info.cpp" />
|
||||
<ClCompile Include="..\src\decoders\decoders_dcraw.cpp" />
|
||||
<ClCompile Include="..\src\decoders\decoders_libraw.cpp" />
|
||||
<ClCompile Include="..\src\decoders\decoders_libraw_dcrdefs.cpp" />
|
||||
<ClCompile Include="..\src\demosaic\dht_demosaic.cpp" />
|
||||
<ClCompile Include="..\src\decoders\dng.cpp" />
|
||||
<ClCompile Include="..\src\integration\dngsdk_glue.cpp" />
|
||||
<ClCompile Include="..\src\metadata\epson.cpp" />
|
||||
<ClCompile Include="..\src\metadata\exif_gps.cpp" />
|
||||
<ClCompile Include="..\src\preprocessing\ext_preprocess.cpp" />
|
||||
<ClCompile Include="..\src\write\file_write.cpp" />
|
||||
<ClCompile Include="..\src\decoders\fp_dng.cpp" />
|
||||
<ClCompile Include="..\src\metadata\fuji.cpp" />
|
||||
<ClCompile Include="..\src\decoders\fuji_compressed.cpp" />
|
||||
<ClCompile Include="..\src\decoders\generic.cpp" />
|
||||
<ClCompile Include="..\src\metadata\hasselblad_model.cpp" />
|
||||
<ClCompile Include="..\src\metadata\identify.cpp" />
|
||||
<ClCompile Include="..\src\metadata\identify_tools.cpp" />
|
||||
<ClCompile Include="..\src\utils\init_close_utils.cpp" />
|
||||
<ClCompile Include="..\src\metadata\kodak.cpp" />
|
||||
<ClCompile Include="..\src\decoders\kodak_decoders.cpp" />
|
||||
<ClCompile Include="..\src\metadata\leica.cpp" />
|
||||
<ClCompile Include="..\src\libraw_c_api.cpp" />
|
||||
<ClCompile Include="..\src\libraw_datastream.cpp" />
|
||||
<ClCompile Include="..\src\decoders\load_mfbacks.cpp" />
|
||||
<ClCompile Include="..\src\metadata\makernotes.cpp" />
|
||||
<ClCompile Include="..\src\metadata\mediumformat.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\mem_image.cpp" />
|
||||
<ClCompile Include="..\src\metadata\minolta.cpp" />
|
||||
<ClCompile Include="..\src\demosaic\misc_demosaic.cpp" />
|
||||
<ClCompile Include="..\src\metadata\misc_parsers.cpp" />
|
||||
<ClCompile Include="..\src\metadata\nikon.cpp" />
|
||||
<ClCompile Include="..\src\metadata\normalize_model.cpp" />
|
||||
<ClCompile Include="..\src\metadata\olympus.cpp" />
|
||||
<ClCompile Include="..\src\utils\open.cpp" />
|
||||
<ClCompile Include="..\src\metadata\p1.cpp" />
|
||||
<ClCompile Include="..\src\metadata\pentax.cpp" />
|
||||
<ClCompile Include="..\src\utils\phaseone_processing.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_aux.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_utils.cpp" />
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_utils_dcrdefs.cpp" />
|
||||
<ClCompile Include="..\src\preprocessing\raw2image.cpp" />
|
||||
<ClCompile Include="..\src\integration\rawspeed_glue.cpp" />
|
||||
<ClCompile Include="..\src\utils\read_utils.cpp" />
|
||||
<ClCompile Include="..\src\metadata\samsung.cpp" />
|
||||
<ClCompile Include="..\src\decoders\smal.cpp" />
|
||||
<ClCompile Include="..\src\metadata\sony.cpp" />
|
||||
<ClCompile Include="..\src\preprocessing\subtract_black.cpp" />
|
||||
<ClCompile Include="..\src\utils\thumb_utils.cpp" />
|
||||
<ClCompile Include="..\src\metadata\tiff.cpp" />
|
||||
<ClCompile Include="..\src\write\tiff_writer.cpp" />
|
||||
<ClCompile Include="..\src\decoders\unpack.cpp" />
|
||||
<ClCompile Include="..\src\decoders\unpack_thumb.cpp" />
|
||||
<ClCompile Include="..\src\utils\utils_dcraw.cpp" />
|
||||
<ClCompile Include="..\src\utils\utils_libraw.cpp" />
|
||||
<ClCompile Include="..\src\tables\wblists.cpp" />
|
||||
<ClCompile Include="..\src\x3f\x3f_parse_process.cpp" />
|
||||
<ClCompile Include="..\src\x3f\x3f_utils_patched.cpp" />
|
||||
<ClCompile Include="..\src\demosaic\xtrans_demosaic.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\internal\dcraw_defs.h" />
|
||||
<ClInclude Include="..\internal\dcraw_fileio_defs.h" />
|
||||
<ClInclude Include="..\internal\defines.h" />
|
||||
<ClInclude Include="..\internal\dmp_include.h" />
|
||||
<ClInclude Include="..\libraw\libraw.h" />
|
||||
<ClInclude Include="..\libraw\libraw_alloc.h" />
|
||||
<ClInclude Include="..\libraw\libraw_const.h" />
|
||||
<ClInclude Include="..\internal\libraw_cxx_defs.h" />
|
||||
<ClInclude Include="..\libraw\libraw_datastream.h" />
|
||||
<ClInclude Include="..\libraw\libraw_internal.h" />
|
||||
<ClInclude Include="..\internal\libraw_internal_funcs.h" />
|
||||
<ClInclude Include="..\libraw\libraw_types.h" />
|
||||
<ClInclude Include="..\libraw\libraw_version.h" />
|
||||
<ClInclude Include="..\internal\var_defines.h" />
|
||||
<ClInclude Include="..\internal\x3f_tools.h" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
295
rtengine/libraw/buildfiles/libraw.vcxproj.filters
Normal file
295
rtengine/libraw/buildfiles/libraw.vcxproj.filters
Normal file
@@ -0,0 +1,295 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Header Files">
|
||||
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||
<Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\src\demosaic\aahd_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\adobepano.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\demosaic\ahd_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\write\apply_profile.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\aspect_ratio.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\tables\cameralist.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\canon.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\canon_600.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\ciff.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\tables\colorconst.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\tables\colordata.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\cr3_parser.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\crx.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\curves.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\demosaic\dcb_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\dcraw_process.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\decoder_info.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\decoders_dcraw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\decoders_libraw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\decoders_libraw_dcrdefs.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\demosaic\dht_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\dng.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\integration\dngsdk_glue.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\epson.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\exif_gps.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\preprocessing\ext_preprocess.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\write\file_write.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\fp_dng.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\fuji.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\fuji_compressed.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\generic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\hasselblad_model.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\identify.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\identify_tools.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\init_close_utils.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\kodak.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\kodak_decoders.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\leica.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\libraw_c_api.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\libraw_datastream.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\load_mfbacks.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\makernotes.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\mediumformat.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\mem_image.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\minolta.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\demosaic\misc_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\misc_parsers.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\nikon.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\normalize_model.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\olympus.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\open.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\p1.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\pentax.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\phaseone_processing.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_aux.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_utils.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\postprocessing\postprocessing_utils_dcrdefs.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\preprocessing\raw2image.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\integration\rawspeed_glue.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\read_utils.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\samsung.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\smal.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\sony.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\preprocessing\subtract_black.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\thumb_utils.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\metadata\tiff.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\write\tiff_writer.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\unpack.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\decoders\unpack_thumb.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\utils_dcraw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\utils\utils_libraw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\tables\wblists.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\x3f\x3f_parse_process.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\x3f\x3f_utils_patched.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\src\demosaic\xtrans_demosaic.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\internal\dcraw_defs.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\dcraw_fileio_defs.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\defines.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\dmp_include.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_alloc.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_const.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\libraw_cxx_defs.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_datastream.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_internal.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\libraw_internal_funcs.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_types.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\libraw\libraw_version.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\var_defines.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\internal\x3f_tools.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/mem_image.pro
Normal file
6
rtengine/libraw/buildfiles/mem_image.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/mem_image_sample.cpp
|
145
rtengine/libraw/buildfiles/mem_image.vcxproj
Normal file
145
rtengine/libraw/buildfiles/mem_image.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{BF8A2750-B847-3BA6-9EAF-05F43380F46C}</ProjectGuid>
|
||||
<RootNamespace>mem_image</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\mem_image.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>mem_image</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\mem_image.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>mem_image</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\mem_image.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">mem_image</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\mem_image.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">mem_image</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\mem_image.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\mem_image.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\mem_image.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\mem_image.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\mem_image.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\mem_image.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\mem_image_sample.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/mem_image.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/mem_image.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\mem_image_sample.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/multirender_test.pro
Normal file
6
rtengine/libraw/buildfiles/multirender_test.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/multirender_test.cpp
|
145
rtengine/libraw/buildfiles/multirender_test.vcxproj
Normal file
145
rtengine/libraw/buildfiles/multirender_test.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{30D21208-219A-3AA8-ADCF-E6B1FFAF6A73}</ProjectGuid>
|
||||
<RootNamespace>multirender_test</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\multirender_test.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>multirender_test</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\multirender_test.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>multirender_test</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\multirender_test.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">multirender_test</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\multirender_test.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">multirender_test</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\multirender_test.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\multirender_test.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\multirender_test.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\multirender_test.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\multirender_test.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\multirender_test.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\multirender_test.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/multirender_test.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/multirender_test.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\multirender_test.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/openbayer_sample.pro
Normal file
6
rtengine/libraw/buildfiles/openbayer_sample.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/openbayer_sample.cpp
|
145
rtengine/libraw/buildfiles/openbayer_sample.vcxproj
Normal file
145
rtengine/libraw/buildfiles/openbayer_sample.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{EF67FEF1-4B19-3765-A660-9F8E9333DEF3}</ProjectGuid>
|
||||
<RootNamespace>openbayer_sample</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\openbayer_sample.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>openbayer_sample</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\openbayer_sample.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>openbayer_sample</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\openbayer_sample.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">openbayer_sample</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\openbayer_sample.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">openbayer_sample</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\openbayer_sample.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\openbayer_sample.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\openbayer_sample.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\openbayer_sample.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\openbayer_sample.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\openbayer_sample.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\openbayer_sample.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/openbayer_sample.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/openbayer_sample.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\openbayer_sample.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
4
rtengine/libraw/buildfiles/postprocessing_benchmark.pro
Normal file
4
rtengine/libraw/buildfiles/postprocessing_benchmark.pro
Normal file
@@ -0,0 +1,4 @@
|
||||
include (libraw-common.pro)
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/postprocessing_benchmark.cpp
|
145
rtengine/libraw/buildfiles/postprocessing_benchmark.vcxproj
Normal file
145
rtengine/libraw/buildfiles/postprocessing_benchmark.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{5C66A8FA-D211-3E2F-A2F1-0C3C665689CC}</ProjectGuid>
|
||||
<RootNamespace>postprocessing_benchmark</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\postprocessing_benchmark.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>postprocessing_benchmark</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\postprocessing_benchmark.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>postprocessing_benchmark</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\postprocessing_benchmark.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">postprocessing_benchmark</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\postprocessing_benchmark.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">postprocessing_benchmark</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\postprocessing_benchmark.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\postprocessing_benchmark.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>libraw.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\postprocessing_benchmark.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\postprocessing_benchmark.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\postprocessing_benchmark.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>libraw.lib;ws2_32.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\postprocessing_benchmark.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\postprocessing_benchmark.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\postprocessing_benchmark.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/raw-identify.pro
Normal file
6
rtengine/libraw/buildfiles/raw-identify.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/raw-identify.cpp
|
145
rtengine/libraw/buildfiles/raw-identify.vcxproj
Normal file
145
rtengine/libraw/buildfiles/raw-identify.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{7C4F61DB-717E-36C9-B20E-36F8E218AB51}</ProjectGuid>
|
||||
<RootNamespace>raw-identify</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\raw-identify.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>raw-identify</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\raw-identify.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>raw-identify</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\raw-identify.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">raw-identify</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\raw-identify.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">raw-identify</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\raw-identify.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\raw-identify.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\raw-identify.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\raw-identify.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\raw-identify.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\raw-identify.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\raw-identify.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/raw-identify.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/raw-identify.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\raw-identify.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/rawtextdump.pro
Normal file
6
rtengine/libraw/buildfiles/rawtextdump.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/rawtextdump.cpp
|
145
rtengine/libraw/buildfiles/rawtextdump.vcxproj
Normal file
145
rtengine/libraw/buildfiles/rawtextdump.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{53A1E3F0-8032-348E-B3BF-3E540A45005F}</ProjectGuid>
|
||||
<RootNamespace>rawtextdump</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\rawtextdump.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>rawtextdump</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\rawtextdump.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>rawtextdump</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\rawtextdump.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">rawtextdump</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\rawtextdump.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">rawtextdump</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\rawtextdump.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\rawtextdump.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\rawtextdump.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\rawtextdump.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\rawtextdump.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\rawtextdump.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\rawtextdump.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/rawtextdump.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/rawtextdump.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\rawtextdump.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/simple_dcraw.pro
Normal file
6
rtengine/libraw/buildfiles/simple_dcraw.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/simple_dcraw.cpp
|
145
rtengine/libraw/buildfiles/simple_dcraw.vcxproj
Normal file
145
rtengine/libraw/buildfiles/simple_dcraw.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{AD1E31D8-A022-3672-982F-C8280A0D6458}</ProjectGuid>
|
||||
<RootNamespace>simple_dcraw</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\simple_dcraw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>simple_dcraw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\simple_dcraw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>simple_dcraw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\simple_dcraw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">simple_dcraw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\simple_dcraw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">simple_dcraw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\simple_dcraw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\simple_dcraw.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\simple_dcraw.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\simple_dcraw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\simple_dcraw.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\simple_dcraw.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\simple_dcraw.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/simple_dcraw.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/simple_dcraw.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\simple_dcraw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
6
rtengine/libraw/buildfiles/unprocessed_raw.pro
Normal file
6
rtengine/libraw/buildfiles/unprocessed_raw.pro
Normal file
@@ -0,0 +1,6 @@
|
||||
include (libraw-common.pro)
|
||||
win32:LIBS+=libraw.lib
|
||||
unix:LIBS+=-lraw
|
||||
CONFIG-=qt
|
||||
CONFIG+=debug_and_release
|
||||
SOURCES=../samples/unprocessed_raw.cpp
|
145
rtengine/libraw/buildfiles/unprocessed_raw.vcxproj
Normal file
145
rtengine/libraw/buildfiles/unprocessed_raw.vcxproj
Normal file
@@ -0,0 +1,145 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{1333E21E-D3B5-3640-9A4D-D8955082B855}</ProjectGuid>
|
||||
<RootNamespace>unprocessed_raw</RootNamespace>
|
||||
<Keyword>Qt4VSv1.0</Keyword>
|
||||
<WindowsTargetPlatformVersion>10.0.18362.0</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformMinVersion>10.0.18362.0</WindowsTargetPlatformMinVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>debug-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>debug-x86_64\unprocessed_raw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>unprocessed_raw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<PlatformToolset>v142</PlatformToolset>
|
||||
<OutputDirectory>release-x86_64\</OutputDirectory>
|
||||
<ATLMinimizesCRunTimeLibraryUsage>false</ATLMinimizesCRunTimeLibraryUsage>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<IntermediateDirectory>release-x86_64\unprocessed_raw.obj\</IntermediateDirectory>
|
||||
<PrimaryOutput>unprocessed_raw</PrimaryOutput>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings" />
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">debug-x86_64\unprocessed_raw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">unprocessed_raw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</IgnoreImportLibrary>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">release-x86_64\unprocessed_raw.obj\</IntDir>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">unprocessed_raw</TargetName>
|
||||
<IgnoreImportLibrary Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</IgnoreImportLibrary>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>debug-x86_64\unprocessed_raw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>debug-x86_64\unprocessed_raw.obj\</ObjectFileName>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>debug-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<OutputFile>$(OutDir)\unprocessed_raw.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<ClCompile>
|
||||
<AdditionalIncludeDirectories>.;..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<AdditionalOptions>-Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus %(AdditionalOptions)</AdditionalOptions>
|
||||
<AssemblerListingLocation>release-x86_64\unprocessed_raw.obj\</AssemblerListingLocation>
|
||||
<BrowseInformation>false</BrowseInformation>
|
||||
<DebugInformationFormat>None</DebugInformationFormat>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
<ObjectFileName>release-x86_64\unprocessed_raw.obj\</ObjectFileName>
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
<ProgramDataBaseFileName></ProgramDataBaseFileName>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>TurnOffAllWarnings</WarningLevel>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>ws2_32.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalLibraryDirectories>release-x86_64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
<AdditionalOptions>"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions)</AdditionalOptions>
|
||||
<DataExecutionPrevention>true</DataExecutionPrevention>
|
||||
<GenerateDebugInformation>false</GenerateDebugInformation>
|
||||
<IgnoreImportLibrary>true</IgnoreImportLibrary>
|
||||
<LinkIncremental>false</LinkIncremental>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<OutputFile>$(OutDir)\unprocessed_raw.exe</OutputFile>
|
||||
<RandomizedBaseAddress>true</RandomizedBaseAddress>
|
||||
<SubSystem>Console</SubSystem>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
</Link>
|
||||
<Midl>
|
||||
<DefaultCharType>Unsigned</DefaultCharType>
|
||||
<EnableErrorChecks>None</EnableErrorChecks>
|
||||
<WarningLevel>0</WarningLevel>
|
||||
</Midl>
|
||||
<ResourceCompile>
|
||||
<PreprocessorDefinitions>_CONSOLE;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
</ResourceCompile>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\unprocessed_raw.cpp" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets" />
|
||||
</Project>
|
18
rtengine/libraw/buildfiles/unprocessed_raw.vcxproj.filters
Normal file
18
rtengine/libraw/buildfiles/unprocessed_raw.vcxproj.filters
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
<Filter Include="Source Files">
|
||||
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||
<Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||
</Filter>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\samples\unprocessed_raw.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
12
rtengine/libraw/clist2c.pl
Executable file
12
rtengine/libraw/clist2c.pl
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
while (<>)
|
||||
{
|
||||
chomp;
|
||||
s/^\s+//;
|
||||
s/^\s+\*\s+//;
|
||||
s/^\s+//;
|
||||
s/\"/\\\"/g;
|
||||
s/\s+$//;
|
||||
print "\"$_\",\n";
|
||||
}
|
54
rtengine/libraw/clist2html.pl
Executable file
54
rtengine/libraw/clist2html.pl
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/perl
|
||||
use Data::Dumper;
|
||||
|
||||
@makes=( "AgfaPhoto", "Canon", "Casio", "Digital Bolex", "Epson", "Fujifilm", "Imacon",
|
||||
"Mamiya", "Minolta", "Motorola", "Kodak", "Konica", "Leica", "Hasselblad",
|
||||
"Nikon", "Nokia", "Olympus", "Pentax", "Phase One", "Ricoh",
|
||||
"Samsung", "Sigma", "Sinar", "Sony" );
|
||||
|
||||
MAINLOOP:
|
||||
while(<>)
|
||||
{
|
||||
chomp;
|
||||
$cname = $_;
|
||||
$cname=~s/^\s+//g;
|
||||
$cname=~s/\s+$//g;
|
||||
for my $camera (@makes)
|
||||
{
|
||||
if ($cname=~/\Q$camera\E\s+(.*)/)
|
||||
{
|
||||
|
||||
$model = $1;
|
||||
push @{$cameralist->{$camera}},$model;
|
||||
next MAINLOOP;
|
||||
}
|
||||
}
|
||||
if($cname=~/(\S+)\s+(.*)/)
|
||||
{
|
||||
($make,$model) = ($1,$2);
|
||||
push @{$cameralist->{$make}},$model;
|
||||
next MAINLOOP;
|
||||
}
|
||||
push @{$cameralist->{$make}},"NO MODEL";
|
||||
|
||||
}
|
||||
my $havenx1=0;
|
||||
print "<ul>\n";
|
||||
for my $make (sort keys %$cameralist)
|
||||
{
|
||||
if( $#{$cameralist->{$make}} < 1)
|
||||
{
|
||||
print "<li>$make $cameralist->{$make}->[0]</li>\n";
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
print "<li>$make\n<ul>\n";
|
||||
for my $model (@{$cameralist->{$make}})
|
||||
{
|
||||
print " <li>$model</li>\n";
|
||||
}
|
||||
print "</ul>\n</li>\n";
|
||||
}
|
||||
}
|
||||
print "</ul>\n";
|
153
rtengine/libraw/configure.ac
Normal file
153
rtengine/libraw/configure.ac
Normal file
@@ -0,0 +1,153 @@
|
||||
# Initialization
|
||||
AC_INIT([LibRaw], m4_esyscmd([./version.sh]), [info@libraw.org], [], [http://www.libraw.org])
|
||||
AM_INIT_AUTOMAKE([foreign no-define])
|
||||
#AM_SILENT_RULES([yes])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
# Tools to use
|
||||
AC_PROG_CXX
|
||||
AC_PROG_CC
|
||||
AC_PROG_LIBTOOL
|
||||
AC_ENABLE_SHARED
|
||||
AC_ENABLE_STATIC
|
||||
AC_LIBTOOL_WIN32_DLL
|
||||
AC_LIBTOOL_SETUP
|
||||
AC_SUBST(LIBTOOL_DEPS)
|
||||
|
||||
# Config files to generate
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
libraw.pc
|
||||
libraw_r.pc
|
||||
])
|
||||
|
||||
# check if we want OpenMP support
|
||||
AC_ARG_ENABLE([openmp],
|
||||
[ --enable-openmp Enable OpenMP support],
|
||||
[case "${enableval}" in
|
||||
yes) openmp=true ;;
|
||||
no) openmp=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-openmp]) ;;
|
||||
esac],[openmp=true])
|
||||
|
||||
if test x$openmp = xtrue ; then
|
||||
AX_OPENMP([
|
||||
CXXFLAGS="$CXXFLAGS $OPENMP_CFLAGS"
|
||||
CFLAGS="$CFLAGS $OPENMP_CFLAGS"
|
||||
AC_SUBST([PC_OPENMP],[" $OPENMP_CFLAGS"])
|
||||
],[
|
||||
AC_MSG_WARN([OpenMP support cannot be enabled because your system doesn't support it.])
|
||||
])
|
||||
fi
|
||||
|
||||
# check for libjpeg v8
|
||||
AC_ARG_ENABLE([jpeg],
|
||||
[ --enable-jpeg Enable JPEG support for Lossy compressed DNG files],
|
||||
[case "${enableval}" in
|
||||
yes) jpeg=true ;;
|
||||
no) jpeg=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-jpeg]) ;;
|
||||
esac],[jpeg=true])
|
||||
|
||||
if test x$jpeg = xtrue; then
|
||||
AC_CHECK_LIB([jpeg], [jpeg_mem_src],
|
||||
[
|
||||
AC_CHECK_HEADERS([jpeglib.h], [
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_JPEG -DUSE_JPEG8"
|
||||
LIBS="$LIBS -ljpeg"
|
||||
AC_SUBST([PACKAGE_LIBS_PRIVATE],"-ljpeg $PACKAGE_LIBS_PRIVATE")
|
||||
], AC_MSG_WARN([no jpeg headers found]))
|
||||
],
|
||||
AC_MSG_WARN([libjpeg not found])
|
||||
)
|
||||
fi
|
||||
|
||||
# check for Jasper (JPEG2000) support
|
||||
AC_ARG_ENABLE([jasper],
|
||||
[ --enable-jasper Enable Jasper (JPEG2000) support for RedCine files],
|
||||
[case "${enableval}" in
|
||||
yes) jasper=true ;;
|
||||
no) jasper=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-jasper]) ;;
|
||||
esac],[jasper=true])
|
||||
|
||||
if test x$jasper = xtrue; then
|
||||
AC_CHECK_LIB([jasper], [jas_init],
|
||||
[
|
||||
AC_CHECK_HEADERS([jasper/jasper.h], [
|
||||
CPPFLAGS="$CPPFLAGS -DUSE_JASPER"
|
||||
LIBS="$LIBS -ljasper"
|
||||
AC_SUBST([PACKAGE_LIBS_PRIVATE],"-ljasper $PACKAGE_LIBS_PRIVATE")
|
||||
], AC_MSG_WARN([no jasper headers found]))
|
||||
],
|
||||
AC_MSG_WARN([libjasper not found])
|
||||
)
|
||||
fi
|
||||
|
||||
# check if we want zlib support
|
||||
AC_ARG_ENABLE([zlib],
|
||||
[ --enable-zlib Enable zlib support for deflate compressed DNG files],
|
||||
[case "${enableval}" in
|
||||
yes) zlib=true ;;
|
||||
no) zlib=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-zlib]) ;;
|
||||
esac],[zlib=true])
|
||||
|
||||
if test x$zlib = xtrue; then
|
||||
PKG_CHECK_MODULES([ZLIB],[zlib],[
|
||||
CPPFLAGS="$CPPFLAGS $ZLIB_CFLAGS -DUSE_ZLIB"
|
||||
LIBS="$LIBS $ZLIB_LIBS"
|
||||
AC_SUBST([PACKAGE_REQUIRES],[zlib])
|
||||
],
|
||||
AC_MSG_WARN([zlib support cannot be enabled])
|
||||
)
|
||||
fi
|
||||
|
||||
# check if we want LCMS support
|
||||
AC_ARG_ENABLE([lcms],
|
||||
[ --enable-lcms Enable LCMS support],
|
||||
[case "${enableval}" in
|
||||
yes) lcms=true ;;
|
||||
no) lcms=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-lcms]) ;;
|
||||
esac],[lcms=true])
|
||||
|
||||
if test x$lcms = xtrue; then
|
||||
PKG_CHECK_MODULES([LCMS2],[lcms2],[
|
||||
CPPFLAGS="$CPPFLAGS $LCMS2_CFLAGS -DUSE_LCMS2"
|
||||
LIBS="$LIBS $LCMS2_LIBS"
|
||||
AC_SUBST([PACKAGE_REQUIRES],[lcms2])
|
||||
],[
|
||||
PKG_CHECK_MODULES([LCMS],[lcms],[
|
||||
CPPFLAGS="$CPPFLAGS $LCMS_CFLAGS -DUSE_LCMS"
|
||||
LIBS="$LIBS $LCMS_LIBS"
|
||||
AC_SUBST([PACKAGE_REQUIRES],[lcms])
|
||||
],[
|
||||
AC_MSG_WARN([LCMS support cannot be enabled])
|
||||
])
|
||||
])
|
||||
fi
|
||||
|
||||
# check if we want build examples
|
||||
AC_ARG_ENABLE([examples],
|
||||
[ --enable-examples Enable building of examples],
|
||||
[case "${enableval}" in
|
||||
yes) examples=true ;;
|
||||
no) examples=false ;;
|
||||
*) AC_MSG_ERROR([bad value ${enableval} for --enable-examples]) ;;
|
||||
esac],[examples=true])
|
||||
AM_CONDITIONAL([EXAMPLES], [test x$examples = xtrue])
|
||||
|
||||
LIBS="$LIBS -lm"
|
||||
|
||||
case "${host_os}" in
|
||||
*mingw32*) LIBS="$LIBS -lws2_32" ;;
|
||||
esac
|
||||
|
||||
AC_SUBST([LIBRAW_SHLIB_VERSION],m4_esyscmd([./shlib-version.sh]))
|
||||
AC_SUBST([LIBRAW_RELEASE_VERSION],m4_esyscmd([./version.sh]))
|
||||
|
||||
AC_OUTPUT
|
||||
|
187
rtengine/libraw/doc/API-C.html
Normal file
187
rtengine/libraw/doc/API-C.html
Normal file
@@ -0,0 +1,187 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body>
|
||||
<p>LibRaw: C API<a href="index.html">[back to Index]</a></p>
|
||||
<h1>LibRaw: C API</h1>
|
||||
<p>LibRaw C API is a wrapper around C++ API; therefore, virtually all
|
||||
documentation to C API functions is represented by a set of hyperlinks to
|
||||
the corresponding places in the <a href="API-CXX.html">description of C++
|
||||
API</a>.</p>
|
||||
<p>Contents</p>
|
||||
<ol>
|
||||
<li><a href="#init">Initialization and de</a><a href="#init">nitialization</a></li>
|
||||
<li><a href="#return">Returned values</a></li>
|
||||
<li><a href="#dataload">Data loading</a></li>
|
||||
<li><a href="#setters">Parameters getters/setters</a></li>
|
||||
<li><a href="#utility">Auxiliary Functions</a></li>
|
||||
<li><a href="#dcrawemu">Data Postprocessing, Emulation of dcraw Behavior</a>
|
||||
<ul>
|
||||
<li><a href="#dcrawparams">Setting of Parameters</a></li>
|
||||
<li><a href="#emu">Emulation of dcraw Behavior</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#write">Writing to Output Files</a></li>
|
||||
<li><a href="#memwrite">Writing processing results to memory buffer</a></li>
|
||||
</ol>
|
||||
<p><a name="init"></a></p>
|
||||
<h2>Initialization and denitialization</h2>
|
||||
<dl>
|
||||
<dt>libraw_data_t *libraw_init(unsigned int flags);</dt>
|
||||
<dd> The function returns the pointer to the <a href="#API-datastruct.html#libraw_data_t">instance
|
||||
of libraw_data_t structure</a>.<br>
|
||||
The resultant pointer should be passed as the first argument to all C
|
||||
API functions (except for libraw_strerror). <br>
|
||||
Returns NULL in case of error, pointer to the structure in all other
|
||||
cases. </dd>
|
||||
<dt>void libraw_close(libraw_data_t *);</dt>
|
||||
<dd> Closes libraw_data_t handler and deallocates all memory. </dd>
|
||||
</dl>
|
||||
<p><a name="return"></a></p>
|
||||
<h2>Returned values</h2>
|
||||
<p>Functions of C API return EINVAL (see errno.h) if the null pointer was
|
||||
passed to them as the first argument. In all other cases, the <a href="API-CXX.html#return">C++
|
||||
API return code</a> is returned.</p>
|
||||
<p><a name="dataload"></a></p>
|
||||
<h2>Data Loading from a File/Buffer</h2>
|
||||
<dl>
|
||||
<dt>int libraw_open_file(libraw_data_t*, const char *)</dt>
|
||||
<dt>int libraw_open_file_ex(libraw_data_t*, const char *,INT64
|
||||
bigfile_size)</dt>
|
||||
<dt>WIN32: int libraw_open_wfile(libraw_data_t*, const wchar_t *)</dt>
|
||||
<dt>WIN32: int libraw_open_wfile_ex(libraw_data_t*, const wchar_t *,INT64
|
||||
bigfile_size)</dt>
|
||||
<dd>See <a href="API-CXX.html#open_file">LibRaw::open_file()</a></dd>
|
||||
<dt>int libraw_open_buffer(libraw_data_t*, void *buffer, size_t bufsize)</dt>
|
||||
<dd>See <a href="API-CXX.html#open_buffer">LibRaw::open_buffer()</a></dd>
|
||||
<dt>int libraw_open_bayer(libraw_data_t *lr, unsigned char *data, unsigned
|
||||
datalen, ushort _raw_width, ushort _raw_height, ushort _left_margin,
|
||||
ushort _top_margin, ushort _right_margin, ushort _bottom_margin,
|
||||
unsigned char procflags, unsigned char bayer_battern, unsigned
|
||||
unused_bits, unsigned otherflags, unsigned black_level)</dt>
|
||||
<dd>See <a href="API-CXX.html#open_bayer">LibRaw::open_bayer()</a></dd>
|
||||
<dt>int libraw_unpack(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#unpack">LibRaw::unpack()</a></dd>
|
||||
<dt>int libraw_unpack_thumb(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#unpack_thumb">LibRaw::unpack_thumb()</a></dd>
|
||||
<dt>int libraw_unpack_thumb_ex(libraw_data_t*,int);</dt>
|
||||
<dd>See <a href="API-CXX.html#unpack_thumb_ex">LibRaw::unpack_thumb_ex()</a></dd>
|
||||
</dl>
|
||||
<p><a name="setters"></a></p>
|
||||
<h2>Parameters setters/getters</h2>
|
||||
<p>These functions provides interface to imgdata.params, .sizes and .color
|
||||
fields which works regardless of LibRaw versions used when building
|
||||
calling app and the library itself.</p>
|
||||
<ul>
|
||||
<li>int libraw_get_raw_height(libraw_data_t *lr); </li>
|
||||
<li>int libraw_get_raw_width(libraw_data_t *lr); </li>
|
||||
<li>int libraw_get_iheight(libraw_data_t *lr); </li>
|
||||
<li>int libraw_get_iwidth(libraw_data_t *lr); </li>
|
||||
<li>float libraw_get_cam_mul(libraw_data_t *lr,int index); </li>
|
||||
<li>float libraw_get_pre_mul(libraw_data_t *lr,int index); </li>
|
||||
<li>float libraw_get_rgb_cam(libraw_data_t *lr,int index1, int index2);</li>
|
||||
<li>libraw_iparams_t *libraw_get_iparams(libraw_data_t *lr);</li>
|
||||
<li>libraw_lensinfo_t *libraw_get_lensinfo(libraw_data_t *lr);</li>
|
||||
<li>libraw_imgother_t *libraw_get_imgother(libraw_data_t *lr);</li>
|
||||
<li>int libraw_get_color_maximum(libraw_data_t *lr); </li>
|
||||
<li>void libraw_set_user_mul(libraw_data_t *lr,int index, float val);</li>
|
||||
<li>void libraw_set_demosaic(libraw_data_t *lr,int value); </li>
|
||||
<li>void libraw_set_adjust_maximum_thr(libraw_data_t *lr,float value); </li>
|
||||
<li>void libraw_set_output_color(libraw_data_t *lr,int value); </li>
|
||||
<li>void libraw_set_output_bps(libraw_data_t *lr,int value);</li>
|
||||
<li>void libraw_set_gamma(libraw_data_t *lr,int index, float value);</li>
|
||||
<li>void libraw_set_no_auto_bright(libraw_data_t *lr,int value);</li>
|
||||
<li>void libraw_set_bright(libraw_data_t *lr,float value);</li>
|
||||
<li>void libraw_set_highlight(libraw_data_t *lr,int value);</li>
|
||||
<li>void libraw_set_fbdd_noiserd(libraw_data_t *lr,int value);</li>
|
||||
</ul>
|
||||
<p><a name="utility"></a></p>
|
||||
<h2>Auxiliary Functions</h2>
|
||||
<dl>
|
||||
<dt>const char* libraw_version()</dt>
|
||||
<dd>See <a href="API-CXX.html#version">LibRaw::version()</a></dd>
|
||||
<dt>int libraw_versionNumber()</dt>
|
||||
<dt>See <a href="API-CXX.html#versionNumber">LibRaw::versionNumber()</a><br>
|
||||
</dt>
|
||||
<dd>See <a href="API-CXX.html#versionNumber">LibRaw::versionNumber()</a></dd>
|
||||
<dt>bool LIBRAW_CHECK_VERSION(major,minor,patch)</dt>
|
||||
<dd>See <a href="API-CXX.html#LIBRAW_CHECK_VERSION">LIBRAW_CHECK_VERSION</a></dd>
|
||||
<dt>unsigned libraw_capabilities()</dt>
|
||||
<dd>See <a href="API-CXX.html#capabilities">LibRaw::capabilities()</a></dd>
|
||||
<dt>int libraw_cameraCount()</dt>
|
||||
<dd>See <a href="API-CXX.html#cameraCount">LibRaw::cameraCount()</a></dd>
|
||||
<dt>const char* libraw_cameraList()</dt>
|
||||
<dd>See <a href="API-CXX.html#cameraList">LibRaw::cameraList()</a></dd>
|
||||
<dt>int libraw_get_decoder_info(libraw_data_t*,libraw_decoder_info_t *);</dt>
|
||||
<dd>See <a href="API-CXX.html#get_decoder_info">LibRaw::get_decoder_info()</a></dd>
|
||||
<dt>const char* libraw_unpack_function_name(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#unpack_function_name">LibRaw::unpack_function_name()</a></dd>
|
||||
<dt>int libraw_COLOR(libraw_data_t*,int row,int col);</dt>
|
||||
<dd>See <a href="API-CXX.html#COLOR">LibRaw::COLOR()</a></dd>
|
||||
<dt>void libraw_subtract_black(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#add_subtract_black">LibRaw::subtract_black()</a></dd>
|
||||
<dt>void libraw_recycle_datastream(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#recycle_datastream">LibRaw::recycle_datastream()</a></dd>
|
||||
<dt>void libraw_recycle(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#recycle">LibRaw::recycle()</a></dd>
|
||||
<dt>const char *libraw_strerror(int errorcode);</dt>
|
||||
<dd>See <a href="API-CXX.html#libraw_strerror">LibRaw::strerror</a></dd>
|
||||
<dt>const char *libraw_strprogress(enum LibRaw_progress);</dt>
|
||||
<dd>See <a href="API-CXX.html#strprogress">LibRaw::strprogress</a></dd>
|
||||
<dt>void libraw_set_dataerror_handler(libraw_data_t*,data_callback func,
|
||||
void *);</dt>
|
||||
<dd>See <a href="API-CXX.html#dataerror">LibRaw::set_dataerror_handler()</a></dd>
|
||||
<dt>void libraw_set_progress_handler(libraw_data_t*,progress_callback
|
||||
func, void *);</dt>
|
||||
<dd>See <a href="API-CXX.html#progress">LibRaw::set_progress_handler()</a></dd>
|
||||
</dl>
|
||||
<p><a name="dcrawemu"></a></p>
|
||||
<h2>Data Postprocessing, Emulation of dcraw Behavior</h2>
|
||||
<p><a name="dcrawparams"></a></p>
|
||||
<h3>Setting of Parameters</h3>
|
||||
<p>The postprocessing parameters for the calls described below are set, just
|
||||
as for C++ API, via setting of fields in the libraw_output_params_t
|
||||
structure:</p>
|
||||
<pre> libraw_data_t *ptr = libraw_init(0);
|
||||
ptr->params.output_tiff = 1; // output to TIFF
|
||||
</pre>
|
||||
<p>Fields of this structure are described in the <a href="API-datastruct.html#libraw_output_params_t">documentation
|
||||
to libraw_output_params_t</a>. For notes on their use, see <a href="API-notes.html">API
|
||||
notes</a>.</p>
|
||||
<p><a name="emu"></a></p>
|
||||
<h3>Emulation of dcraw Behavior</h3>
|
||||
<dl>
|
||||
<dt>int libraw_raw2image(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#raw2image">LibRaw::raw2image</a></dd>
|
||||
<dt>int libraw_free_image(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#free_image">LibRaw::free_image</a></dd>
|
||||
<dt>int libraw_adjust_sizes_info_only(libraw_data_t*);</dt>
|
||||
<dd>See <a href="API-CXX.html#adjust_sizes_info_only">LibRaw::adjust_sizes_info_only()</a></dd>
|
||||
<dt>int libraw_dcraw_process(libraw_data_t* lr);</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_process">LibRaw::dcraw_process()</a></dd>
|
||||
</dl>
|
||||
<h2>Writing to Output Files</h2>
|
||||
<dl>
|
||||
<dt>int libraw_dcraw_ppm_tiff_writer(libraw_data_t* lr,const char
|
||||
*filename);</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_ppm_tiff_writer">LibRaw::dcraw_ppm_tiff_writer()</a></dd>
|
||||
<dt>int libraw_dcraw_thumb_writer(libraw_data_t* lr,const char *fname);</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_thumb_writer">LibRaw::dcraw_thumb_writer()</a></dd>
|
||||
</dl>
|
||||
<h2>Writing processing results to memory buffer</h2>
|
||||
<dl>
|
||||
<dt>libraw_processed_image_t *libraw_dcraw_make_mem_image(libraw_data_t*
|
||||
lr,int * errcode)</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_make_mem_image">LibRaw::dcraw_make_mem_image()</a></dd>
|
||||
<dt>libraw_processed_image_t *libraw_dcraw_make_mem_thumb(libraw_data_t*
|
||||
lr,int * errcode)</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_make_mem_thumb">LibRaw::dcraw_make_mem_thumb()</a></dd>
|
||||
<dt>void libraw_dcraw_clear_mem(libraw_processed_image_t *);</dt>
|
||||
<dd>See <a href="API-CXX.html#dcraw_clear_mem">LibRaw::dcraw_clear_mem()</a></dd>
|
||||
<dd><br>
|
||||
</dd>
|
||||
</dl>
|
||||
<p><a href="index.html">[back to Index]</a></p>
|
||||
</body>
|
||||
</html>
|
881
rtengine/libraw/doc/API-CXX.html
Normal file
881
rtengine/libraw/doc/API-CXX.html
Normal file
@@ -0,0 +1,881 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body>
|
||||
<p>LibRaw C++ API<a href="index.html">[back to Index]</a></p>
|
||||
<h1>LibRaw C++ API</h1>
|
||||
<p>Contents</p>
|
||||
<ol>
|
||||
<li><a href="#LibRaw">LibRaw Objects</a></li>
|
||||
<li><a href="#return">Returned values</a></li>
|
||||
<li><a href="#dataload">Methods Loading Data from a File</a>
|
||||
<ul>
|
||||
<li><a href="#open_datastream">int
|
||||
LibRaw::open_datastream(LibRaw_abstract_datastream *stream)</a></li>
|
||||
<li><a href="#open_file">int LibRaw::open_file(const char
|
||||
*rawfile[,INT64 bigfile_size])</a></li>
|
||||
<li><a href="#open_buffer">int LibRaw::open_buffer(void *buffer,
|
||||
size_t bufsize)</a></li>
|
||||
<li><a href="#open_bayer">int LibRaw::open_bayer(...)</a></li>
|
||||
<li><a href="#unpack">int LibRaw::unpack(void)</a></li>
|
||||
<li><a href="#unpack_thumb">int LibRaw::unpack_thumb(void)</a></li>
|
||||
<li><a href="#unpack_thumb_ex">int LibRaw::unpack_thumb_ex(int)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#utility">Auxiliary Functions</a>
|
||||
<ul>
|
||||
<li>Library version info
|
||||
<ul>
|
||||
<li><a href="#version">const char* LibRaw::version()</a></li>
|
||||
<li><a href="#versionNumber">int LibRaw::versionNumber()</a></li>
|
||||
<li><a href="#LIBRAW_CHECK_VERSION">bool
|
||||
LIBRAW_CHECK_VERSION(major,minor,patch)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>List of supported cameras
|
||||
<ul>
|
||||
<li><a href="#cameraCount">int LibRaw::cameraCount()</a></li>
|
||||
<li><a href="#cameraList">const char** LibRaw::cameraList()</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#set_rawspeed_camerafile">int
|
||||
LibRaw::set_rawspeed_camerafile(char *path_to_cameras_xml)</a></li>
|
||||
<li><a href="#get_decoder_info">int
|
||||
LibRaw::get_decoder_info(libraw_decoder_info_t *)</a></li>
|
||||
<li><a href="#unpack_function_name">const char*
|
||||
LibRaw::unpack_function_name()</a></li>
|
||||
<li><a href="#COLOR">int LibRaw::COLOR()</a></li>
|
||||
<li><a href="#error_count">int LibRaw::error_count()</a></li>
|
||||
<li><a href="#setCancelFlag">void LibRaw::setCancelFlag()</a></li>
|
||||
<li><a href="#clearCancelFlag">void LibRaw::clearCancelFlag()</a></li>
|
||||
<li><a href="#subtract_black">int LibRaw::subtract_black()</a></li>
|
||||
<li><a href="#adjust_to_raw_inset_crop">int
|
||||
LibRaw::adjust_to_raw_inset_crop()</a></li>
|
||||
<li><a href="#floatingpoint">Support for Floating Point data</a></li>
|
||||
<li><a href="#ycc">Support for YCC formats</a></li>
|
||||
<li><a href="#recycle">void LibRaw::recycle_datastream(void)</a></li>
|
||||
<li><a href="#recycle">void LibRaw::recycle(void)</a></li>
|
||||
<li><a href="#%7ELibRaw">LibRaw::~LibRaw()</a></li>
|
||||
<li><a href="#strprogress">const char* LibRaw::strprogress(enum
|
||||
LibRaw_progress code)</a></li>
|
||||
<li><a href="#libraw_strerror">const char* LibRaw::strerror(int
|
||||
errorcode)</a></li>
|
||||
<li><a href="#callbacks">Setting Error Notification Functions and
|
||||
other callbacks</a>
|
||||
<ul>
|
||||
<li><a href="#progress">User callback for progress
|
||||
indication/interruption</a></li>
|
||||
<li><a href="#exif">User callback for exif/makernotes parser
|
||||
routines</a></li>
|
||||
<li><a href="#dataerror">File Read Error Notifier</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#dcrawemu">Data Postprocessing: Emulation of dcraw Behavior</a>
|
||||
<ul>
|
||||
<li><a href="#dcraw_params">Parameter Setting</a></li>
|
||||
<li><a href="#raw2image">int LibRaw::raw2image</a></li>
|
||||
<li><a href="#free_image">void LibRaw::free_image</a></li>
|
||||
<li><a href="#adjust_sizes_info_only">int
|
||||
LibRaw::adjust_sizes_info_only(void)</a></li>
|
||||
<li><a href="#dcraw_process">int LibRaw::dcraw_process(void)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#dcrawrite">Data Output to Files: Emulation of dcraw Behavior</a>
|
||||
<ul>
|
||||
<li><a href="#dcraw_ppm_tiff_writer">int
|
||||
LibRaw::dcraw_ppm_tiff_writer(const char *outfile)</a></li>
|
||||
<li><a href="#dcraw_thumb_writer">int LibRaw::dcraw_thumb_writer(const
|
||||
char *thumbfile)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#memwrite">Copying unpacked data into memory buffer</a>
|
||||
<ul>
|
||||
<li><a href="#get_mem_image_format">void get_mem_image_format(int
|
||||
*widthp, int *heightp, int *colorsp, int *bpp)</a></li>
|
||||
<li><a href="#copy_mem_image">int LibRaw::copy_mem_image(void* scan0,
|
||||
int stride, int bgr)</a></li>
|
||||
<li><a href="#dcraw_make_mem_image">libraw_processed_image_t
|
||||
*dcraw_make_mem_image(int *errorcode)</a></li>
|
||||
<li><a href="#dcraw_make_mem_thumb">libraw_processed_image_t
|
||||
*dcraw_make_mem_thumb(int *errorcode)</a></li>
|
||||
<li><a href="#dcraw_clear_mem">void
|
||||
LibRaw::dcraw_clear_mem(libraw_processed_image_t *)</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#datastream">Input layer abstraction</a>
|
||||
<ul>
|
||||
<li><a href="LibRaw_abstract_datastream">class
|
||||
LibRaw_abstract_datastream - abstract RAW read interface</a><a href="#datastream_methods">LibRaw_abstract_datastream
|
||||
class methods</a>
|
||||
<ul>
|
||||
<li><a href="#datastream_methods_utility">Object verification</a></li>
|
||||
<li><a href="#datastream_methods_read">Stream read and positioning</a></li>
|
||||
<li><a href="#datastream_methods_other">Other methods</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#datastream_derived">Derived input classes included in
|
||||
LibRaw</a>
|
||||
<ul>
|
||||
<li><a href="#file_datastream">class LibRaw_file_datastream - file
|
||||
input interface</a></li>
|
||||
<li><a href="#bigfile_datastream">class LibRaw_file_datastream -
|
||||
file input interface for large files</a></li>
|
||||
<li><a href="#buffer_datastream">class LibRaw_buffer_datastream -
|
||||
input from memory buffer</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><a href="#own_datastreams">Own datastream derived classes</a>
|
||||
<ul>
|
||||
<li><a href="#substream">substream field: secondary input stream</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ol>
|
||||
<p><a name="LibRaw"></a></p>
|
||||
<h2>LibRaw Objects</h2>
|
||||
<p>The main LibRaw object (class) is created either without parameters or
|
||||
with flags determining the object behavior.</p>
|
||||
<pre>#include "libraw/libraw.h"<br>...<br><br> LibRaw ImageProcessor(unsigned int flags=0);<br>...<br> </pre>
|
||||
<p>Flags (several flags are combined via operator |, i.e., bitwise OR):</p>
|
||||
<ul>
|
||||
<li><strong>LIBRAW_OPTIONS_NO_DATAERR_CALLBACK</strong>: do not set the
|
||||
standard <a href="#callbacks">file read error handler</a> (standard
|
||||
handler outputs the error report in stderr).</li>
|
||||
</ul>
|
||||
<p>Three groups of methods are used for image processing</p>
|
||||
<ul>
|
||||
<li><a href="#dataload">Data loading from the RAW file</a></li>
|
||||
<li><a href="#dcrawemu">Postprocessing functions emulating the dcraw
|
||||
behavior</a></li>
|
||||
<li><a href="#dcrawrite">File output functions emulating the dcraw
|
||||
behavior</a>.</li>
|
||||
</ul>
|
||||
<p>The results of processing are placed in the imgdata field of type <a href="API-datastruct.html">libraw_data_t</a>;
|
||||
the same data set contains fields that control the postprocessing and
|
||||
output.</p>
|
||||
<p><a name="return"></a></p>
|
||||
<h2>Returned Values</h2>
|
||||
<p>All LibRaw API functions return an integer number in accordance with the
|
||||
<a href="API-notes.html#errors">return code convention</a>. Please read
|
||||
the descriptions of <a href="API-notes.html#errors">this convention</a>
|
||||
and <a href="#callbacks">LibRaw behavior in cases of fatal errors</a>.</p>
|
||||
<p><a name="dataload"></a></p>
|
||||
<h2>Methods Loading Data from a File</h2>
|
||||
<p><a name="open_datastream"></a></p>
|
||||
<h3>int LibRaw::open_datastream(LibRaw_abstract_datastream *stream)</h3>
|
||||
<p>Opens a datastream with RAW data, reads metadata (EXIF) from it, and
|
||||
fills the following structures:</p>
|
||||
<ul>
|
||||
<li>imgdata.idata (<a href="API-datastruct.html#libraw_iparams_t">libraw_iparams_t</a>),</li>
|
||||
<li>imgdata.sizes (<a href="API-datastruct.html#libraw_image_sizes_t">libraw_image_sizes_t</a>),</li>
|
||||
<li>imgdata.color (<a href="API-datastruct.html#libraw_colordata_t">libraw_colordata_t</a>),</li>
|
||||
<li>imgdata.other (<a href="API-datastruct.html#libraw_imgother_t">libraw_imgother_t</a>),
|
||||
and</li>
|
||||
<li>imgdata.thumbnail (<a href="API-datastruct.html#libraw_thumbnail_t">libraw_thumbnail_t</a>).</li>
|
||||
</ul>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p>Before file opening, <a href="#recycle">recycle()</a> is always called;
|
||||
hence, if several images are processed in the batch mode, there is no need
|
||||
to call recycle() at the end of each processing cycle.</p>
|
||||
<p><strong>Input data</strong>: pointer to object, derived from <a href="#datastream">LibRaw_abstract_datastream</a>
|
||||
class. This object should be initialized and ready to read. This object
|
||||
should be destroyed in calling application after use.</p>
|
||||
<p><a name="open_file"></a></p>
|
||||
<h3>int LibRaw::open_file(const char *filename[,INT64 bigfile_size])</h3>
|
||||
<h3>Win32 only: int LibRaw::open_file(const wchar_t *filename[,INT64
|
||||
bigfile_size])</h3>
|
||||
<p>Creates an <a href="#file_datastream">LibRaw_file_datastream</a> object,
|
||||
calls <a href="#open_datastream">open_datastream()</a>. If succeed, sets
|
||||
internal flag which signals to destroy internal datastream object on <a href="#recycle">recycle()</a>.
|
||||
On failure, just created file_datastream destroyed immediately.</p>
|
||||
<p>Second optional parameter <strong>bigfile_size</strong> controls
|
||||
background I/O interface used for file operations. For files smaller than
|
||||
bigfile_size the <a href="#file_datastream">LibRaw_file_datastream</a>
|
||||
will be used and the <a href="#bigfile_datastream">LibRaw_bigfile_datastream</a>
|
||||
otherwise.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="open_buffer"></a></p>
|
||||
<h3>int LibRaw::open_buffer(void *buffer, size_t bufsize)</h3>
|
||||
<p>Created an <a href="#buffer_datastream">LibRaw_buffer_datastream</a>
|
||||
object, calls <a href="#open_datastream">open_datastream()</a>. If
|
||||
succeed, sets internal flag which signals to destroy internal datastream
|
||||
object on <a href="#recycle">recycle()</a>. On failure, just created
|
||||
file_datastream destroyed immediately.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="open_bayer"></a></p>
|
||||
<h3>int LibRaw::open_bayer(unsigned char *data, unsigned datalen, ushort
|
||||
_raw_width, ushort _raw_height, ushort _left_margin, ushort _top_margin,
|
||||
ushort _right_margin, ushort _bottom_margin, unsigned char procflags,
|
||||
unsigned char bayer_pattern, unsigned unused_bits, unsigned otherflags,
|
||||
unsigned black_level)</h3>
|
||||
<p>Parameters: </p>
|
||||
<ul>
|
||||
<li>data, datalen - buffer passed </li>
|
||||
<li>_raw_width/_raw_height/*margin - image size and margins </li>
|
||||
<li> procflags:
|
||||
<ul>
|
||||
<li>for 10-bit format:
|
||||
<ul>
|
||||
<li>1: "4 pixels in 5 bytes" packing is used </li>
|
||||
<li>0: "6 pixels in 8 bytes" packing is used </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>for 16-bit format:
|
||||
<ul>
|
||||
<li>1: Big-endian data </li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>bayer_pattern: one of LIBRAW_OPENBAYER_RGGB,LIBRAW_OPENBAYER_BGGR,
|
||||
LIBRAW_OPENBAYER_GRBG,LIBRAW_OPENBAYER_GBRG </li>
|
||||
<li>unused_bits: count of upper zero bits </li>
|
||||
<li>otherflags:
|
||||
<ul>
|
||||
<li>Bit 1 - filter (average neighbors) for pixels with values of zero
|
||||
</li>
|
||||
<li>Bits 2-4 - the orientation of the image (0=do not rotate, 3=180,
|
||||
5=90CCW, 6=90CW) </li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>black_level: file black level (it also may be specified via
|
||||
imgdata.params) </li>
|
||||
</ul>
|
||||
See samples/openbayer_sample.cpp for usage sample (note, this sample is
|
||||
'sample only', suited for Kodak KAI-0340 sensor, you'll need change
|
||||
open_bayer() params for your data).
|
||||
<p><a name="unpack"></a></p>
|
||||
<h3>int LibRaw::unpack(void)</h3>
|
||||
<p>Unpacks the RAW files of the image, calculates the black level (not for
|
||||
all formats). The results are placed in imgdata.image.</p>
|
||||
<p>Data reading is sometimes (not frequently) affected by settings made in
|
||||
imgdata.params (<a href="API-datastruct.html#libraw_output_params_t">libraw_output_params_t</a>);
|
||||
see <a href="API-notes.html">API notes</a> for details.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="unpack_thumb"></a><a name="unpack_thumb_ex"></a></p>
|
||||
<h3>int LibRaw::unpack_thumb(void)</h3>
|
||||
<h3>int LibRaw::unpack_thumb_ex(int i)</h3>
|
||||
<p></p>
|
||||
<p>unpack_thumb(): reads (or unpacks) the default (largest) image preview
|
||||
(thumbnail), placing the result into the imgdata.thumbnail.thumb buffer.</p>
|
||||
<p>unpack_thumb_ex(int i): reads i-th thumbnail (thumbnails list is
|
||||
available in imgdata.thumbs_list structure).</p>
|
||||
<p> JPEG previews are placed into this buffer without any changes (with the
|
||||
header etc.). Other preview formats are placed into the buffer in the form
|
||||
of the unpacked bitmap image (three components, 8 bits per component).<br>
|
||||
The thumbnail format is written to the imgdata.thumbnail.tformat field;
|
||||
for the possible values, see <a href="API-datastruct.html#LibRaw_thumbnail_formats">description
|
||||
of constants and data structures</a>.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<h3></h3>
|
||||
<p></p>
|
||||
<p><a name="utility"></a></p>
|
||||
<h2>Auxiliary Functions</h2>
|
||||
<h3>Library version check</h3>
|
||||
<p><a name="version"></a></p>
|
||||
<h4>const char* LibRaw::version()</h4>
|
||||
<p>Returns string representation of LibRaw version in
|
||||
MAJOR.MINOR.PATCH-Status format (i.e. 0.6.0-Alpha2 or 0.6.1-Release).</p>
|
||||
<p><a name="versionNumber"></a></p>
|
||||
<h4>int LibRaw::versionNumber()</h4>
|
||||
<p>Returns integer representation of LibRaw version. During LibRaw
|
||||
development, the version number is always increase .</p>
|
||||
<p><a name="LIBRAW_CHECK_VERSION"></a></p>
|
||||
<h4>bool LIBRAW_CHECK_VERSION(major,minor,patch)</h4>
|
||||
<p>Macro for version check in caller applications. Returns 'true' if current
|
||||
library version is greater or equal to set in macro parameters. This macro
|
||||
executes at runtime (not at compile time) and may be used for checking
|
||||
version of dynamically loaded LibRaw (from DLL/shared library).</p>
|
||||
<h3>List of supported RAW formats (cameras)</h3>
|
||||
<p><a name="cameraCount"></a></p>
|
||||
<h4>int LibRaw::cameraCount()</h4>
|
||||
<p>Returns count of cameras supported.</p>
|
||||
<p><a name="cameraList"></a></p>
|
||||
<h4>const char** LibRaw::cameraList()</h4>
|
||||
<p>Returns list of supported cameras. Latest item of list is set to NULL
|
||||
(for easy printing).</p>
|
||||
<p><a name="#set_rawspeed_camerafile"></a></p>
|
||||
<h4>int LibRaw::set_rawspeed_camerafile(char *path_to_cameras_xml)</h4>
|
||||
<p>(Only if LibRaw was built with RawSpeed support).</p>
|
||||
<p>Loads XML file with RawSpeed camera description data (cameras.xml)
|
||||
specified by path_to_cameras_xml. Returns 0 on success, nonzero on error.
|
||||
<a name="get_decoder_info"></a></p>
|
||||
<h4>int LibRaw::get_decoder_info(libraw_decoder_info_t *)</h4>
|
||||
<p>The function fills <a href="API-datastruct.html#libraw_decoder_info_t">libraw_decoder_info_t</a>
|
||||
structure by passed pointer with current raw decoder data.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="unpack_function_name"></a></p>
|
||||
<h3>const char* LibRaw::unpack_function_name()</h3>
|
||||
<p>Returns function name of file unpacking function. Intended only for
|
||||
LibRaw test suite designers to use in test coverage evaluation.</p>
|
||||
<p><a name="setCancelFlag"></a></p>
|
||||
<h4>void LibRaw::setCancelFlag()</h4>
|
||||
<p>This call sets internal fast cancel flags. If set, current Raw decoder
|
||||
will be terminated ASAP. This call is useful if you need to cancel all
|
||||
LibRaw decoders in multithreaded program (e.g. for fast program
|
||||
termination or just for cancel current processing).</p>
|
||||
<p><a name="clearCancelFlag"></a></p>
|
||||
<h4>void LibRaw::clearCancelFlag()</h4>
|
||||
<p>This call clears internal fast cancel flags, so (early) terminated LibRaw
|
||||
decoder may work again.</p>
|
||||
<p><a name="COLOR"></a></p>
|
||||
<h4>int LibRaw::COLOR(int row, int col)</h4>
|
||||
<p>This call returns pixel color (color component number) in bayer pattern at
|
||||
row,col. The returned value is in 0..3 range for 4-component Bayer (RGBG2,
|
||||
CMYG and so on) and in 0..2 range for 3-color data.</p>
|
||||
<p>Color indexes returned could be used as index in imgdata.idata.cdesc
|
||||
string to get color 'name'.</p>
|
||||
<p><a name="error_count"></a></p>
|
||||
<h4>int LibRaw::error_count()</h4>
|
||||
<p>This call returns count of non-fatal data errors (out of range, etc)
|
||||
occurred in unpack() stage.</p>
|
||||
<p><a name="subtract_black"></a></p>
|
||||
<h4>int LibRaw::subtract_black()</h4>
|
||||
<p>This call will subtract black level values from RAW data (for suitable
|
||||
RAW data). <a href="API-datastruct.html#libraw_colordata_t">colordata.data_maximum</a>
|
||||
and <strong>colordata.maximum</strong> and black level data (<a href="API-datastruct.html#libraw_colordata_t">colordata.black</a>
|
||||
and colordata.cblack) will be adjusted too.</p>
|
||||
<p>This call should be used if you postprocess RAW data by your own code.
|
||||
LibRaw <a href="#dcrawemu">postprocessing functions</a> will call <strong>subtract_black()</strong>
|
||||
by oneself.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<a name="adjust_to_raw_inset_crop"></a>
|
||||
<h4>int LibRaw::adjust_to_raw_inset_crop(unsigned mask, float maxcrop =
|
||||
0.55f)</h4>
|
||||
<p> Promotes imgdata.sizes.raw_inset_crops[] values to imgdata.sizes.*margin
|
||||
and imgdata.sizes.width/height fields</p>
|
||||
<p> Parameters<br>
|
||||
mask: </p>
|
||||
<ul>
|
||||
<li>if bit 1 is set: prefer raw_inset_crops[1] </li>
|
||||
<li>if bit 0 is set: prefer raw_inset_crops[0] </li>
|
||||
</ul>
|
||||
<p>maxcrop: limits crop to not less than (original width/height)*maxcrop; if
|
||||
raw_inset_crops[i] data results in tighter crop, than this item is
|
||||
ignored. </p>
|
||||
<p>return value: index in raw_inset_crops[] used increased by one, so </p>
|
||||
<ul>
|
||||
<li>0: no changes made </li>
|
||||
<li>1: [0]th data used </li>
|
||||
<li>2: [1]th data used </li>
|
||||
</ul>
|
||||
<p>Note: this call SHOULD be used after LibRaw::unpack(), otherwise black
|
||||
level calculation from masked area may be fooled resulting in wrong black
|
||||
levels. </p>
|
||||
<p><a name="floatingpoint"></a></p>
|
||||
<h4>Support for floating point data</h4>
|
||||
<p>Libraw can read floating point DNG files (no other RAW formats may use
|
||||
floating point) with or without conversion to integer data. Floating point
|
||||
values are stored in imgdata.rawdata buffers:</p>
|
||||
<ul>
|
||||
<li><span style="font-family: monospace;">float * float_image</span> (if
|
||||
not NULL) points to floating point bayer data</li>
|
||||
<li><span style="font-family: monospace;">float (*float3_image)[3]</span>
|
||||
(if not NULL) points to floating point 3-channel buffer</li>
|
||||
<li><span style="font-family: monospace;">float (*float4_image)[4]</span>
|
||||
(if not NULL) points to floating point 4-channel buffer</li>
|
||||
</ul>
|
||||
<p>Function calls for floating point support:</p>
|
||||
<ul>
|
||||
<li><span style="font-family: monospace;">int LibRaw::is_floating_point();
|
||||
</span>function will return 1 if file contains floating point data</li>
|
||||
<li><span style="font-family: monospace;">int LibRaw::have_fpdata();</span>
|
||||
function will return 1 if FP data has read (decoded) into memory and not
|
||||
converted to integer data</li>
|
||||
<li>int LibRaw::convertFloatToInt(float dmin=4096.f, float dmax=32767.f,
|
||||
float dtarget = 16383.f) converts floating point data to integer. If
|
||||
data maximum is out of dmin..dmax range, than data scaled to set maximum
|
||||
to dtarget</li>
|
||||
</ul>
|
||||
<p><a name="ycc"></a></p>
|
||||
<h4>Support for YCC formats (Canon sRAW/mRAW and Nikon Small NEF)</h4>
|
||||
<pre> int LibRaw::is_sraw();<br> int LibRaw::is_nikon_sraw();<br> int LibRaw::sraw_midpoint()</pre>
|
||||
<ul>
|
||||
<li>is_sraw() call returns nonzero if current image is YCC-based.</li>
|
||||
<li>is_nikon_sraw() call returns nonzero for Nikon Small NEF files</li>
|
||||
<li>sraw_midpoint() call returns neutral (gray) point for color channels</li>
|
||||
</ul>
|
||||
<p><a name="recycle_datastream"></a></p>
|
||||
<h4>void LibRaw::set_dng_host(void* p)</h4>
|
||||
<p>If LibRaw is compiled with Adobe DNG SDK support and you wish to use this
|
||||
support:</p>
|
||||
<ul>
|
||||
<li>you need to create own dng_host object</li>
|
||||
<li>and pass it to LibRaw object using this function</li>
|
||||
</ul>
|
||||
<h4>void LibRaw::recycle_datastream(void)</h4>
|
||||
<p>This call closes input datastream with associated data buffer and
|
||||
unblocks opened file. <a name="recycle"></a></p>
|
||||
<h3>void LibRaw::recycle(void)</h3>
|
||||
<p>Frees the allocated data of LibRaw instance, enabling one to process the
|
||||
next file using the same processor. Repeated calls of recycle() are quite
|
||||
possible and do not conflict with anything.</p>
|
||||
<p><a name="~LibRaw"></a></p>
|
||||
<h3>LibRaw::~LibRaw()</h3>
|
||||
<p>Destructor, which consists in calling recycle().</p>
|
||||
<p><a name="strprogress"></a></p>
|
||||
<h3>const char* LibRaw::strprogress(enum LibRaw_progress code)</h3>
|
||||
<p>Converts progress stage code to description string (in English).</p>
|
||||
<p><a name="libraw_strerror"></a></p>
|
||||
<h3>const char* LibRaw::strerror(int errorcode)</h3>
|
||||
<p>Analog of strerror(3) function: outputs the text descriptions of LibRaw
|
||||
error codes (in English).</p>
|
||||
<p><a name="callbacks"></a></p>
|
||||
<h3>Setting Error Notification Functions</h3>
|
||||
<p>In process of RAW conversion LibRaw can call user-setted callback. This
|
||||
callback can be used for:</p>
|
||||
<ul>
|
||||
<li>Dynamic status update (progress bar and so on).</li>
|
||||
<li>Cancel of processing (for example, user pressed Cancel button).</li>
|
||||
</ul>
|
||||
<p>Also, work of the library may cause two types of exceptional situations
|
||||
that require notification of the calling application:</p>
|
||||
<ul>
|
||||
<li>Memory shortage</li>
|
||||
<li>Data read error.</li>
|
||||
</ul>
|
||||
<p>An application may set its own callbacks that will be called in the cases
|
||||
mentioned above to notify the user (or the calling program).</p>
|
||||
<p><a name="progress"></a></p>
|
||||
<h4>Progress indication/processing termination</h4>
|
||||
<pre> typedef int (*progress_callback)(void *callback_data,enum LibRaw_progress stage, int iteration, int expected);<br> void LibRaw::set_progress_handler(progress_callback func,void *callback_data);<br> </pre>
|
||||
<p>LibRaw user can set own callback which will be called 10-50 times during
|
||||
RAW postprocessing by dcraw_process().</p>
|
||||
<p>This callback may terminate current image processing by returning of
|
||||
non-zero value. In such case all processing will be cancelled immediately
|
||||
and all resources will be returned to system by recycle() call. Current
|
||||
call of dcraw_process() will return error code
|
||||
LIBRAW_CANCELLED_BY_CALLBACK.</p>
|
||||
<p>Callback parameters:</p>
|
||||
<dl>
|
||||
<dt>void *callback_data</dt>
|
||||
<dd>void*-pointer, passed as 2nd argument to set_progress_handler(). This
|
||||
pointer should be used to pass additional data to callback (i.e. thread
|
||||
local data and so on).</dd>
|
||||
<dt>enum LibRaw_progress stage</dt>
|
||||
<dd>Current processing stage. This number can be converted to string by
|
||||
call to <a href="#strprogress">LibRaw::strprogress</a>. Not all
|
||||
processing stages are covered by callback calls.</dd>
|
||||
<dt>int iteration</dt>
|
||||
<dd>Iteration number within current stage (from 0 to expected-1).</dd>
|
||||
<dt>int expected</dt>
|
||||
<dd>Expected number of iterations on current stage.</dd>
|
||||
</dl>
|
||||
<p>Callback should return value of: <strong>0</strong> for continue
|
||||
processing and <strong>non-zero</strong> for immediate cancel of
|
||||
processing.</p>
|
||||
<p> </p>
|
||||
<p>If LibRaw compiled with OpenMP support, iteration parameter may not
|
||||
always increase within one stage. Out of order callback calls are
|
||||
possible.</p>
|
||||
<p>Callback code sample:</p>
|
||||
<pre>int my_progress_callback(void *data,enum LibRaw_progress p,int iteration, int expected)<br>{<br> char *passed_string = (char *data);<br> printf("Callback: %s pass %d of %d, data passed: %s\n",libraw_strprogress(p),iteration,expected,passed_string);<br> if(timeout || key_pressed )<br> return 1; // cancel processing immediately<br> else<br> return 0; // can continue<br>}</pre>
|
||||
<p><a name="exif"></a></p>
|
||||
<h4>User-specified exif tag parser callback</h4>
|
||||
<pre> typedef void (*exif_parser_callback) (void *context, int tag, int type, int len,unsigned int ord, void *ifp);<br> void LibRaw::set_exifparser_handler( exif_parser_callback cb,void *context);<br> </pre>
|
||||
<p>Callback to be called on each parsed EXIF/Makernotes tag with parameters:</p>
|
||||
<ul>
|
||||
<li>context - pointer to context passed to set_exifparser_handler();</li>
|
||||
<li>tag - EXIF/Makernotes tag value</li>
|
||||
<li>type - TIFF(EXIF) tag type</li>
|
||||
<li>len - tag length</li>
|
||||
<li>ord - byte order (II or MM)</li>
|
||||
<li>void *ifp - pointer to LibRaw_abstract_datastream, positioned to tag
|
||||
data</li>
|
||||
</ul>
|
||||
<p><a name="dataerror"></a></p>
|
||||
<h4>File Read Error Notifier</h4>
|
||||
<pre> typedef void (*data_callback)(void *callback_data,const char *file, const int offset);<br> void LibRaw::set_dataerror_handler(data_callback func, void *callback_data); <br> </pre>
|
||||
<p>The user can define his or her own function to be called in the case of
|
||||
error in the input data. It is a void function receiving two parameters:</p>
|
||||
<ul>
|
||||
<li><strong>void *callback_data</strong> - void*-pointer, passed as 2nd
|
||||
argument to set_progress_handler(). This pointer should be used to pass
|
||||
additional data to callback (i.e. thread local data and so on).</li>
|
||||
<li><strong>file</strong> is the name of the RAW file whose processing
|
||||
evoked the file read error. This name <strong>can be NULL</strong> if
|
||||
underlying data input layer does not know the name. So, if calling
|
||||
application sets own callback, this callback should work with NULL file
|
||||
name.</li>
|
||||
<li><strong>offset</strong> is -1 at end-of-file (if LibRaw expects more
|
||||
data) or a positive number equal to the file position (bytes from file
|
||||
beginning) where the unpacking error occurred.</li>
|
||||
</ul>
|
||||
<p>The callback function is intended for information purposes: it notifies
|
||||
the user or the program code that processing is impossible.</p>
|
||||
<p>If the user does not set his or her own handler, the standard one (output
|
||||
of error message in stderr) will be used.</p>
|
||||
<p>One can set the null handler by passing NULL to set_dataerror_handler;
|
||||
then no notifier function will be called. The same effect can be achieved
|
||||
by creating a LibRaw object with the LIBRAW_OPTIONS_NO_DATAERR_CALLBACK
|
||||
flag in the constructor.</p>
|
||||
<p>In the case of error in the input data, processing of the current file is
|
||||
terminated and a notifier is called; all allocated resources are freed,
|
||||
and <a href="#recycle">recycle()</a> is performed. The current call will
|
||||
return LIBRAW_IO_ERROR. <br>
|
||||
At an attempt to continue data processing, all subsequent calls will
|
||||
return LIBRAW_OUT_OF_ORDER_CALL. Processing of a new file may be started
|
||||
in the usual way, by calling LibRaw::open_file().</p>
|
||||
<p><a name="dcrawemu"></a></p>
|
||||
<h2>Data Postprocessing: Emulation of dcraw Behavior</h2>
|
||||
<p>Instead of writing one's own Bayer pattern postprocessing, one can use
|
||||
the dcraw functions, which are called after the calls of open_file() +
|
||||
unpack() /+ unpack_thumb()/</p>
|
||||
<p><a name="dcraw_params"></a></p>
|
||||
<h3>Parameter Setting</h3>
|
||||
<p>Virtually all parameters that can be set through the dcraw command line
|
||||
are specified by assigning values to fields of the <strong>LibRaw::imgdata.params</strong>
|
||||
structure. The type of this structure is <strong>libraw_output_params_t</strong>;
|
||||
all fields are listed and described in sufficient detail in the <a href="API-datastruct.html#libraw_output_params_t">description
|
||||
of data structures</a>.</p>
|
||||
<p><a name="raw2image"></a></p>
|
||||
<h3>int LibRaw::raw2image</h3>
|
||||
<p>This function allocates buffer for postprocessing (imgdata.image) and
|
||||
fills it with data layout compatible with LibRaw 0.13/0.14 and below. If
|
||||
the buffer is already allocated, it will be free()ed and allocated again.</p>
|
||||
<p>This function should be called only if your code do postprocessing stage.
|
||||
If you use LibRaw's postprocessing calls (see below) you don't need to
|
||||
call raw2image().</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">return
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="free_image"></a></p>
|
||||
<h3>void LibRaw::free_image</h3>
|
||||
<p>This function releases the imgdata.image buffer allocated by raw2image();</p>
|
||||
<p>This method should be called if current postprocessing results are not
|
||||
needed by the program (e.g. already copied somewhere), but new
|
||||
postprocessing calls (with another settings) are possible, so it is to
|
||||
early to call <a href="#recycle">recycle()</a>.</p>
|
||||
<p><a name="adjust_sizes_info_only"></a></p>
|
||||
<h3>int LibRaw::adjust_sizes_info_only(void)</h3>
|
||||
<p>The function calculates the correct size of the output image
|
||||
(imgdata.sizes.iwidth and imgdata.sizes.iheight) for the following cases:</p>
|
||||
<ul>
|
||||
<li>Files from Fuji cameras (with a 45-degree rotation)</li>
|
||||
<li>Files from cameras with non-square pixels</li>
|
||||
<li>Images shot by a rotated camera.</li>
|
||||
</ul>
|
||||
<p>In the aforementioned cases, the function changes the fields of the image
|
||||
output size; note that this change cannot be repeated again.</p>
|
||||
<p><a name="dcraw_process"></a></p>
|
||||
<h3>int LibRaw::dcraw_process(void)</h3>
|
||||
<p>The function emulates the postprocessing capabilities available in <strong>dcraw</strong>.<br>
|
||||
Called after calling LibRaw::unpack();</p>
|
||||
<p>The entire functionality of dcraw (set via the field values in <a href="API-datastruct.html#libraw_output_params_t">imgdata.params</a>)
|
||||
is supported, except for</p>
|
||||
<ul>
|
||||
<li>Dark frame subtraction</li>
|
||||
<li>Work with bad pixels.</li>
|
||||
</ul>
|
||||
<p>The function is intended solely for demonstration and testing purposes;
|
||||
it is assumed that its source code will be used in most real applications
|
||||
as the reference material concerning the order of RAW data processing.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">error
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="dcrawrite"></a></p>
|
||||
<h2>Data Output to Files: Emulation of dcraw Behavior</h2>
|
||||
<p>In spite of the abundance of libraries for file output in any formats,
|
||||
LibRaw includes calls that emulate the file output provided by dcraw. This
|
||||
is done primarily for easier verification of library work: the resultant
|
||||
files must be binary identical.</p>
|
||||
<p><a name="dcraw_ppm_tiff_writer"></a></p>
|
||||
<h3>int LibRaw::dcraw_ppm_tiff_writer(const char *outfile)</h3>
|
||||
<p>The function outputs the postprocessing results to a file in the PPM/PGM
|
||||
or TIFF format (the format is set via imgdata.params.output_tiff). The
|
||||
results are binary identical to those provided by dcraw.</p>
|
||||
<p>If "-" is passed as outfile, the function will write to standard output
|
||||
(stdout).</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">error
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="dcraw_thumb_writer"></a></p>
|
||||
<h3>int LibRaw::dcraw_thumb_writer(const char *thumbfile)</h3>
|
||||
<p>Writes the thumbnail to a file in the PPM format for bitmap thumbnails
|
||||
and in the JPEG format for JPEG thumbnails, i.e., in the format completely
|
||||
identical to the results provided by dcraw.</p>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">error
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="memwrite"></a></p>
|
||||
<h2>Copying unpacked data into memory buffer</h2>
|
||||
<p>There is several function calls for store unpacked data into memory
|
||||
buffer (after using dcraw_process() and so on):</p>
|
||||
<ul>
|
||||
<li><strong>get_mem_image_format</strong> - get resulting bitmap size and
|
||||
bit depth.</li>
|
||||
<li><strong>copy_mem_image</strong> - copy postprocessed data into some
|
||||
memory buffer with different color order and line stride.</li>
|
||||
<li><strong>dcraw_make_mem_image</strong> - store processed image data
|
||||
into allocated buffer;</li>
|
||||
<li><strong>dcraw_make_mem_thumb</strong> - store extracted thumbnail into
|
||||
buffer as JPEG-file image (for most cameras) or as RGB-bitmap.</li>
|
||||
</ul>
|
||||
<p>For usage primer see samples/mem_image.c sample.</p>
|
||||
<p> </p>
|
||||
<p><a name="get_mem_image_format"></a></p>
|
||||
<h3>void get_mem_image_format(int *widthp, int *heightp, int *colorsp, int
|
||||
*bpp) const - return processing bitmap size</h3>
|
||||
<p>This function returns size of postprocessed image:</p>
|
||||
<ul>
|
||||
<li>Image width is returned in *widthp;</li>
|
||||
<li>Bitmap height is returned in *heightp;</li>
|
||||
<li>Image color count is returned in *colorsp;</li>
|
||||
<li>Bits per pixel (8 or 16) is returned in *bpp;</li>
|
||||
</ul>
|
||||
<p><a name="copy_mem_image"></a></p>
|
||||
<h3>int LibRaw::copy_mem_image(void* scan0, int stride, int bgr) - copies
|
||||
postprocessed bitmap data into buffer</h3>
|
||||
<p>Function parameters:</p>
|
||||
<ul>
|
||||
<li>void *scan0 - pointer to buffer to copy data to. The buffer should be
|
||||
at least stride*image_height bytes;</li>
|
||||
<li>int stride - stride of each other image line (row) in bytes. Usually
|
||||
image_width*(bit_per_pixel/8)*image_colors, but may be more if you wish
|
||||
to align image rows to, for example, 8 or 16 or 32 bytes to make CPU
|
||||
more happy.</li>
|
||||
<li>int bgr - pixel copy order. RGB if bgr==0 and BGR otherwise.</li>
|
||||
</ul>
|
||||
<p>The function returns an integer number in accordance with the <a href="API-notes.html#errors">error
|
||||
code convention</a>: positive if any system call has returned an error,
|
||||
negative (from the <a href="API-datastruct.html#LibRaw_errors">LibRaw
|
||||
error list</a>) if there has been an error situation within LibRaw.</p>
|
||||
<p><a name="dcraw_make_mem_image"></a></p>
|
||||
<h3>libraw_processed_image_t *dcraw_make_mem_image(int *errorcode=NULL) -
|
||||
store unpacked and processed image into memory buffer as RGB-bitmap</h3>
|
||||
<p>This function allocates memory buffer and stores unpacked-preprocessed
|
||||
image into this buffer. Function returns allocated structure <a href="API-datastruct.html#libraw_processed_image_t">libraw_processed_image_t</a>
|
||||
with filled fields. Always returns data as RGB bitmap (i.e. <strong>type</strong>
|
||||
field is equal to LIBRAW_IMAGE_BITMAP).</p>
|
||||
<p>dcraw_process() should be called before dcraw_make_mem_image();</p>
|
||||
<p>Returns NULL in case of an error. If caller has passed not-NULL value as
|
||||
errorcode parameter, than *errorcode will be set to error code according
|
||||
to <a href="API-notes.html#errors">error code convention</a>.</p>
|
||||
<p><strong>NOTE!</strong> Memory, allocated for return value will not be
|
||||
fried at destructor or <strong>LibRaw::recycle</strong> calls. Caller of
|
||||
dcraw_make_mem_image should free this memory by call to <a href="#dcraw_clear_mem">LibRaw::dcraw_clear_mem()</a>.</p>
|
||||
<p><a name="dcraw_make_mem_thumb"></a></p>
|
||||
<h3>libraw_processed_image_t *dcraw_make_mem_thumb(int *errorcode=NULL) -
|
||||
store unpacked thumbnail into memory buffer</h3>
|
||||
<p>This function allocates memory buffer and stores thumbnail data in it.
|
||||
Function returns allocated structure <a href="API-datastruct.html#libraw_processed_image_t">libraw_processed_image_t</a>
|
||||
with filled fields. For most RAW images allocated structure will contains
|
||||
JPEG image (i.e. <strong>type</strong> field is equal to
|
||||
LIBRAW_IMAGE_JPEG). For some cameras with RGB-bitmap thumbnail (Kodak
|
||||
SLRs) returned structure contains RGB bitmap (<strong>type</strong> field
|
||||
is equal to LIBRAW_IMAGE_JPEG, see structure description for details).</p>
|
||||
<p>unpack_thumb() should be called before dcraw_make_mem_thumb();</p>
|
||||
<p>Returns NULL in case of an error. If caller has passed not-NULL value as
|
||||
errorcode parameter, than *errorcode will be set to error code according
|
||||
to <20> <a href="API-notes.html#errors">error code convention</a>.</p>
|
||||
<p><strong>NOTE!</strong> Memory, allocated for return value will not be
|
||||
fried at destructor or <strong>LibRaw::recycle</strong> calls. Caller of
|
||||
dcraw_make_mem_image should free this memory by call to <a href="#dcraw_clear_mem">LibRaw::dcraw_clear_mem()</a>.</p>
|
||||
<h3>void LibRaw::dcraw_clear_mem(libraw_processed_image_t *)</h3>
|
||||
<p>This function will free the memory allocated by <strong>dcraw_make_mem_image</strong>
|
||||
or <strong>dcraw_make_mem_thumb</strong>.</p>
|
||||
<p>This is static class member, so call syntax should be
|
||||
LibRaw::dcraw_clear_mem(...).</p>
|
||||
<p>This call translates directly to free() system function, but it is better
|
||||
to use dcraw_clear_mem because LibRaw (DLL) may be compiled with memory
|
||||
manager other than in calling application.</p>
|
||||
<p><a name="datastream"></a></p>
|
||||
<h2>Input layer abstraction</h2>
|
||||
<p><a name="LibRaw_abstract_datastream"></a></p>
|
||||
<h3>class LibRaw_abstract_datastream - abstract RAW read interface</h3>
|
||||
<p>LibRaw reads RAW-data by calling (virtual) methods of C++ object derived
|
||||
from <strong>LibRaw_abstract_datastream</strong>. This C++ class does not
|
||||
implement any read, but defines interface to be called. Call to base class
|
||||
methods always results in error.</p>
|
||||
<p><a name="datastream_methods"></a></p>
|
||||
<h4>LibRaw_abstract_datastream class methods</h4>
|
||||
<p><a name="datastream_methods_utility"></a></p>
|
||||
<h5>Object verification</h5>
|
||||
<dl>
|
||||
<dt><strong> virtual int valid()</strong></dt>
|
||||
<dd>Checks input datastream validity. Returns 1 on valid stream and 0 if
|
||||
datastream was created on non-valid input parameters (wrong filename for
|
||||
file stream and so on).</dd>
|
||||
</dl>
|
||||
<p><a name="datastream_methods_read"></a></p>
|
||||
<h5>Stream read and positioning</h5>
|
||||
<p>This group of methods implements file object (FILE*) semantics.</p>
|
||||
<dl>
|
||||
<dt><strong>virtual int read(void * ptr,size_t size, size_t nmemb)</strong></dt>
|
||||
<dd>Similar to fread(ptr,size,nmemb,file).</dd>
|
||||
<dt><strong>virtual int seek(off_t o, int whence)</strong></dt>
|
||||
<dd>Similar to fseek(file,o,whence).</dd>
|
||||
<dt><strong>virtual int tell(</strong></dt>
|
||||
<dd>Similar to ftell(file).</dd>
|
||||
<dt><strong>virtual int get_char()</strong></dt>
|
||||
<dd>Similar to getc(file)/fgetc(file).</dd>
|
||||
<dt><strong>virtual char* gets(char *s, int n)</strong></dt>
|
||||
<dd>Similar to fgets(s,n,file).</dd>
|
||||
<dt><strong>virtual int eof()</strong></dt>
|
||||
<dd>Similar to feof(file).</dd>
|
||||
<dt><strong>virtual int scanf_one(const char *fmt, void *val)</strong></dt>
|
||||
<dd>Simplified variant of fscanf(file,fmt,val): format string is always
|
||||
contains one argument to read. So, variable args call is not needed and
|
||||
only one pointer to data passed.</dd>
|
||||
<dt><strong> virtual int jpeg_src(void * p);</strong></dt>
|
||||
<dd>Initializes read structures in j_decompress_ptr object passed as *p.
|
||||
This object is used by libjpeg for JPEG data reading from datastream.
|
||||
<p>Returns -1 on error and 0 on success.</p>
|
||||
</dd>
|
||||
<dt><strong> virtual void * make_jas_stream();</strong></dt>
|
||||
<dd>Creates LibJasper input stream (for JPEG2000 decoding).
|
||||
<p>returns NULL on error or data pointer on success.</p>
|
||||
</dd>
|
||||
</dl>
|
||||
<p><a name="datastream_methods_other"></a></p>
|
||||
<h5>Other methods</h5>
|
||||
<p>This group of methods includes several supplementary calls. These calls
|
||||
are used to temporary switch to another data stream (file and/or memory
|
||||
buffer).</p>
|
||||
<dl>
|
||||
<dt><strong>virtual const char* fname()</strong></dt>
|
||||
<dd>Returns name of opened file if datastream object knows it (for
|
||||
example, <strong>LibRaw_file_datastream</strong> used). Filename used
|
||||
in:
|
||||
<ul>
|
||||
<li>error notification callbacks;</li>
|
||||
<li>generation of filename of JPEG-file with metadata when needed
|
||||
(i.e. cameras with 'Diag RAW hack').</li>
|
||||
</ul>
|
||||
</dd>
|
||||
<dt><strong>virtual int subfile_open(const char *fn)</strong></dt>
|
||||
<dd>This call temporary switches input to file <strong>fn</strong>.
|
||||
Returns 0 on success and error code on error.<br>
|
||||
The function used to read metadata from external JPEG file (on cameras
|
||||
with "Diag RAW hack"). <br>
|
||||
This call is not implemented for <a href="#buffer_datastream">LibRaw_buffer_datastream</a>,
|
||||
so external JPEG processing is not possible when buffer datastream used.
|
||||
<br>
|
||||
This function should be implemented in real input class, base class call
|
||||
always return error. <br>
|
||||
Working implementation sample can be found in <a href="#file_datastream">LibRaw_file_datastream</a>
|
||||
implementation in <strong>libraw/libraw_datastream.h</strong> file.</dd>
|
||||
<dt><strong> virtual void subfile_close()</strong></dt>
|
||||
<dd>This call switches input stream from temporary open file back to main
|
||||
data stream.</dd>
|
||||
<dt><strong> virtual int tempbuffer_open(void *buf, size_t size)</strong></dt>
|
||||
<dd>This call temporary switches input to <a href="#buffer_datastream">LibRaw_buffer_datastream</a>
|
||||
object, created from <strong>buf</strong>.<br>
|
||||
This method is needed for Sony encrypted metadata parser.
|
||||
<p>This call implemented in base class (<strong>LibRaw_abstract_datastream</strong>),
|
||||
there is no need to reimplement in in derived classes.<br>
|
||||
Possible activity of temporary datastream requires very accurate
|
||||
programming when implementing datastreams derived from base <strong>LibRaw_abstract_datastream</strong>.
|
||||
See <a href="#substream">below</a> for more details.</p>
|
||||
</dd>
|
||||
<dt><strong> virtual void tempbuffer_close()</strong></dt>
|
||||
<dd>This call switch input back from temporary datastream to main stream.
|
||||
This call implemented in base <strong>LibRaw_abstract_datastream</strong>
|
||||
class.</dd>
|
||||
</dl>
|
||||
<p><a name="datastream_derived"></a></p>
|
||||
<h3>Derived input classes included in LibRaw</h3>
|
||||
<p>There is three "standard" input classes in LibRaw distribution:</p>
|
||||
<ul>
|
||||
<li><a href="#file_datastream">LibRaw_file_datastream</a> implements input
|
||||
from file (in filesystem).</li>
|
||||
<li><a href="#bigfile_datastream">LibRaw_bigfile_datastream</a> slower
|
||||
I/O, but files larger than 2Gb are supported.</li>
|
||||
<li><a href="#buffer_datastream">LibRaw_buffer_datastream</a> implements
|
||||
input from memory buffer.</li>
|
||||
</ul>
|
||||
<p>LibRaw C++ interface users can implement their own input classes and use
|
||||
them via <a href="#open_datastream">LibRaw::open_datastream</a> call.
|
||||
Requirements and implementation specifics are described below.</p>
|
||||
<p><a name="file_datastream"></a></p>
|
||||
<h4>class LibRaw_file_datastream - file input interface</h4>
|
||||
<p>This class implements input from file.</p>
|
||||
<p><strong>Class methods:</strong></p>
|
||||
<dl>
|
||||
<dt><strong> LibRaw_file_datastream(const char *fname) </strong></dt>
|
||||
<dd>This constructor creates <strong>LibRaw_file_datastream</strong>
|
||||
object from file <strong>fname</strong>.<br>
|
||||
Unfortunately, C++ constructor cannot return an error. So if bad
|
||||
filename passed (e.g. nonexistent file) object is created as non-valid
|
||||
(valid() call returns zero).</dd>
|
||||
</dl>
|
||||
<p>All other class methods are <a href="#datastream_methods">described
|
||||
above</a>.<br>
|
||||
This class implements all possible methods, including fname() and
|
||||
subfile_open().</p>
|
||||
<p><a name="bigfile_datastream"></a></p>
|
||||
<h4>class LibRaw_bigfile_datastream - file input interface</h4>
|
||||
<p>This class implements input from file.</p>
|
||||
<p><strong>Class methods:</strong></p>
|
||||
<dl>
|
||||
<dt><strong> LibRaw_bigfile_datastream(const char *fname) </strong></dt>
|
||||
<dd>This constructor creates <strong>LibRaw_bigfile_datastream</strong>
|
||||
object from file <strong>fname</strong>.<br>
|
||||
Unfortunately, C++ constructor cannot return an error. So if bad
|
||||
filename passed (e.g. nonexistent file) object is created as non-valid
|
||||
(valid() call returns zero).</dd>
|
||||
</dl>
|
||||
<p>The difference between <strong>file</strong> and <strong>bigfile</strong>
|
||||
datastreams are obvious from class name: bigfile one supports large files
|
||||
(more than 2Gb) on all supported systems. File one uses streambuf
|
||||
interface which is limited to 2Gb on many systems.</p>
|
||||
<p>All other class methods are <a href="#datastream_methods">described
|
||||
above</a>.<br>
|
||||
This class implements all possible methods, including fname() and
|
||||
subfile_open().</p>
|
||||
<p><a name="buffer_datastream"></a></p>
|
||||
<h4>class LibRaw_buffer_datastream - memory buffer input interface</h4>
|
||||
<p>This class implements input from memory buffer.</p>
|
||||
<p><strong>Class methods:</strong></p>
|
||||
<dl>
|
||||
<dt><strong> LibRaw_buffer_datastream(void *buffer, size_t bsize)</strong></dt>
|
||||
<dd>This constructor creates datastream object from <strong>buffer</strong>
|
||||
with size <strong>bsize</strong>.<br>
|
||||
It is not possibly to verify the pointer passed, so buffer address is
|
||||
checked against 0 and -1 only.</dd>
|
||||
</dl>
|
||||
<p>All other class methods are <a href="#datastream_methods">described
|
||||
above</a>.<br>
|
||||
This class does not implement fname() and subfile_open() calls, so
|
||||
external JPEG metadata parsing is not possible.</p>
|
||||
<p><a name="own_datastreams"></a></p>
|
||||
<h3>Own datastream derived classes</h3>
|
||||
<p>To create own read interface LibRaw user should implement C++ class
|
||||
derived from <strong>LibRaw_abstract_datastream</strong> with all read
|
||||
methods.<br>
|
||||
LibRaw standard implementations may be used as reference. See <strong>libraw/libraw_datastream.h</strong>
|
||||
file for details (all standard LibRaw input classes are implemented using
|
||||
inline functions only).</p>
|
||||
<p><a name="substream"></a></p>
|
||||
<p><a href="index.html">[back to Index]</a></p>
|
||||
</body>
|
||||
</html>
|
1335
rtengine/libraw/doc/API-datastruct.html
Normal file
1335
rtengine/libraw/doc/API-datastruct.html
Normal file
File diff suppressed because it is too large
Load Diff
305
rtengine/libraw/doc/API-notes.html
Normal file
305
rtengine/libraw/doc/API-notes.html
Normal file
@@ -0,0 +1,305 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body>
|
||||
<p>LibRaw: General Notes on API<a href="index.html">[back to Index]</a></p>
|
||||
<h1>LibRaw: General Notes on API</h1>
|
||||
<h2>Contents</h2>
|
||||
<ol>
|
||||
<li><a href="#versions">LibRaw editions</a></li>
|
||||
<li><a href="#errors">Error Code Conventions and Error Handling</a></li>
|
||||
<li><a href="#warnings">Nonstandard Situations That Are Not Errors</a></li>
|
||||
<li><a href="#io">Input Layer Abstraction</a></li>
|
||||
<li><a href="threads">Thread Safety</a></li>
|
||||
<li><a href="#CXX">The Use of C++</a></li>
|
||||
<li><a href="#imgdata_params">Parameters of the LibRaw::imgdata.params
|
||||
Structure Affecting the Behavior of open_file/unpack/unpack_thumb</a></li>
|
||||
<li><a href="#memory">Memory Usage</a>
|
||||
<ol>
|
||||
<li><a href="#stack">Stack Usage</a></li>
|
||||
<li><a href="#memmgr">Dynamic Memory Management</a></li>
|
||||
<li><a href="#memuse">Dynamic Memory Usage</a>
|
||||
<ol>
|
||||
<li><a href="#memraw">Memory Buffer for the RAW Image</a></li>
|
||||
<li><a href="#memimage">Memory for the Postprocessed Image</a></li>
|
||||
<li><a href="#memthumb">Memory for the Decoded Thumbnail</a></li>
|
||||
<li><a href="#memraw">Memory for RAW Unpacking</a></li>
|
||||
<li><a href="#mempostproces">Memory for Postprocessing</a></li>
|
||||
<li><a href="#memwrite">Memory for File Writing</a></li>
|
||||
<li><a href="#memunpack">Unpacking into memory buffer</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li><a href="#incompat">Incompatibilities with dcraw</a>
|
||||
<ol>
|
||||
<li><a href="#incompat_max">Automatic maximum search/brightness
|
||||
adjustment</a></li>
|
||||
<li><a href="#incompat_kodak">Processing of Thumbnails from Kodak
|
||||
cameras</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
</ol>
|
||||
<p><a name="versions"></a></p>
|
||||
<h2>LibRaw Versions</h2>
|
||||
<p>Since version 0.9, there is only one LibRaw variants. Older versions have
|
||||
three separate editions (normal, -Lite and -Commercial versions).</p>
|
||||
<p><a name="errors"></a></p>
|
||||
<h2>Error Code Conventions and Error Handling</h2>
|
||||
<p>The following conventions concern the returned errors:</p>
|
||||
<ol>
|
||||
<li>All functions that can return an error code have integer type of
|
||||
return data.</li>
|
||||
<li>If there is no error, the return value is 0 (LIBRAW_SUCCESS).</li>
|
||||
<li>If an error has happened in a system call, the return value is errno
|
||||
(a positive number), which can be analyzed using strerror() or similar
|
||||
means.</li>
|
||||
<li>All LibRaw's own error codes are negative; each of these errors
|
||||
belongs to one of two types:
|
||||
<dl>
|
||||
<dt><strong>Non-fatal errors</strong></dt>
|
||||
<dd>Non-fatal errors do not forbid execution of other functions in the
|
||||
processing succession (e.g., <a href="API-CXX.html#unpack_thumb">unpack_thumb()</a>
|
||||
can easily return the code corresponding to "preview is absent" but
|
||||
this does not prevent further call of <a href="API-CXX.html#unpack">unpack()</a>.</dd>
|
||||
<dt><strong>Fatal errors</strong></dt>
|
||||
<dd>In the case of fatal errors (memory shortage, input data error,
|
||||
data unpacking failure), the current stage of processing is
|
||||
terminated and all allocated resources are freed.<br>
|
||||
If an attempt to continue processing is made, all subsequent API
|
||||
calls will return the LIBRAW_OUT_OF_ORDER_CALL error.<br>
|
||||
At the same time, the LibRaw instance in which a fatal error has
|
||||
occurred can process the next RAW files in the usual way (by calling
|
||||
<a href="API-CXX.html#open_file">open_file()</a> (or other input
|
||||
methods), then <a href="API-CXX.html#unpack">unpack()</a>, etc.).</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<li>The macro LIBRAW_FATAL_ERROR(error code) checks if an error is fatal
|
||||
or not.</li>
|
||||
<li>The error codes are <a href="API-datastruct.html#errors">listed and
|
||||
deciphered here</a>.</li>
|
||||
</ol>
|
||||
<p><a name="warnings"></a></p>
|
||||
<h2>Nonstandard Situations That Are Not Errors</h2>
|
||||
<p>If the program has encountered a nonstandard situation that does not
|
||||
prevent retrieval of some data from a file, it sends a signal by setting
|
||||
the corresponding bit in <a href="API-datastruct.html#libraw_data_t">imgdata.process_warnings</a>.
|
||||
The possible types of warnings are <a href="API-datastruct.html#warnings">listed
|
||||
and deciphered here</a>.</p>
|
||||
<p><a name="io"></a></p>
|
||||
<h2>Input Layer Abstraction</h2>
|
||||
<p>LibRaw uses objects derived from <a href="API-CXX.html#datastream">LibRaw_abstract_datastream</a>
|
||||
for data input. Semantics of these objects is similar to 'file with
|
||||
arbitrary seek' object: both read and seek operations are used.</p>
|
||||
<p>Some RAW formats requires temporary switch to another data stream created
|
||||
on top on memory buffer for metadata read. Methods for doing so are
|
||||
implemented in base class <a href="API-CXX.html#datastream">LibRaw_abstract_datastream</a>
|
||||
by internal data field <strong>substream</strong>. Look into source code
|
||||
of <a href="API-CXX.html#file_datastream">LibRaw_file_datastream</a>
|
||||
class in <strong>libraw/libraw_datastream.h</strong> file for more
|
||||
details. <br>
|
||||
When implementing own datastream classes, you need to take <strong>substream</strong>
|
||||
into account and pass control to methods of this field if it is active
|
||||
(not NULL).</p>
|
||||
<p>If datastream implementation knows name of input file, it should provide
|
||||
fname() call. This name will be used in <a href="API-CXX.html#callbacks">error
|
||||
callbacks</a> and in guessing name of JPEG file with metadata (for RAW
|
||||
files with external metadata).</p>
|
||||
<p>For external metadata support input class should implement <strong>subfile_open()/subfile_close()</strong>
|
||||
methods. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <br>
|
||||
Sample of these methods implementation may be found in <a href="API-CXX.html#file_datastream">LibRaw_file_datastream</a>
|
||||
class (look into <strong>libraw/libraw_datastream.h</strong> file for
|
||||
details).</p>
|
||||
<p><a name="threads"></a></p>
|
||||
<h2>Thread safety</h2>
|
||||
<p>Thread safety is ensured if a LibRaw object is created and used within
|
||||
one thread. At the same time, the number of threads (each with its own
|
||||
LibRaw object) is not limited in any way (except by memory requirements).</p>
|
||||
<p>If a LibRaw object is created in one execution thread and used in
|
||||
another, external synchronization is necessary.</p>
|
||||
<p>There is two libraries under Unix environment (Linux/FreeBSD/MacOS):
|
||||
libraw_r.a (thread-safe) and libraw.a (single-threaded, slightly faster).</p>
|
||||
<p>Thread-safe library version stores intermediate unpacker data into LibRaw
|
||||
class data. So, several copies of LibRaw, working in parallel, is
|
||||
possible.</p>
|
||||
<p>Not thread-safe library uses global variable for intermediate data store
|
||||
which is faster but not reenterant. This non-thread-safe library still may
|
||||
be used in multi-threaded apps, but only if exactly one LibRaw class copy
|
||||
exists in program.</p>
|
||||
<p>Windows version is similar to multi-threaded Unix one.</p>
|
||||
<p><a name="CXX"></a></p>
|
||||
<h2>The Use of C++</h2>
|
||||
<p>Exception situations within LibRaw are handled using the C++ exception
|
||||
mechanism. All exceptions are caught inside the library functions and
|
||||
should not penetrate outside.</p>
|
||||
<p>Memory is allocated/freed using functions malloc(calloc)/free rather than
|
||||
new/delete.</p>
|
||||
<p>If C API is used, references to C++ calls new/delete still remain, and so
|
||||
linking with libstdc++(Unix)/....(Windows) is necessary.</p>
|
||||
<p><a name="imgdata_params"></a></p>
|
||||
<h2>Parameters of the LibRaw::imgdata.params Structure Affecting the
|
||||
Behavior of open_file/unpack/unpack_thumb</h2>
|
||||
<p>Most data fields of structure LibRaw::imgdata.params affect only <a href="API-CXX.html#dcrawemu">data
|
||||
postprocessing</a>, but there are some exceptions, which have been
|
||||
inherited by the current version of LibRaw from/ dcraw source texts (these
|
||||
dependences will be gradually removed).</p>
|
||||
<dl>
|
||||
<dt><strong>imgdata.params.use_camera_matrix and
|
||||
imgdata.params.use_camera_wb</strong></dt>
|
||||
<dd>These fields affect loading of RAW data for cameras with a color
|
||||
matrix.<br>
|
||||
<strong>Attention!</strong> If parameter <strong>imgdata.params.use_camera_matrix</strong>
|
||||
is not set by the user, it is copied from <strong>imgdata.params.use_camera_wb</strong>
|
||||
at the stage of file opening.</dd>
|
||||
<dt><strong>imgdata.params.user_flip</strong></dt>
|
||||
<dd>If this parameter is greater than or equal to zero, assignment <code>imgdata.sizes.flip
|
||||
= imgdata.params.user_flip</code> is performed at the <a href="API-CXX.html#open_file">open_file()</a>
|
||||
stage.</dd>
|
||||
<dt><strong>imgdata.params.shot_select</strong></dt>
|
||||
<dd>This parameter makes it possible to select the number of the extracted
|
||||
image for data formats in which storage of several RAW images in one
|
||||
data file is possible.</dd>
|
||||
<dt><strong>imgdata.params.half_size</strong></dt>
|
||||
<dd>Affects RAW data loading for Phase One and Sinar backs. Also, it this
|
||||
parameter is set then image bitmap will be reduced by half in each
|
||||
dimension. In later case, all 4 components of bitmap will be filled
|
||||
during data extraction phase.</dd>
|
||||
<dt><strong>imgdata.params.threshold, imgdata.params.aber</strong></dt>
|
||||
<dd>If these parameters used, then half-sized bitmap will be used for data
|
||||
unpacking. See above for details.</dd>
|
||||
<dt><strong>imgdata.params.use_camera_wb</strong></dt>
|
||||
<dd>Affects loading of white balance matrix for Leaf backs.</dd>
|
||||
</dl>
|
||||
<p><a name="memory"></a></p>
|
||||
<h2>Memory Usage</h2>
|
||||
<p><a name="stack"></a></p>
|
||||
<h3>Stack Usage</h3>
|
||||
<p>An instance of the LibRaw class has its own size about <strong>800 Kb</strong>;
|
||||
if constructions like <code>LibRaw imageProcessor;</code> are used, this
|
||||
memory is stack-allocated.</p>
|
||||
<p>Methods of class LibRaw (and C API calls) may allocate up to 130-140 Kb
|
||||
of data on the stack (to place auto variables) during their work.</p>
|
||||
<p>Thus, the work of one LibRaw instance may require about <strong>1MB</strong>
|
||||
of stack memory. This is not a problem for most contemporary
|
||||
architectures. However, when working in a multithreaded environment, one
|
||||
should not forget to allocate a sufficient amount of memory for the thread
|
||||
stack.</p>
|
||||
<p>In the case of dynamic allocation (<code>LibRaw *iProcessor = new LibRaw;</code>),
|
||||
the requirements to stack memory will decrease by ~800 Kb, which is the
|
||||
size of a class instance). If <a href="API-C.html">C API</a> is used, the
|
||||
LibRaw instance is allocated dynamically.</p>
|
||||
<p><a name="memmgr"></a></p>
|
||||
<h3>Dynamic Memory Management</h3>
|
||||
<p>LibRaw keeps record of all allocated dynamic memory blocks; in the case
|
||||
of an exceptional situation (fatal error), they are all freed. The code
|
||||
for keeping this record is fairly primitive and not designed to consider
|
||||
allocation of many blocks (in the normal situation, allocation takes place
|
||||
from 2 to 6 times during file processing); this fact should be taken into
|
||||
account by developers trying to add new methods to LibRaw.</p>
|
||||
<p><a name="memuse"></a></p>
|
||||
<h3>Dynamic Memory Usage</h3>
|
||||
<p>LibRaw uses dynamic memory</p>
|
||||
<ul>
|
||||
<li>for the decoded image;</li>
|
||||
<li>for the decoded thumbnail;</li>
|
||||
<li>for the postprocessed image;</li>
|
||||
<li>for the ICC profile retrieved from the RAW file (if available);</li>
|
||||
<li>for temporary data at the stage of RAW file unpacking;</li>
|
||||
<li>for temporary data at the stage of postprocessing and result output;</li>
|
||||
<li>for reading of the RAW source file (only under Win32).</li>
|
||||
</ul>
|
||||
<p><a name="memraw"></a></p>
|
||||
<h4>Memory buffer for the RAW image</h4>
|
||||
<p>Decoded RAW data are stored:</p>
|
||||
<ul>
|
||||
<li>one 16-bit value per pixel for "bayer" images. The masked pixels
|
||||
(black or dark or masked frame) are stored with image data.</li>
|
||||
<li>Free or four 16-bit values for full-color images (Foveon, Linear DNG,
|
||||
Canon sRAW etc.).</li>
|
||||
<li>one,three, or four 32-bit floating point values per pixel for
|
||||
floating-point data.</li>
|
||||
</ul>
|
||||
<p>The buffer for RAW data is allocated by <a href="API-CXX.html#unpack">unpack()</a>
|
||||
call and freed upon calling <a href="API-CXX.html#recycle">recycle()</a>.</p>
|
||||
<p><a name="memimage"></a></p>
|
||||
<h4>Memory for the Postprocessed Image</h4>
|
||||
<p>On postprocessing stage each pixel contains four 16-bit values, one for
|
||||
each possible color channel (some sensors are actually 4-color).</p>
|
||||
<p>The buffer for the decoded image is allocated upon calling <a href="API-CXX.html#raw2image">raw2image()</a>
|
||||
or <a href="API-CXX.html#dcraw_process">dcraw_process()</a></p>
|
||||
<p>The buffer freed upon calling <a href="API-CXX.html#recycle">recycle()</a>
|
||||
or <a href="API-CXX.html#free_image">free_image()</a> calls.</p>
|
||||
<p><a name="memthumb"></a></p>
|
||||
<h4>Memory for the Decoded Thumbnail</h4>
|
||||
<p>Memory for the thumbmail is allocated upon calling <a href="API-CXX.html#unpack_thumb">unpack_thumb()</a>
|
||||
and freed upon calling <a href="API-CXX.html#recycle">recycle()</a>. The
|
||||
size of the allocated buffer is precisely adjusted to the thumbnail size,
|
||||
i.e., up to several Mb.</p>
|
||||
<p><a name="memprofile"></a></p>
|
||||
<p><a name="memraw"></a></p>
|
||||
<h4>Memory for RAW Unpacking</h4>
|
||||
<p>Memory for temporary buffer needed during RAW data unpacking may be
|
||||
allocated during the work of <a href="API-CXX.html#unpack">unpack()</a>
|
||||
and freed before completion of this function. The sizes of the allocated
|
||||
buffers are small, up to tens of Kb.</p>
|
||||
<p><a name="mempostproces"></a></p>
|
||||
<h4>Memory for Postprocessing</h4>
|
||||
<p>During image postprocessing (inherited from dcraw), memory for the
|
||||
histogram (128 Kb) is allocated. This memory is allocated upon calling <a
|
||||
|
||||
href="API-CXX.html#dcraw_process">dcraw_process()</a> and freed upon
|
||||
calling <a href="API-CXX.html#recycle">recycle()</a>.</p>
|
||||
<p>In addition, during the work of <a href="API-CXX.html#dcraw_process">dcraw_process()</a>
|
||||
and during the usage of some available possibilities, like</p>
|
||||
<ul>
|
||||
<li>rotation of images from FUJI cameras;</li>
|
||||
<li>correction of chromatic aberrations;</li>
|
||||
<li>image size changes (including correction of non-square pixels);</li>
|
||||
<li>highlight recovery;</li>
|
||||
</ul>
|
||||
<p>a temporary buffer with the size equal to the size of the resultant image
|
||||
(6-8 bytes per pixel for various processing stages) will be allocated. As
|
||||
soon as the intermediate substage of processing is completed, the buffer
|
||||
with the previous copy of the image will be freed.<br>
|
||||
If postprocessing is not used, then temporary buffers are not allocated.</p>
|
||||
<p><a name="memwrite"></a></p>
|
||||
<h4>Memory for File Writing</h4>
|
||||
<p>Upon calling <a href="API-CXX.html#dcraw_ppm_tiff_writer">dcraw_ppm_tiff_writer()</a>,
|
||||
memory for a single row of the output image is allocated. The allocated
|
||||
memory is freed before the end of this call.</p>
|
||||
<p><a name="memunpack"></a></p>
|
||||
<h4>Unpacking into memory buffer</h4>
|
||||
<p>Functions <a href="API-CXX.html#dcraw_make_mem_image">dcraw_make_mem_image()</a>
|
||||
<a href="API-CXX.html#dcraw_make_mem_thumb">dcraw_make_mem_thumb()</a>
|
||||
(and complementary calls in C-API) allocates memory for entire output
|
||||
datasets (full RGB bitmap and thumbnail, respectively).To free allocated
|
||||
memory use <a href="API-CXX.html#dcraw_clear_mem">dcraw_clear_mem()</a>
|
||||
function.</p>
|
||||
<p><a name="incompat"></a></p>
|
||||
<h2>Incompatibilities with dcraw</h2>
|
||||
<p><a name="incompat_max"></a></p>
|
||||
<h3>Automatic maximum search/brightness adjustment</h3>
|
||||
<p>Many camera formats really use less data range, than possible by format
|
||||
nature (bit count). If data maximum estimated incorrectly (too low) this
|
||||
may resuls in colored highlights ('pink clouds') because of data cut at
|
||||
wrong level.</p>
|
||||
<p>To prevent this, LibRaw uses real data maximum from current file if this
|
||||
maximum is larger than format maximum multiplied by
|
||||
imdata.params.adjust_maximum_thr value (default is 0.75).</p>
|
||||
<p>To turn off this feature (and repeat dcraw.c pink clouds) set
|
||||
imdata.params.adjust_maximum_thr to 0.0</p>
|
||||
<p><a name="incompat_kodak"></a></p>
|
||||
<h3>Processing of Thumbnails from Kodak cameras</h3>
|
||||
<p>In some Kodak cameras, the preview (thumbnail) is stored in the form of
|
||||
uncorrected image. During its extraction using <strong>dcraw -e</strong>,
|
||||
the white balance, color conversion, and other settings are the same as
|
||||
those used for extraction of the main RAW data (including defect removal
|
||||
and dark frame subtraction, which is erroneous, since the image size is
|
||||
different). <br>
|
||||
In LibRaw::unpack_thumb() calls, the white balance taken from the camera
|
||||
("as shot") is used and no settings from imgdata.params are considered.</p>
|
||||
<p>For all other cameras, thumbnails are extracted "as is," without any
|
||||
color conversions, both in dcraw and in LibRaw.</p>
|
||||
<p><a href="index.html">[back to Index]</a></p>
|
||||
</body>
|
66
rtengine/libraw/doc/API-overview.html
Normal file
66
rtengine/libraw/doc/API-overview.html
Normal file
@@ -0,0 +1,66 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>Overview of LibRaw API (C++)</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<a href=index.html>[back to Index]</a>
|
||||
<h1>Overview of LibRaw API (C++)</h1>
|
||||
<h2>General Remarks</h2>
|
||||
<ol>
|
||||
<li>The entire processing is carried out by an instance of the LibRaw class, which is an image processor.</li>
|
||||
<li>One image processor can simultaneously process only one data source file, but consecutive processing of any number of files
|
||||
is possible.</li>
|
||||
<li>There may be several simultaneously working image processors in a software program (e.g., in different threads), although one
|
||||
should remember that each image processor may require much memory.</li>
|
||||
<li>Reading of source data from the RAW file requires virtually no customization (see <a
|
||||
href="API-notes.html">API Notes</a> for exceptions to this rule).</li>
|
||||
<li>All data extracted from the RAW file are accessible through data fields of the image processor (LibRaw class instance).</li>
|
||||
<li>Although LibRaw <b>is not intended for RAW data postprocessing</b>, the library includes calls that enable complete
|
||||
emulation of the <b>dcraw</b> utility.
|
||||
<li>All customization for the processing is performed via data fields of the LibRaw class.</li>
|
||||
</ol>
|
||||
|
||||
<h2>Brief Demonstration</h2>
|
||||
<p>
|
||||
The example below contains no error processing for the sake of brevity.
|
||||
</p>
|
||||
<pre>
|
||||
#include "libraw/libraw.h"
|
||||
int process_image(char *file)
|
||||
{
|
||||
// Let us create an image processor
|
||||
LibRaw iProcessor;
|
||||
|
||||
// Open the file and read the metadata
|
||||
iProcessor.open_file(file);
|
||||
|
||||
// The metadata are accessible through <a href="API-datastruct.html">data fields of the class</a>
|
||||
printf("Image size: %d x %d\n",iProcessor.imgdata.sizes.width,iProcessor.imgdata.sizes.height);
|
||||
|
||||
// Let us unpack the image
|
||||
iProcessor.unpack();
|
||||
|
||||
// Convert from imgdata.rawdata to imgdata.image:
|
||||
iProcessor.raw2image();
|
||||
|
||||
// And let us print its dump; the data are accessible through <a href="API-datastruct.html">data fields of the class</a>
|
||||
for(i = 0;i lt; iProcessor.imgdata.sizes.iwidth * iProcessor.imgdata.sizes.iheight; i++)
|
||||
printf("i=%d R=%d G=%d B=%d G2=%d\n",
|
||||
i,
|
||||
iProcessor.imgdata.image[i][0],
|
||||
iProcessor.imgdata.image[i][1],
|
||||
iProcessor.imgdata.image[i][2],
|
||||
iProcessor.imgdata.image[i][3]
|
||||
);
|
||||
|
||||
// Finally, let us free the image processor for work with the next image
|
||||
iProcessor.recycle();
|
||||
}
|
||||
</pre>
|
||||
|
||||
|
||||
<a href=index.html>[back to Index]</a>
|
||||
</body>
|
||||
</html>
|
124
rtengine/libraw/doc/Install-LibRaw.html
Normal file
124
rtengine/libraw/doc/Install-LibRaw.html
Normal file
@@ -0,0 +1,124 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
<title>LibRaw Compilation and Installation</title>
|
||||
</head>
|
||||
<body> <a href="index.html">[back to Index]</a>
|
||||
<h1>LibRaw Compilation and Installation</h1>
|
||||
<p>LibRaw is distributed in the form of source codes. For further use, they
|
||||
should be compiled (and, if desired, placed into system folders with
|
||||
libraries and include-files).</p>
|
||||
<a name="unix"></a>
|
||||
<h2>Unix Systems (FreeBSD, Linux, Mac OS X)</h2>
|
||||
<p> To build the library, you will need a working C++ compiler (gcc 3+ and
|
||||
clang 2+ are OK) and the make utility. </p>
|
||||
<p>Additional libraries (optional):</p>
|
||||
<ul>
|
||||
<li>zlib (used to decode deflated DNGs)</li>
|
||||
<li>libjasper (used to decode RED files)</li>
|
||||
<li>libjpeg8 (used to decode lossy DNGs and several old Kodak cameras)</li>
|
||||
</ul>
|
||||
<p> LibRaw has been tested on 32- and 64-bit Unix systems working on x86-
|
||||
(and AMD64-) compatible processors. Building and work on other
|
||||
architectures have not been tested. </p>
|
||||
<h3>Compilation of Library and Examples</h3>
|
||||
<p> Unpack the downloaded distribution package.</p>
|
||||
<pre> tar xzvf LibRaw-X.YY.tar.gz
|
||||
</pre>
|
||||
<p>For GitHub downloads (clones), perform ./configure script generation via</p>
|
||||
<pre> autoreconf --install</pre>
|
||||
<p>Go to LibRaw directory and run <b>./configure</b> and <b>make</b>: </p>
|
||||
<pre>cd LibRaw-X.YY
|
||||
./configure # with optional args
|
||||
make
|
||||
</pre>
|
||||
<p>As a result, you will compile</p>
|
||||
<ul>
|
||||
<li>Library libraw.a in the lib/ folder</li>
|
||||
<li><a href="Samples-LibRaw.html">Examples</a> in the bin/ folder (source
|
||||
codes of examples are in the samples/ folder).</li>
|
||||
</ul>
|
||||
<p>In the current version, only static libraries are built:</p>
|
||||
<ul>
|
||||
<li>libraw.a: non-thread-safe version</li>
|
||||
<li>libraw_r.a: thread-safe</li>
|
||||
</ul>
|
||||
<h3>Build parameters</h3>
|
||||
<p> ./configure script have some non-standard parameters: </p>
|
||||
<dl>
|
||||
<dt> --enable-openmp<br>
|
||||
--disable-openmp </dt>
|
||||
<dd> Enable/disable OpenMP support if compiler supports it. OpenMP is
|
||||
enabled by default. </dd>
|
||||
<dt> --enable-lcms<br>
|
||||
--disable-lcms </dt>
|
||||
<dd> Enable/disable LCMS color engine support. If enabled, ./configure
|
||||
will try to find lcms library. Both LCMS-1.x and LCMS-2.x are supported
|
||||
LCMS support is enabled by default </dd>
|
||||
<dt> --enable-examples<br>
|
||||
--disable-examples </dt>
|
||||
<dd> Enables/disables examples compilation and installation. Enabled by
|
||||
default </dd>
|
||||
</dl>
|
||||
<h3>Installation and Usage</h3>
|
||||
<p>To install the library, run</p>
|
||||
<pre> sudo make install
|
||||
</pre>
|
||||
<p> It will place the libraries in <b>/usr/local/lib</b>, the include-files
|
||||
in <b>/usr/local/include</b> (subfolder of libraw) and LibRaw samples to
|
||||
<b>/usr/local/bin</b>. You can override installation path by using
|
||||
./configure script. <br>
|
||||
To use LibRaw, add the following parameters to the compiler call (when
|
||||
building your own projects): </p>
|
||||
<ul>
|
||||
<li>Path to include-files: -I/usr/local/include</li>
|
||||
<li>Path to libraries: -L/usr/local/lib</li>
|
||||
<li>Library: -lraw (ordinary version) or -lraw_r (thread-safe version).</li>
|
||||
</ul>
|
||||
<h2>Windows: Building under Cygwin</h2>
|
||||
<p> Building and installation are completely similar to <a href="#unix">building
|
||||
and installation under Unix systems</a>. </p>
|
||||
<h2>Windows: Native Building</h2>
|
||||
<p> Building under Windows has three steps: </p>
|
||||
<ul>
|
||||
<li>Unpack the distribution package (if you have got no tar+gzip, take the
|
||||
LibRaw distribution package in the .ZIP format) and go to folder
|
||||
LibRaw-X.YYY. </li>
|
||||
<li>Set the environment parameters so that the compiler/linker would find
|
||||
the libraries and include-files. For Visual C++, this is done by running
|
||||
<b>vcvars32.bat</b>. </li>
|
||||
<li> Run<br>
|
||||
<b>nmake -f Makefile.msvc</b><br>
|
||||
</li>
|
||||
</ul>
|
||||
<p>You may need to edit Makefile.msvc to provide libjpeg/zlib/libjasper
|
||||
paths to INCLUDE/LIB.</p>
|
||||
<p> If all paths are set correctly and the include-files/libraries have been
|
||||
found, then the following will be compiled:</p>
|
||||
<ul>
|
||||
<li>Library libraw_static.lib in folder lib</li>
|
||||
<li>Dynamic library bin/libraw.dll and linking library for it
|
||||
lib/libraw.lib</li>
|
||||
<li>Examples in folder bin/.</li>
|
||||
</ul>
|
||||
<p>Only the thread-safe library is built under Win32, but it can be used
|
||||
with non-threaded applications as well. All examples are linked with the
|
||||
dynamic library (DLL); if static linking is necessary, one should link
|
||||
applications with library libraw_static.lib and set the preprocessor
|
||||
option /DLIBRAW_NODLL during compilation. </p>
|
||||
<p> Windows-version compiles without LCMS support for now. </p>
|
||||
<p> During building of DLL, all public functions are exported; further, the
|
||||
exported subset may be reduced. </p>
|
||||
<p> Unfortunately, paths to include/ libraries depend on the way Visual C
|
||||
(or other compiler) is installed; therefore, it is impossible to specify
|
||||
some standard paths in Makefile.msvc. </p>
|
||||
<h2>Windows Installation</h2>
|
||||
<p> No installation under Windows is supported. It is assumed that all DLLs
|
||||
will be supplied together with the software using them (and this software
|
||||
will perform the installation). Accordingly, in building of programs using
|
||||
LibRaw, the paths to libraries, DLLs, and include-files should be
|
||||
specified manually. </p>
|
||||
<a href="index.html">[back to Index]</a>
|
||||
</body>
|
||||
</html>
|
213
rtengine/libraw/doc/Samples-LibRaw.html
Normal file
213
rtengine/libraw/doc/Samples-LibRaw.html
Normal file
@@ -0,0 +1,213 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body>
|
||||
<p>LibRaw: Usage Examples<a href="index.html">[back to Index]</a></p>
|
||||
<h1>LibRaw: Usage Examples</h1>
|
||||
<h2>Overview of Examples in the Distribution Package (samples/*)</h2>
|
||||
<p>The LibRaw package contains several examples illustrating the use of this
|
||||
library. Their source codes are located in the samples/ folder, and after
|
||||
library build they will be in the bin/ folder:</p>
|
||||
<ul>
|
||||
<li><strong>raw-identify</strong> The only LibRaw call it uses is <a href="API-CXX.html#open_file">open_file()</a>;
|
||||
further code prints the values of the fields of the imgdata structure. <strong><br>
|
||||
</strong><strong>raw-identify -v</strong> provides extensive dump of
|
||||
metadata/<br>
|
||||
Command line key <strong>-u</strong> shows unpacking function name,
|
||||
while <strong>-u -f</strong> prints function name and masked are sizes.<br>
|
||||
<strong>raw-identify -w </strong>will print white balance tables stored
|
||||
in RAW file.</li>
|
||||
<li><strong>simple_dcraw</strong> A simple "emulation" of dcraw
|
||||
reproducing the behavior of <strong>dcraw [-e] [-v] [-T]</strong>.
|
||||
A simplified version of this example is <a href="#code">considered
|
||||
below</a>. <br>
|
||||
<strong>-B</strong> command-line switch turns on use of <a href="API-CXX.html#open_buffer">open_buffer()
|
||||
API call</a> used via mmap() of input file (Unix only).</li>
|
||||
<li><strong>dcraw_half</strong> Demonstrates the use of <a href="API-C.html">C
|
||||
API</a>. The example emulates the behavior of <strong>dcraw -h</strong>
|
||||
(no other control parameters can be specified in this example). </li>
|
||||
<li><strong>dcraw_emu</strong> Almost complete emulation of dcraw (except for
|
||||
keys -D -d -E -i -v -e, which are considered in other usage examples).
|
||||
Of most interest is processing of command line keys (copied from dcraw).
|
||||
<br>
|
||||
<p>This sample supports additional command-line parameters absent in
|
||||
original dcraw:</p>
|
||||
<dl>
|
||||
<dt><strong>-mmap</strong></dt>
|
||||
<dd>Use <a href="API-CXX.html#open_buffer">open_buffer()</a>
|
||||
interface. Buffer prepared by mmap() call. This option not supported
|
||||
under Win32.</dd>
|
||||
<dt><strong>-meme</strong></dt>
|
||||
<dd>Use <a href="API-CXX.html#open_buffer">open_buffer()</a>
|
||||
interface. Buffer prepared by malloc()+read() calls.</dd>
|
||||
<dt><strong>-c float-value</strong></dt>
|
||||
<dd>This key sets <strong>params.adjust_maximum_thr</strong>
|
||||
parameter.<br>
|
||||
Use -c 0 to completely disable automatic maximum calculation. <br>
|
||||
Default value: 0.75</dd>
|
||||
<dt><strong>-timing</strong></dt>
|
||||
<dd>Turns on detailed timing print.</dd>
|
||||
<dt><strong>-G</strong></dt>
|
||||
<dd>Turns on "green_matching" mode to suppress color mazes on cameras
|
||||
with different green channels.</dd>
|
||||
<dt><strong>-B x y w h</strong></dt>
|
||||
<dd>Crops output to rectangle with width w, height h and x,y
|
||||
coordinates of left upper corner. All coordinates applied before any
|
||||
image rotation.</dd>
|
||||
<dt><strong>-F</strong></dt>
|
||||
<dd>Will use FILE I/O (bigfile_datastream) instead on standard
|
||||
LibRaw_file_datastream.</dd>
|
||||
<dt><strong>-dcbi N</strong></dt>
|
||||
<dd>Sets number of additional DCB-demosaic iterations (option valid
|
||||
only for -q 4, i.e. for DCB demosaic).</dd>
|
||||
<dt><strong>-dcbe</strong></dt>
|
||||
<dd>Turns on DCB color enhance mode (only for DCB demosaic, -q 4).</dd>
|
||||
<dt><strong>-aexpo e p</strong></dt>
|
||||
<dd>Turns on exposure correction. e is exposure shift in linear scale
|
||||
from 0.25 (darken 2 stops) to 8.0 (lighten 3 stops). p is highlights
|
||||
preservation amount from 0.0 (no preservation, full clipping) to 1.0
|
||||
(full preservation, S-like curve in highlights).</dd>
|
||||
<dt><strong>-apentax4shot</strong></dt>
|
||||
<dd>Will merge 4 frames from Pentax 4-shot RAWs</dd>
|
||||
<dt><strong>-apentax4shotorder abce</strong></dt>
|
||||
<dd>Order of frames in pentax 4-shot files (default is 3102)</dd>
|
||||
<dt><strong>-mmap</strong></dt>
|
||||
<dd>Use mmap + memory IO instead of file IO (unix only)</dd>
|
||||
<dt><strong>-disars</strong></dt>
|
||||
<dd>Disable RawSpeed library (if compiled with this library)</dd>
|
||||
<dt><strong>-doutputflags N</strong></dt>
|
||||
<dd>set imgdata.params.output_flags to N</dd>
|
||||
<dt><strong>-disinterp</strong></dt>
|
||||
<dd>Do not run interpolation step</dd>
|
||||
<dt><strong>-dsrawrgb1</strong></dt>
|
||||
<dd>Disable YCbCr to RGB conversion for sRAW (Cb/Cr interpolation
|
||||
enabled)</dd>
|
||||
<dt><strong>-dsrawrgb2</strong></dt>
|
||||
<dd>Disable YCbCr to RGB conversion for sRAW (Cb/Cr interpolation
|
||||
disabled)</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<li><strong>half_mt</strong> Emulation of <strong>dcraw -h</strong>. It
|
||||
"understands" the following keys: -a (automatic white balance over the
|
||||
entire image), -w (white balance of the camera), -T (output in the tiff
|
||||
format), and -J n (number of parallel threads launched for image
|
||||
processing).<br>
|
||||
On multiprocessor/multicore computers, the speed gain is notable in the
|
||||
case of mass processing. On a Win32 machine, the example is assembled
|
||||
from the initial file half_mt_win32.c, since work with threads under
|
||||
Windows is fundamentally different and it it easier to copy simple
|
||||
source codes than write one complex code.</li>
|
||||
<li><strong>mem_image</strong> This sample uses <a href="API-CXX.html#dcraw_make_mem_image">dcraw_make_mem_image</a>
|
||||
and <a href="API-CXX.html#dcraw_make_mem_thumb">dcraw_make_mem_thumb</a>
|
||||
calls, than writes data in PPM format. </li>
|
||||
<li><strong>unprocessed_raw</strong> This sample extracts (mostly)
|
||||
unaltered RAW data including masked pixels data (on supported cameras).
|
||||
If black frame exists and black frame extraction is supported for given
|
||||
format, masked pixels data is added to resulting .TIFF file. Command
|
||||
line options: <strong>-q</strong> - be quiet, <strong>-A</strong> -
|
||||
autoscale data (integer multiplier), <strong>-g</strong>
|
||||
gamma-correction (gamma 2.2) for data (instead of precise linear one), <strong>-B</strong>
|
||||
turns on black level subtraction</li>
|
||||
<li><strong>4channnels</strong> - splits RAW-file into four separate
|
||||
16-bit grayscale TIFFs (per RAW channel).<br>
|
||||
Command line switches:
|
||||
<ul>
|
||||
<li><strong>-s N</strong> selects N-th image from RAW with multiple
|
||||
images</li>
|
||||
<li><strong>-g</strong> gamma correction (gamma 2.2)</li>
|
||||
<li><strong>-A</strong> values autoscale by auto-calculated integer
|
||||
factor</li>
|
||||
<li><strong>-B</strong> turn off black subtraction</li>
|
||||
<li><strong>-N</strong> no RAW curve</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li><strong>multirender_test</strong> - very simple example of multiple
|
||||
rendering on one file without reopen.</li>
|
||||
<li><strong>postprocessing_benchmark</strong> - will print timings of RAW
|
||||
processing steps</li>
|
||||
</ul>
|
||||
<h2>Example of docmode</h2>
|
||||
<p>Below we consider the samples/simple_dcraw.cpp example, which emulates
|
||||
the behavior of <strong>dcraw [-e][-v][-t]</strong>. To save space, let
|
||||
us assume that keys -t -v are always specified (to avoid comments on
|
||||
command line parsing) and there is always one parameter (name of file),
|
||||
which is the only one and always passed to the program.</p>
|
||||
<pre>int main(int ac, char *av[])
|
||||
{
|
||||
int i, ret, verbose=0, output_thumbs=0;
|
||||
char outfn[1024],thumbfn[1024];
|
||||
// Creation of image processing object
|
||||
LibRaw RawProcessor;
|
||||
// The date in TIFF is written in the local format; let us specify the timezone for compatibility with dcraw
|
||||
putenv ((char*)"TZ=UTC");
|
||||
// Let us define variables for convenient access to fields of RawProcessor
|
||||
#define P1 RawProcessor.imgdata.idata
|
||||
#define S RawProcessor.imgdata.sizes
|
||||
#define C RawProcessor.imgdata.color
|
||||
#define T RawProcessor.imgdata.thumbnail
|
||||
#define P2 RawProcessor.imgdata.other
|
||||
#define OUT RawProcessor.imgdata.params
|
||||
OUT.output_tiff = 1; // Let us output TIFF
|
||||
// Let us open the file
|
||||
if( (ret = RawProcessor.open_file(av[1])) != LIBRAW_SUCCESS)
|
||||
{
|
||||
fprintf(stderr,"Cannot open %s: %s\n",av[i],libraw_strerror(ret));
|
||||
// recycle() is needed only if we want to free the resources right now.
|
||||
// If we process files in a cycle, the next open_file()
|
||||
// will also call recycle(). If a fatal error has happened, it means that recycle()
|
||||
// has already been called (repeated call will not cause any harm either).
|
||||
RawProcessor.recycle();
|
||||
goto end;
|
||||
}
|
||||
// Let us unpack the image
|
||||
if( (ret = RawProcessor.unpack() ) != LIBRAW_SUCCESS)
|
||||
{
|
||||
fprintf(stderr,"Cannot unpack_thumb %s: %s\n",av[i],libraw_strerror(ret));
|
||||
if(LIBRAW_FATAL_ERROR(ret))
|
||||
goto end;
|
||||
// if there has been a non-fatal error, we will try to continue
|
||||
}
|
||||
// Let us unpack the thumbnail
|
||||
if( (ret = RawProcessor.unpack_thumb() ) != LIBRAW_SUCCESS)
|
||||
{
|
||||
// error processing is completely similar to the previous case
|
||||
fprintf(stderr,"Cannot unpack_thumb %s: %s\n",av[i],libraw_strerror(ret));
|
||||
if(LIBRAW_FATAL_ERROR(ret))
|
||||
goto end;
|
||||
}
|
||||
else // We have successfully unpacked the thumbnail, now let us write it to a file
|
||||
{
|
||||
snprintf(thumbfn,sizeof(thumbfn),"%s.%s",av[i],T.tformat == LIBRAW_THUMBNAIL_JPEG ? "thumb.jpg" : "thumb.ppm");
|
||||
if( LIBRAW_SUCCESS != (ret = RawProcessor.dcraw_thumb_writer(thumbfn)))
|
||||
{
|
||||
fprintf(stderr,"Cannot write %s: %s\n",thumbfn,libraw_strerror(ret));
|
||||
// in the case of fatal error, we should terminate processing of the current file
|
||||
if(LIBRAW_FATAL_ERROR(ret))
|
||||
goto end;
|
||||
}
|
||||
}
|
||||
// Data unpacking
|
||||
ret = RawProcessor.dcraw_process();
|
||||
if(LIBRAW_SUCCESS != ret ) // error at the previous step
|
||||
{
|
||||
fprintf(stderr,"Cannot do postprocessing on %s: %s\n",av[i],libraw_strerror(ret));
|
||||
if(LIBRAW_FATAL_ERROR(ret))
|
||||
goto end;
|
||||
}
|
||||
else // Successful document processing
|
||||
{
|
||||
snprintf(outfn,sizeof(outfn),"%s.%s", av[i], "tiff");
|
||||
if( LIBRAW_SUCCESS != (ret = RawProcessor.dcraw_ppm_tiff_writer(outfn)))
|
||||
fprintf(stderr,"Cannot write %s: error %d\n",outfn,ret);
|
||||
}
|
||||
// we don't evoke recycle() or call the destructor; C++ will do everything for us
|
||||
return 0;
|
||||
end:
|
||||
// got here after an error
|
||||
return 1;
|
||||
}
|
||||
</pre>
|
||||
<p><a href="index.html">[back to Index]</a></p>
|
||||
</body>
|
||||
</html>
|
65
rtengine/libraw/doc/Why-LibRaw.html
Normal file
65
rtengine/libraw/doc/Why-LibRaw.html
Normal file
@@ -0,0 +1,65 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
</head>
|
||||
<body>
|
||||
<p>Purpose and Objectives<a href="index.html">[back to Index]</a></p>
|
||||
<h1>LibRaw Project Goals and Objectives</h1>
|
||||
<h2>Who May Be Interested in This Project</h2>
|
||||
<p>The proposed project and the software products generated within this project are intended for:</p>
|
||||
<ul>
|
||||
<li>Developers of RAW converters, including current and new developments</li>
|
||||
<li>Developers of applications that need access to decoded RAW data (for pre-processing, stitching, stacking, color profiling, etc.)</li>
|
||||
<li>Those willing to write their own graphic interface for RAW file processing</li>
|
||||
<li>Developers and enthusiasts creating their own primary and auxiliary data processing algorithms, including
|
||||
<ul>
|
||||
<li>Interpolation (demosaic),</li>
|
||||
<li>Noise reduction</li>
|
||||
<li>White balance</li>
|
||||
<li>Correction of aberrations and distortions</li>
|
||||
<li>RAW data analysis</li>
|
||||
<li>Comparison of cameras and lenses</li>
|
||||
<li>and so on...</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<h2>Some History</h2>
|
||||
<p>The LibRaw project started in 2008. At that time <a href="https://www.cybercom.net/%7Edcoffin/dcraw/">dcraw</a> was very popular as a method of accessing RAW data. It was hard to find a more or less popular camera that was not supported by this utility; while the implementation of RAW data extraction in <strong>dcraw</strong> was of a very high quality.</p>
|
||||
<p>However, developers and enthusiasts were experiencing a number of difficulties when using <strong>dcraw</strong>. First, the author of <strong>dcraw</strong> refused to turn his product into a handy library. Besides, <strong>dcraw</strong> contains a number of questionable features that may hinder its use without modifications, as well as instances of distortions in the photographic sense of it. As a result, once every several months, with each new release of <strong>dcraw</strong>, virtually all developers, part of them listed on the <a
|
||||
|
||||
href="https://www.cybercom.net/%7Edcoffin/dcraw/">dcraw Web site</a>, were to check the differences, figure out the patches, and apply those patches to their dcraw-based code and libraries.</p>
|
||||
<p>As for enthusiasts, the "entry cost" of verifying their own ideas and implementing their own algorithms in such an environment is often unreasonably high: they have to either use the dcraw command line, thus being forced to use the unavoidable early processing stages, or understand the source code and maintain their own library based on it.</p>
|
||||
<p>Thus, the inconveniences of <strong>dcraw</strong> make the developers' community quite small and halt further evolution and improvement of RAW format converters.</p>
|
||||
<p>Our project started with the idea to <em>get a library based on dcraw, only better</em>. Today we are well past that initial goal, not in the least because <strong>dcraw</strong> is not actively supported since 2015, and the latest release was published nearly 2 years ago, in May 2016. Since then several distinctly different RAW formats (introduced by Fujifilm, Nikon, Pentax, Samsung, Sigma, Sony) emerged, none of which is supported by <strong>dcraw</strong>. Additionally, we see it necessary to extract more metadata to help better interpretation of RAW data and to add flexibility to the RAW conversion process.</p>
|
||||
<h2>Goals and Objectives</h2>
|
||||
<p>We are maintaining LibRaw as a library providing access to decoded raw data and metadata useful for correct interpretation of the said data. Thus:</p>
|
||||
<ol>
|
||||
<li>To keep on adding RAW decoding for new and previously unsupported cameras</li>
|
||||
<li>To continue the development of a stable and consistent API suitable for other applications (RAW converters, data analyzers, panorama stitchers, etc.)</li>
|
||||
<li>To have RAW processing as separate independent parts (groups of API calls)
|
||||
<ul>
|
||||
<li>Reading, decoding, and unpacking of RAW data: <em><strong>this is the main functionality of LibRaw</strong></em></li>
|
||||
<li>Data conversions: interpolation, white balance, etc.: <em><strong>this part of LibRaw is frozen: we ported dcraw functionality, but expect that library users will create own postprocessing code.</strong></em></li>
|
||||
<li>File output of the processing results. <em><strong>This part is very primitive, only tiff and ppm output is supported.</strong></em></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ol>
|
||||
<p style="margin-left:.5in;">The latter two groups of functions are maintained to provide some postprocessing/saving ability from scratch, without writing own code. We do not have any plans to extend/improve this code.</p>
|
||||
<ol>
|
||||
<li value="4">To improve the procedures of RAW data retrieval and decoding.</li>
|
||||
<li>To supply other developers with a "framework" (freeware and open-source), e.g., for experimenting with their own methods of RAW data processing (interpolation, noise reduction, white balance, etc.; some directions of the possible efforts are <a>listed above</a>), so that they could create their own GUI programs and interfaces without developing the entire RAW converter.</li>
|
||||
</ol>
|
||||
<h2>LibRaw Release Schedule</h2>
|
||||
<ol>
|
||||
<li><strong>Production releases</strong> will be published at intervals of 1-1.5 years. Production releases will be maintained through bugfixes. New cameras will not be added to production releases, but only to snapshots and non-stable/beta releases.<em> Patch </em>(bugfix) releases of production releases should provide API/ABI consistency (so, version 0.21.5 should be binary compatible with 0.21.0).</li>
|
||||
<li><strong>Snapshots</strong> are planned to be released every 2-3 quarters. Snapshots will include support for new cameras, stable and tested in our own applications. API calls and internal routines may be changed. No binary compatibility maintained, to upgrade to newer snapshot one need to recompile application that uses it.</li>
|
||||
<li><strong>Non-stable/beta releases</strong> with new features, like initial support for some new RAW format that needs extensive testing by the community. No exact schedule, to be published as needed.</li>
|
||||
</ol>
|
||||
<h2>How You Can Help/Participate</h2>
|
||||
<p><strong>We welcome any help</strong>, however:</p>
|
||||
<ol>
|
||||
<li>If you are submitting any core functionality extensions/improvements, that is, something that has to do with the decoding of RAW and/or metadata, that would be highly valuable and we will maintain your submission on our own, if necessary; you don<6F>t need to be committed.</li>
|
||||
<li>If your contribution adds to post-processing, please be committed to supporting and maintaining such a contribution. Our previous experience with such contributions has been less than positive, exactly because of the lack of maintenance on the part of the contributors. We are unable to maintain such contributions on our own, because our primary goal is to maintain RAW and metadata decoding.</li>
|
||||
</ol>
|
||||
<p><a href="index.html">[back to Index]</a></p>
|
||||
</body>
|
38
rtengine/libraw/doc/index.html
Normal file
38
rtengine/libraw/doc/index.html
Normal file
@@ -0,0 +1,38 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
||||
<title>LibRaw: better dcraw (library)</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>LibRaw: RAW image decoding/processing library</h1>
|
||||
<p>LibRaw is a library for reading RAW files from digital photo cameras (CRW/CR2, NEF, RAF, DNG, MOS, KDC, DCR, etc.; virtually all RAW formats are supported). It pays special attention to correct retrieval of data required for subsequent RAW conversion.</p>
|
||||
<p>The library is intended for embedding in RAW converters, data analyzers, and other programs using RAW files as the initial data.</p>
|
||||
<p> Contents </p>
|
||||
<ol>
|
||||
<li><a href="#copyright">Copyright</a></li>
|
||||
<li><a href="Why-LibRaw.html">Purpose and Objectives</a></li>
|
||||
<li><a href="API-overview.html">Overview of LibRaw API (C++)</a></li>
|
||||
<li><a href="Install-LibRaw.html">Compilation and Installation</a></li>
|
||||
<li><a href="API-datastruct.html">Data Structures, Error Codes, and Constants</a> </li>
|
||||
<li><a href="API-CXX.html">C++ API</a> </li>
|
||||
<li><a href="API-C.html">C API</a></li>
|
||||
<li><a href="API-notes.html">Notes on API (error code conventions, memory usage)</a></li>
|
||||
<li><a href="Samples-LibRaw.html">Examples</a> </li>
|
||||
</ol>
|
||||
<a name="copyright"></a>
|
||||
<h2>Copyright</h2>
|
||||
<p> LibRaw library, Copyright (C) 2008-2021 LibRaw LLC (info@libraw.org)<br>
|
||||
The library includes source code from<br>
|
||||
<i>dcraw.c, Dave Coffin's raw photo decoder<br>
|
||||
Copyright 1997-2016 by Dave Coffin, dcoffin a cybercom o net<br>
|
||||
</i> </p>
|
||||
<p> LibRaw is distributed for free under two different licenses: </p>
|
||||
<ul>
|
||||
<li><a href="http://www.gnu.org/licenses/lgpl-2.1.html">GNU Lesser General Public License, version 2.1</a></li>
|
||||
<li><a href="http://www.opensource.org/licenses/cddl1.txt">COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0</a></li>
|
||||
</ul>
|
||||
You may use one of these licensing modes and switch between them.
|
||||
<p></p>
|
||||
</body>
|
||||
</html>
|
28
rtengine/libraw/export-dist.sh
Executable file
28
rtengine/libraw/export-dist.sh
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/bin/sh
|
||||
|
||||
DEST=$1
|
||||
VERSION=$2
|
||||
if test x$VERSION = x ; then
|
||||
VERSION=`./version.sh`
|
||||
echo VERSION set to $VERSION
|
||||
fi
|
||||
|
||||
if test -d $DEST ; then
|
||||
echo Using $DEST/$VERSION
|
||||
else
|
||||
echo Usage: $0 destination-dir
|
||||
exit 1
|
||||
fi
|
||||
cd ..
|
||||
for dir in LibRaw
|
||||
do
|
||||
cd $dir
|
||||
git pull origin
|
||||
cd ..
|
||||
done
|
||||
for dir in LibRaw
|
||||
do
|
||||
cd $dir
|
||||
git archive --prefix=$dir-$VERSION/ $VERSION | (cd $DEST; tar xvf - )
|
||||
cd ..
|
||||
done
|
66
rtengine/libraw/internal/dcraw_defs.h
Normal file
66
rtengine/libraw/internal/dcraw_defs.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/* -*- C++ -*-
|
||||
* Copyright 2019-2021 LibRaw LLC (info@libraw.org)
|
||||
*
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
*/
|
||||
|
||||
#ifndef DCRAW_DEFS_H
|
||||
#define DCRAW_DEFS_H
|
||||
|
||||
#include <math.h>
|
||||
#define LIBRAW_LIBRARY_BUILD
|
||||
#define LIBRAW_IO_REDEFINED
|
||||
#include "libraw/libraw.h"
|
||||
#include "libraw/libraw_types.h"
|
||||
#include "internal/defines.h"
|
||||
#include "internal/var_defines.h"
|
||||
|
||||
#define stmread(buf, maxlen, fp) stread(buf, MIN(maxlen, sizeof(buf)), fp)
|
||||
#define strbuflen(buf) strnlen(buf, sizeof(buf) - 1)
|
||||
#define makeIs(idx) (maker_index == idx)
|
||||
#define strnXcat(buf, string) \
|
||||
strncat(buf, string, LIM(sizeof(buf) - strbuflen(buf) - 1, 0, sizeof(buf)))
|
||||
|
||||
// DNG was written by:
|
||||
#define nonDNG 0
|
||||
#define CameraDNG 1
|
||||
#define AdobeDNG 2
|
||||
|
||||
// Makernote tag type:
|
||||
#define is_0x927c 0 /* most cameras */
|
||||
#define is_0xc634 2 /* Adobe DNG, Sony SR2, Pentax */
|
||||
|
||||
// abbreviations
|
||||
#define ilm imgdata.lens.makernotes
|
||||
#define icWBC imgdata.color.WB_Coeffs
|
||||
#define icWBCCTC imgdata.color.WBCT_Coeffs
|
||||
#define imCanon imgdata.makernotes.canon
|
||||
#define imFuji imgdata.makernotes.fuji
|
||||
#define imHassy imgdata.makernotes.hasselblad
|
||||
#define imKodak imgdata.makernotes.kodak
|
||||
#define imNikon imgdata.makernotes.nikon
|
||||
#define imOly imgdata.makernotes.olympus
|
||||
#define imPana imgdata.makernotes.panasonic
|
||||
#define imPentax imgdata.makernotes.pentax
|
||||
#define imPhaseOne imgdata.makernotes.phaseone
|
||||
#define imRicoh imgdata.makernotes.ricoh
|
||||
#define imSamsung imgdata.makernotes.samsung
|
||||
#define imSony imgdata.makernotes.sony
|
||||
#define imCommon imgdata.makernotes.common
|
||||
|
||||
|
||||
#define ph1_bits(n) ph1_bithuff(n, 0)
|
||||
#define ph1_huff(h) ph1_bithuff(*h, h + 1)
|
||||
#define getbits(n) getbithuff(n, 0)
|
||||
#define gethuff(h) getbithuff(*h, h + 1)
|
||||
|
||||
#endif
|
25
rtengine/libraw/internal/dcraw_fileio_defs.h
Normal file
25
rtengine/libraw/internal/dcraw_fileio_defs.h
Normal file
@@ -0,0 +1,25 @@
|
||||
/* -*- C++ -*-
|
||||
* Copyright 2019-2021 LibRaw LLC (info@libraw.org)
|
||||
*
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
*/
|
||||
|
||||
#ifndef DCRAW_FILEIO_DEFS_H
|
||||
#define DCRAW_FILEIO_DEFS_H
|
||||
|
||||
#include <math.h>
|
||||
#define LIBRAW_LIBRARY_BUILD
|
||||
#include "libraw/libraw.h"
|
||||
#include "internal/defines.h"
|
||||
#include "internal/var_defines.h"
|
||||
|
||||
#endif
|
193
rtengine/libraw/internal/defines.h
Normal file
193
rtengine/libraw/internal/defines.h
Normal file
@@ -0,0 +1,193 @@
|
||||
/*
|
||||
Copyright 2008-2021 LibRaw LLC (info@libraw.org)
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
This file is generated from Dave Coffin's dcraw.c
|
||||
dcraw.c -- Dave Coffin's raw photo decoder
|
||||
Copyright 1997-2010 by Dave Coffin, dcoffin a cybercom o net
|
||||
|
||||
Look into dcraw homepage (probably http://cybercom.net/~dcoffin/dcraw/)
|
||||
for more information
|
||||
*/
|
||||
|
||||
#ifndef LIBRAW_INT_DEFINES_H
|
||||
#define LIBRAW_INT_DEFINES_H
|
||||
#ifndef USE_JPEG
|
||||
#define NO_JPEG
|
||||
#endif
|
||||
#ifndef USE_JASPER
|
||||
#define NO_JASPER
|
||||
#endif
|
||||
#define DCRAW_VERSION "9.26"
|
||||
|
||||
#ifndef _GNU_SOURCE
|
||||
#define _GNU_SOURCE
|
||||
#endif
|
||||
#define _USE_MATH_DEFINES
|
||||
#include <ctype.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <float.h>
|
||||
#include <limits.h>
|
||||
#include <math.h>
|
||||
#include <setjmp.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <time.h>
|
||||
#include <sys/types.h>
|
||||
#ifdef __CYGWIN__
|
||||
#include <io.h>
|
||||
#endif
|
||||
#if defined LIBRAW_WIN32_CALLS
|
||||
#include <sys/utime.h>
|
||||
#ifndef LIBRAW_NO_WINSOCK2
|
||||
#include <winsock2.h>
|
||||
#pragma comment(lib, "ws2_32.lib")
|
||||
#endif
|
||||
#define snprintf _snprintf
|
||||
#define strcasecmp stricmp
|
||||
#define strncasecmp strnicmp
|
||||
#else
|
||||
#include <unistd.h>
|
||||
#include <utime.h>
|
||||
#include <netinet/in.h>
|
||||
typedef long long INT64;
|
||||
typedef unsigned long long UINT64;
|
||||
#endif
|
||||
|
||||
#ifdef NODEPS
|
||||
#define NO_JASPER
|
||||
#define NO_JPEG
|
||||
#define NO_LCMS
|
||||
#endif
|
||||
#ifndef NO_JASPER
|
||||
#include <jasper/jasper.h> /* Decode Red camera movies */
|
||||
#endif
|
||||
#ifndef NO_JPEG
|
||||
#include <jpeglib.h> /* Decode compressed Kodak DC120 photos */
|
||||
#endif /* and Adobe Lossy DNGs */
|
||||
#ifndef NO_LCMS
|
||||
#ifdef USE_LCMS
|
||||
#include <lcms.h> /* Support color profiles */
|
||||
#else
|
||||
#include <lcms2.h> /* Support color profiles */
|
||||
#endif
|
||||
#endif
|
||||
#ifdef LOCALEDIR
|
||||
#include <libintl.h>
|
||||
#define _(String) gettext(String)
|
||||
#else
|
||||
#define _(String) (String)
|
||||
#endif
|
||||
|
||||
#ifdef LJPEG_DECODE
|
||||
#error Please compile dcraw.c by itself.
|
||||
#error Do not link it with ljpeg_decode.
|
||||
#endif
|
||||
|
||||
#ifndef LONG_BIT
|
||||
#define LONG_BIT (8 * sizeof(long))
|
||||
#endif
|
||||
#define FORC(cnt) for (c = 0; c < cnt; c++)
|
||||
#define FORC3 FORC(3)
|
||||
#define FORC4 FORC(4)
|
||||
#define FORCC for (c = 0; c < colors && c < 4; c++)
|
||||
|
||||
#define SQR(x) ((x) * (x))
|
||||
#define ABS(x) (((int)(x) ^ ((int)(x) >> 31)) - ((int)(x) >> 31))
|
||||
#define MIN(a, b) ((a) < (b) ? (a) : (b))
|
||||
#define MAX(a, b) ((a) > (b) ? (a) : (b))
|
||||
#define LIM(x, min, max) MAX(min, MIN(x, max))
|
||||
#define ULIM(x, y, z) ((y) < (z) ? LIM(x, y, z) : LIM(x, z, y))
|
||||
#define CLIP(x) LIM((int)(x), 0, 65535)
|
||||
#define CLIP15(x) LIM((int)(x), 0, 32767)
|
||||
#define SWAP(a, b) \
|
||||
{ \
|
||||
a = a + b; \
|
||||
b = a - b; \
|
||||
a = a - b; \
|
||||
}
|
||||
|
||||
#define my_swap(type, i, j) \
|
||||
{ \
|
||||
type t = i; \
|
||||
i = j; \
|
||||
j = t; \
|
||||
}
|
||||
|
||||
#ifdef __GNUC__
|
||||
inline
|
||||
#elif defined(_MSC_VER)
|
||||
__forceinline
|
||||
#else
|
||||
static
|
||||
#endif
|
||||
float fMAX(float a, float b) { return MAX(a, b); }
|
||||
|
||||
/*
|
||||
In order to inline this calculation, I make the risky
|
||||
assumption that all filter patterns can be described
|
||||
by a repeating pattern of eight rows and two columns
|
||||
|
||||
Do not use the FC or BAYER macros with the Leaf CatchLight,
|
||||
because its pattern is 16x16, not 2x8.
|
||||
|
||||
Return values are either 0/1/2/3 = G/M/C/Y or 0/1/2/3 = R/G1/B/G2
|
||||
|
||||
PowerShot 600 PowerShot A50 PowerShot Pro70 Pro90 & G1
|
||||
0xe1e4e1e4: 0x1b4e4b1e: 0x1e4b4e1b: 0xb4b4b4b4:
|
||||
|
||||
0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
|
||||
0 G M G M G M 0 C Y C Y C Y 0 Y C Y C Y C 0 G M G M G M
|
||||
1 C Y C Y C Y 1 M G M G M G 1 M G M G M G 1 Y C Y C Y C
|
||||
2 M G M G M G 2 Y C Y C Y C 2 C Y C Y C Y
|
||||
3 C Y C Y C Y 3 G M G M G M 3 G M G M G M
|
||||
4 C Y C Y C Y 4 Y C Y C Y C
|
||||
PowerShot A5 5 G M G M G M 5 G M G M G M
|
||||
0x1e4e1e4e: 6 Y C Y C Y C 6 C Y C Y C Y
|
||||
7 M G M G M G 7 M G M G M G
|
||||
0 1 2 3 4 5
|
||||
0 C Y C Y C Y
|
||||
1 G M G M G M
|
||||
2 C Y C Y C Y
|
||||
3 M G M G M G
|
||||
|
||||
All RGB cameras use one of these Bayer grids:
|
||||
|
||||
0x16161616: 0x61616161: 0x49494949: 0x94949494:
|
||||
|
||||
0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5 0 1 2 3 4 5
|
||||
0 B G B G B G 0 G R G R G R 0 G B G B G B 0 R G R G R G
|
||||
1 G R G R G R 1 B G B G B G 1 R G R G R G 1 G B G B G B
|
||||
2 B G B G B G 2 G R G R G R 2 G B G B G B 2 R G R G R G
|
||||
3 G R G R G R 3 B G B G B G 3 R G R G R G 3 G B G B G B
|
||||
*/
|
||||
|
||||
// _RGBG means R, G1, B, G2 sequence
|
||||
#define GRBG_2_RGBG(q) (q ^ (q >> 1) ^ 1)
|
||||
#define RGGB_2_RGBG(q) (q ^ (q >> 1))
|
||||
#define BG2RG1_2_RGBG(q) (q ^ 2)
|
||||
#define G2BRG1_2_RGBG(q) (q ^ (q >> 1) ^ 3)
|
||||
#define GRGB_2_RGBG(q) (q ^ 1)
|
||||
#define RBGG_2_RGBG(q) ((q >> 1) | ((q & 1) << 1))
|
||||
|
||||
#define RAWINDEX(row, col) ((row)*raw_width + (col))
|
||||
#define RAW(row, col) raw_image[(row)*raw_width + (col)]
|
||||
#define BAYER(row, col) \
|
||||
image[((row) >> shrink) * iwidth + ((col) >> shrink)][FC(row, col)]
|
||||
|
||||
#define BAYER2(row, col) \
|
||||
image[((row) >> shrink) * iwidth + ((col) >> shrink)][fcol(row, col)]
|
||||
#define BAYERC(row, col, c) \
|
||||
imgdata.image[((row) >> IO.shrink) * S.iwidth + ((col) >> IO.shrink)][c]
|
||||
|
||||
#endif
|
27
rtengine/libraw/internal/dmp_include.h
Normal file
27
rtengine/libraw/internal/dmp_include.h
Normal file
@@ -0,0 +1,27 @@
|
||||
/* -*- C++ -*-
|
||||
* Copyright 2019-2021 LibRaw LLC (info@libraw.org)
|
||||
*
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
*/
|
||||
|
||||
#ifndef DMP_INCLUDE_H
|
||||
#define DMP_INCLUDE_H
|
||||
|
||||
#define LIBRAW_LIBRARY_BUILD
|
||||
#define LIBRAW_IO_REDEFINED
|
||||
#include "libraw/libraw.h"
|
||||
#include "internal/defines.h"
|
||||
#define SRC_USES_SHRINK
|
||||
#define SRC_USES_BLACK
|
||||
#define SRC_USES_CURVE
|
||||
|
||||
#endif
|
320
rtengine/libraw/internal/libraw_cameraids.h
Normal file
320
rtengine/libraw/internal/libraw_cameraids.h
Normal file
@@ -0,0 +1,320 @@
|
||||
/* -*- C++ -*-
|
||||
* File: internal/libraw_cameraids.h
|
||||
* Copyright 2008-2021 LibRaw LLC (info@libraw.org)
|
||||
* Created: Sat Aug 17, 2020
|
||||
|
||||
LibRaw is free software; you can redistribute it and/or modify
|
||||
it under the terms of the one of two licenses as you choose:
|
||||
|
||||
1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1
|
||||
(See file LICENSE.LGPL provided in LibRaw distribution archive for details).
|
||||
|
||||
2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0
|
||||
(See file LICENSE.CDDL provided in LibRaw distribution archive for details).
|
||||
|
||||
*/
|
||||
|
||||
#ifndef LIBRAW_CONST_H
|
||||
#define LIBRAW_CONST_H
|
||||
|
||||
#define CanonID_EOS_M50 0x00000412ULL
|
||||
#define CanonID_EOS_M6_Mark_II 0x00000811ULL
|
||||
#define CanonID_EOS_M200 0x00000812ULL
|
||||
#define CanonID_EOS_D30 0x01140000ULL
|
||||
#define CanonID_EOS_D60 0x01668000ULL
|
||||
#define CanonID_EOS_M3 0x03740000ULL
|
||||
#define CanonID_EOS_M10 0x03840000ULL
|
||||
#define CanonID_EOS_M5 0x03940000ULL
|
||||
#define CanonID_EOS_M100 0x03980000ULL
|
||||
#define CanonID_EOS_M6 0x04070000ULL
|
||||
#define CanonID_EOS_1D (0x80000000ULL + 0x001ULL)
|
||||
#define CanonID_EOS_1Ds (0x80000000ULL + 0x167ULL)
|
||||
#define CanonID_EOS_10D (0x80000000ULL + 0x168ULL)
|
||||
#define CanonID_EOS_1D_Mark_III (0x80000000ULL + 0x169ULL)
|
||||
#define CanonID_EOS_300D (0x80000000ULL + 0x170ULL)
|
||||
#define CanonID_EOS_1D_Mark_II (0x80000000ULL + 0x174ULL)
|
||||
#define CanonID_EOS_20D (0x80000000ULL + 0x175ULL)
|
||||
#define CanonID_EOS_450D (0x80000000ULL + 0x176ULL)
|
||||
#define CanonID_EOS_1Ds_Mark_II (0x80000000ULL + 0x188ULL)
|
||||
#define CanonID_EOS_350D (0x80000000ULL + 0x189ULL)
|
||||
#define CanonID_EOS_40D (0x80000000ULL + 0x190ULL)
|
||||
#define CanonID_EOS_5D (0x80000000ULL + 0x213ULL)
|
||||
#define CanonID_EOS_1Ds_Mark_III (0x80000000ULL + 0x215ULL)
|
||||
#define CanonID_EOS_5D_Mark_II (0x80000000ULL + 0x218ULL)
|
||||
#define CanonID_EOS_1D_Mark_II_N (0x80000000ULL + 0x232ULL)
|
||||
#define CanonID_EOS_30D (0x80000000ULL + 0x234ULL)
|
||||
#define CanonID_EOS_400D (0x80000000ULL + 0x236ULL)
|
||||
#define CanonID_EOS_7D (0x80000000ULL + 0x250ULL)
|
||||
#define CanonID_EOS_500D (0x80000000ULL + 0x252ULL)
|
||||
#define CanonID_EOS_1000D (0x80000000ULL + 0x254ULL)
|
||||
#define CanonID_EOS_50D (0x80000000ULL + 0x261ULL)
|
||||
#define CanonID_EOS_1D_X (0x80000000ULL + 0x269ULL)
|
||||
#define CanonID_EOS_550D (0x80000000ULL + 0x270ULL)
|
||||
#define CanonID_EOS_1D_Mark_IV (0x80000000ULL + 0x281ULL)
|
||||
#define CanonID_EOS_5D_Mark_III (0x80000000ULL + 0x285ULL)
|
||||
#define CanonID_EOS_600D (0x80000000ULL + 0x286ULL)
|
||||
#define CanonID_EOS_60D (0x80000000ULL + 0x287ULL)
|
||||
#define CanonID_EOS_1100D (0x80000000ULL + 0x288ULL)
|
||||
#define CanonID_EOS_7D_Mark_II (0x80000000ULL + 0x289ULL)
|
||||
#define CanonID_EOS_650D (0x80000000ULL + 0x301ULL)
|
||||
#define CanonID_EOS_6D (0x80000000ULL + 0x302ULL)
|
||||
#define CanonID_EOS_1D_C (0x80000000ULL + 0x324ULL)
|
||||
#define CanonID_EOS_70D (0x80000000ULL + 0x325ULL)
|
||||
#define CanonID_EOS_700D (0x80000000ULL + 0x326ULL)
|
||||
#define CanonID_EOS_1200D (0x80000000ULL + 0x327ULL)
|
||||
#define CanonID_EOS_1D_X_Mark_II (0x80000000ULL + 0x328ULL)
|
||||
#define CanonID_EOS_M (0x80000000ULL + 0x331ULL)
|
||||
#define CanonID_EOS_100D (0x80000000ULL + 0x346ULL)
|
||||
#define CanonID_EOS_760D (0x80000000ULL + 0x347ULL)
|
||||
#define CanonID_EOS_5D_Mark_IV (0x80000000ULL + 0x349ULL)
|
||||
#define CanonID_EOS_80D (0x80000000ULL + 0x350ULL)
|
||||
#define CanonID_EOS_M2 (0x80000000ULL + 0x355ULL)
|
||||
#define CanonID_EOS_5DS (0x80000000ULL + 0x382ULL)
|
||||
#define CanonID_EOS_750D (0x80000000ULL + 0x393ULL)
|
||||
#define CanonID_EOS_5DS_R (0x80000000ULL + 0x401ULL)
|
||||
#define CanonID_EOS_1300D (0x80000000ULL + 0x404ULL)
|
||||
#define CanonID_EOS_800D (0x80000000ULL + 0x405ULL)
|
||||
#define CanonID_EOS_6D_Mark_II (0x80000000ULL + 0x406ULL)
|
||||
#define CanonID_EOS_77D (0x80000000ULL + 0x408ULL)
|
||||
#define CanonID_EOS_200D (0x80000000ULL + 0x417ULL)
|
||||
#define CanonID_EOS_R5 (0x80000000ULL + 0x421ULL)
|
||||
#define CanonID_EOS_3000D (0x80000000ULL + 0x422ULL)
|
||||
#define CanonID_EOS_R (0x80000000ULL + 0x424ULL)
|
||||
#define CanonID_EOS_1D_X_Mark_III (0x80000000ULL + 0x428ULL)
|
||||
#define CanonID_EOS_1500D (0x80000000ULL + 0x432ULL)
|
||||
#define CanonID_EOS_RP (0x80000000ULL + 0x433ULL)
|
||||
#define CanonID_EOS_850D (0x80000000ULL + 0x435ULL)
|
||||
#define CanonID_EOS_250D (0x80000000ULL + 0x436ULL)
|
||||
#define CanonID_EOS_90D (0x80000000ULL + 0x437ULL)
|
||||
#define CanonID_EOS_R3 (0x80000000ULL + 0x450ULL)
|
||||
#define CanonID_EOS_R6 (0x80000000ULL + 0x453ULL)
|
||||
#define CanonID_EOS_R7 (0x80000000ULL + 0x464ULL)
|
||||
#define CanonID_EOS_R10 (0x80000000ULL + 0x465ULL)
|
||||
#define CanonID_EOS_M50_Mark_II (0x80000000ULL + 0x468ULL)
|
||||
|
||||
// CanonID_EOS_D2000C after Canon's TIFF2CR2 convertor:
|
||||
#define CanonID_EOS_D2000C (0x80000000ULL + 0x520ULL)
|
||||
// CanonID_EOS_D6000C id after Canon's TIFF2CR2 convertor:
|
||||
#define CanonID_EOS_D6000C (0x80000000ULL + 0x560ULL)
|
||||
|
||||
#define OlyID_str2hex(str) ((unsigned long long)str[0]<<32 | str[1]<<24 | str[2]<<16 | str[3]<<8 | str[4])
|
||||
#define OlyID_E_20 OlyID_str2hex("D4029")
|
||||
#define OlyID_E_1 OlyID_str2hex("D4040")
|
||||
#define OlyID_E_300 OlyID_str2hex("D4041")
|
||||
#define OlyID_SP_550UZ OlyID_str2hex("D4321")
|
||||
#define OlyID_SP_510UZ OlyID_str2hex("D4322")
|
||||
#define OlyID_SP_560UZ OlyID_str2hex("D4355")
|
||||
#define OlyID_SP_570UZ OlyID_str2hex("D4364")
|
||||
#define OlyID_SP_565UZ OlyID_str2hex("D4374")
|
||||
#define OlyID_XZ_1 OlyID_str2hex("D4401")
|
||||
#define OlyID_XZ_2 OlyID_str2hex("D4531")
|
||||
#define OlyID_XZ_10 OlyID_str2hex("D4546")
|
||||
#define OlyID_STYLUS_1 OlyID_str2hex("D4572")
|
||||
#define OlyID_SH_2 OlyID_str2hex("D4585")
|
||||
#define OlyID_TG_4 OlyID_str2hex("D4586")
|
||||
#define OlyID_TG_5 OlyID_str2hex("D4593")
|
||||
#define OlyID_TG_6 OlyID_str2hex("D4603")
|
||||
#define OlyID_E_10 OlyID_str2hex("D4842")
|
||||
#define OlyID_AIR_A01 OlyID_str2hex("K0055")
|
||||
#define OlyID_NORMA OlyID_str2hex("NORMA")
|
||||
#define OlyID_E_330 OlyID_str2hex("S0003")
|
||||
#define OlyID_E_500 OlyID_str2hex("S0004")
|
||||
#define OlyID_E_400 OlyID_str2hex("S0009")
|
||||
#define OlyID_E_510 OlyID_str2hex("S0010")
|
||||
#define OlyID_E_3 OlyID_str2hex("S0011")
|
||||
#define OlyID_E_410 OlyID_str2hex("S0013")
|
||||
#define OlyID_E_420 OlyID_str2hex("S0016")
|
||||
#define OlyID_E_30 OlyID_str2hex("S0017")
|
||||
#define OlyID_E_520 OlyID_str2hex("S0018")
|
||||
#define OlyID_E_P1 OlyID_str2hex("S0019")
|
||||
#define OlyID_E_620 OlyID_str2hex("S0023")
|
||||
#define OlyID_E_P2 OlyID_str2hex("S0026")
|
||||
#define OlyID_E_PL1 OlyID_str2hex("S0027")
|
||||
#define OlyID_E_450 OlyID_str2hex("S0029")
|
||||
#define OlyID_E_600 OlyID_str2hex("S0030")
|
||||
#define OlyID_E_P3 OlyID_str2hex("S0032")
|
||||
#define OlyID_E_5 OlyID_str2hex("S0033")
|
||||
#define OlyID_E_PL2 OlyID_str2hex("S0034")
|
||||
#define OlyID_E_M5 OlyID_str2hex("S0036")
|
||||
#define OlyID_E_PL3 OlyID_str2hex("S0038")
|
||||
#define OlyID_E_PM1 OlyID_str2hex("S0039")
|
||||
#define OlyID_E_PL1s OlyID_str2hex("S0040")
|
||||
#define OlyID_E_PL5 OlyID_str2hex("S0042")
|
||||
#define OlyID_E_PM2 OlyID_str2hex("S0043")
|
||||
#define OlyID_E_P5 OlyID_str2hex("S0044")
|
||||
#define OlyID_E_PL6 OlyID_str2hex("S0045")
|
||||
#define OlyID_E_PL7 OlyID_str2hex("S0046")
|
||||
#define OlyID_E_M1 OlyID_str2hex("S0047")
|
||||
#define OlyID_E_M10 OlyID_str2hex("S0051")
|
||||
#define OlyID_E_M5_Mark_II OlyID_str2hex("S0052")
|
||||
#define OlyID_E_M10_Mark_II OlyID_str2hex("S0059")
|
||||
#define OlyID_PEN_F OlyID_str2hex("S0061")
|
||||
#define OlyID_E_PL8 OlyID_str2hex("S0065")
|
||||
#define OlyID_E_M1_Mark_II OlyID_str2hex("S0067")
|
||||
#define OlyID_E_M10_Mark_III OlyID_str2hex("S0068")
|
||||
#define OlyID_E_PL9 OlyID_str2hex("S0076")
|
||||
#define OlyID_E_M1X OlyID_str2hex("S0080")
|
||||
#define OlyID_E_PL10 OlyID_str2hex("S0085")
|
||||
#define OlyID_E_M10_Mark_IV OlyID_str2hex("S0088")
|
||||
#define OlyID_E_M5_Mark_III OlyID_str2hex("S0089")
|
||||
#define OlyID_E_M1_Mark_III OlyID_str2hex("S0092")
|
||||
#define OlyID_E_P7 OlyID_str2hex("S0093")
|
||||
#define OlyID_OM_1 OlyID_str2hex("S0095")
|
||||
#define OlyID_C_3030Z OlyID_str2hex("SX351")
|
||||
#define OlyID_C_5050Z OlyID_str2hex("SX558")
|
||||
#define OlyID_C_350Z OlyID_str2hex("SX751")
|
||||
#define OlyID_C_740UZ OlyID_str2hex("SX754")
|
||||
#define OlyID_C_5060WZ OlyID_str2hex("SX756")
|
||||
#define OlyID_C_8080WZ OlyID_str2hex("SX757")
|
||||
#define OlyID_C_770UZ OlyID_str2hex("SX772")
|
||||
#define OlyID_C_7070WZ OlyID_str2hex("SX851")
|
||||
#define OlyID_C_7000Z OlyID_str2hex("SX852")
|
||||
#define OlyID_SP_500UZ OlyID_str2hex("SX853")
|
||||
#define OlyID_SP_310 OlyID_str2hex("SX854")
|
||||
#define OlyID_SP_350 OlyID_str2hex("SX855")
|
||||
#define OlyID_SP_320 OlyID_str2hex("SX873")
|
||||
|
||||
#define PentaxID_Optio_S 0x1296cULL
|
||||
#define PentaxID_Optio_S_V101 0x12971ULL
|
||||
#define PentaxID_staristD 0x12994ULL
|
||||
#define PentaxID_Optio_33WR 0x129c6ULL
|
||||
#define PentaxID_Optio_S4 0x129d5ULL
|
||||
#define PentaxID_Optio_750Z 0x12a66ULL
|
||||
#define PentaxID_staristDS 0x12aa2ULL
|
||||
#define PentaxID_staristDL 0x12b1aULL
|
||||
#define PentaxID_staristDS2 0x12b60ULL
|
||||
#define PentaxID_GX_1S 0x12b62ULL
|
||||
#define PentaxID_staristDL2 0x12b7eULL
|
||||
#define PentaxID_GX_1L 0x12b80ULL
|
||||
#define PentaxID_K100D 0x12b9cULL
|
||||
#define PentaxID_K110D 0x12b9dULL
|
||||
#define PentaxID_K100D_Super 0x12ba2ULL
|
||||
#define PentaxID_K10D 0x12c1eULL
|
||||
#define PentaxID_GX10 0x12c20ULL
|
||||
#define PentaxID_K20D 0x12cd2ULL
|
||||
#define PentaxID_GX20 0x12cd4ULL
|
||||
#define PentaxID_K200D 0x12cfaULL
|
||||
#define PentaxID_K2000 0x12d72ULL
|
||||
#define PentaxID_K_m 0x12d73ULL
|
||||
#define PentaxID_K_7 0x12db8ULL
|
||||
#define PentaxID_K_x 0x12dfeULL
|
||||
#define PentaxID_645D 0x12e08ULL
|
||||
#define PentaxID_K_r 0x12e6cULL
|
||||
#define PentaxID_K_5 0x12e76ULL
|
||||
#define PentaxID_Q 0x12ee4ULL
|
||||
#define PentaxID_K_01 0x12ef8ULL
|
||||
#define PentaxID_K_30 0x12f52ULL
|
||||
#define PentaxID_Q10 0x12f66ULL
|
||||
#define PentaxID_K_5_II 0x12f70ULL
|
||||
#define PentaxID_K_5_II_s 0x12f71ULL
|
||||
#define PentaxID_Q7 0x12f7aULL
|
||||
#define PentaxID_MX_1 0x12f84ULL
|
||||
#define PentaxID_K_50 0x12fb6ULL
|
||||
#define PentaxID_K_3 0x12fc0ULL
|
||||
#define PentaxID_K_500 0x12fcaULL
|
||||
#define PentaxID_645Z 0x13010ULL
|
||||
#define PentaxID_K_S1 0x1301aULL
|
||||
#define PentaxID_K_S2 0x13024ULL
|
||||
#define PentaxID_Q_S1 0x1302eULL
|
||||
#define PentaxID_K_1 0x13092ULL
|
||||
#define PentaxID_K_3_II 0x1309cULL
|
||||
#define PentaxID_GR_III 0x1320eULL
|
||||
#define PentaxID_K_70 0x13222ULL
|
||||
#define PentaxID_KP 0x1322cULL
|
||||
#define PentaxID_K_1_Mark_II 0x13240ULL
|
||||
#define PentaxID_K_3_III 0x13254ULL
|
||||
#define PentaxID_GR_IIIx 0x1329aULL
|
||||
|
||||
#define SonyID_DSC_R1 0x002ULL
|
||||
#define SonyID_DSLR_A100 0x100ULL
|
||||
#define SonyID_DSLR_A900 0x101ULL
|
||||
#define SonyID_DSLR_A700 0x102ULL
|
||||
#define SonyID_DSLR_A200 0x103ULL
|
||||
#define SonyID_DSLR_A350 0x104ULL
|
||||
#define SonyID_DSLR_A300 0x105ULL
|
||||
#define SonyID_DSLR_A900_APSC 0x106ULL
|
||||
#define SonyID_DSLR_A380 0x107ULL
|
||||
#define SonyID_DSLR_A330 0x108ULL
|
||||
#define SonyID_DSLR_A230 0x109ULL
|
||||
#define SonyID_DSLR_A290 0x10aULL
|
||||
#define SonyID_DSLR_A850 0x10dULL
|
||||
#define SonyID_DSLR_A850_APSC 0x10eULL
|
||||
#define SonyID_DSLR_A550 0x111ULL
|
||||
#define SonyID_DSLR_A500 0x112ULL
|
||||
#define SonyID_DSLR_A450 0x113ULL
|
||||
#define SonyID_NEX_5 0x116ULL
|
||||
#define SonyID_NEX_3 0x117ULL
|
||||
#define SonyID_SLT_A33 0x118ULL
|
||||
#define SonyID_SLT_A55 0x119ULL
|
||||
#define SonyID_DSLR_A560 0x11aULL
|
||||
#define SonyID_DSLR_A580 0x11bULL
|
||||
#define SonyID_NEX_C3 0x11cULL
|
||||
#define SonyID_SLT_A35 0x11dULL
|
||||
#define SonyID_SLT_A65 0x11eULL
|
||||
#define SonyID_SLT_A77 0x11fULL
|
||||
#define SonyID_NEX_5N 0x120ULL
|
||||
#define SonyID_NEX_7 0x121ULL
|
||||
#define SonyID_NEX_VG20 0x122ULL
|
||||
#define SonyID_SLT_A37 0x123ULL
|
||||
#define SonyID_SLT_A57 0x124ULL
|
||||
#define SonyID_NEX_F3 0x125ULL
|
||||
#define SonyID_SLT_A99 0x126ULL
|
||||
#define SonyID_NEX_6 0x127ULL
|
||||
#define SonyID_NEX_5R 0x128ULL
|
||||
#define SonyID_DSC_RX100 0x129ULL
|
||||
#define SonyID_DSC_RX1 0x12aULL
|
||||
#define SonyID_NEX_VG900 0x12bULL
|
||||
#define SonyID_NEX_VG30 0x12cULL
|
||||
#define SonyID_ILCE_3000 0x12eULL
|
||||
#define SonyID_SLT_A58 0x12fULL
|
||||
#define SonyID_NEX_3N 0x131ULL
|
||||
#define SonyID_ILCE_7 0x132ULL
|
||||
#define SonyID_NEX_5T 0x133ULL
|
||||
#define SonyID_DSC_RX100M2 0x134ULL
|
||||
#define SonyID_DSC_RX10 0x135ULL
|
||||
#define SonyID_DSC_RX1R 0x136ULL
|
||||
#define SonyID_ILCE_7R 0x137ULL
|
||||
#define SonyID_ILCE_6000 0x138ULL
|
||||
#define SonyID_ILCE_5000 0x139ULL
|
||||
#define SonyID_DSC_RX100M3 0x13dULL
|
||||
#define SonyID_ILCE_7S 0x13eULL
|
||||
#define SonyID_ILCA_77M2 0x13fULL
|
||||
#define SonyID_ILCE_5100 0x153ULL
|
||||
#define SonyID_ILCE_7M2 0x154ULL
|
||||
#define SonyID_DSC_RX100M4 0x155ULL
|
||||
#define SonyID_DSC_RX10M2 0x156ULL
|
||||
#define SonyID_DSC_RX1RM2 0x158ULL
|
||||
#define SonyID_ILCE_QX1 0x15aULL
|
||||
#define SonyID_ILCE_7RM2 0x15bULL
|
||||
#define SonyID_ILCE_7SM2 0x15eULL
|
||||
#define SonyID_ILCA_68 0x161ULL
|
||||
#define SonyID_ILCA_99M2 0x162ULL
|
||||
#define SonyID_DSC_RX10M3 0x163ULL
|
||||
#define SonyID_DSC_RX100M5 0x164ULL
|
||||
#define SonyID_ILCE_6300 0x165ULL
|
||||
#define SonyID_ILCE_9 0x166ULL
|
||||
#define SonyID_ILCE_6500 0x168ULL
|
||||
#define SonyID_ILCE_7RM3 0x16aULL
|
||||
#define SonyID_ILCE_7M3 0x16bULL
|
||||
#define SonyID_DSC_RX0 0x16cULL
|
||||
#define SonyID_DSC_RX10M4 0x16dULL
|
||||
#define SonyID_DSC_RX100M6 0x16eULL
|
||||
#define SonyID_DSC_HX99 0x16fULL
|
||||
#define SonyID_DSC_RX100M5A 0x171ULL
|
||||
#define SonyID_ILCE_6400 0x173ULL
|
||||
#define SonyID_DSC_RX0M2 0x174ULL
|
||||
#define SonyID_DSC_RX100M7 0x176ULL
|
||||
#define SonyID_ILCE_7RM4 0x177ULL
|
||||
#define SonyID_ILCE_9M2 0x178ULL
|
||||
#define SonyID_ILCE_6600 0x17aULL
|
||||
#define SonyID_ILCE_6100 0x17bULL
|
||||
#define SonyID_ZV_1 0x17cULL
|
||||
#define SonyID_ILCE_7C 0x17dULL
|
||||
#define SonyID_ZV_E10 0x17eULL
|
||||
#define SonyID_ILCE_7SM3 0x17fULL
|
||||
#define SonyID_ILCE_1 0x180ULL
|
||||
#define SonyID_ILME_FX3 0x181ULL
|
||||
#define SonyID_ILCE_7RM3A 0x182ULL
|
||||
#define SonyID_ILCE_7RM4A 0x183ULL
|
||||
#define SonyID_ILCE_7M4 0x184ULL
|
||||
#endif
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user