summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/oyranos')
-rw-r--r--media-libs/oyranos/Manifest3
-rw-r--r--media-libs/oyranos/files/oyranos-0.3.2-test.patch11
-rw-r--r--media-libs/oyranos/files/oyranos-0.4.0-buildsystem.patch70
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.0-array.patch37
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.0-buildsystem.patch114
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.0-png.patch31
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-buildsystem-2.patch22
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-array-access.patch29
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-crash-over-missed-output-image.patch50
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-double-object-release.patch27
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-more-compiler-warnings.patch496
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-oyRankMap-helper-functions-crashes.patch54
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-oyStringSegment-crash.patch26
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-pseq-crash.patch26
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-fix-real-compiler-warnings.patch75
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-initialise-memory-for-strtod.patch62
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-omit-profile-with-error.patch40
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.1-support-pur-xrandr-without-xinerama.patch44
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-be-more-verbose.patch51
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-buildsystem-r1.patch162
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-array-access.patch27
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-double-object-release.patch35
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-oyRankMap-helper-functions-crashes.patch53
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-oyStringSegment-crash.patch25
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-runpaths.patch121
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-fix-typos-and-grammar.patch968
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-omit-profile-with-error.patch54
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-set-xcalib-to-screen-if-ge-xrandr-12.patch131
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.4-use-more-internal-xrandr-info.patch35
-rw-r--r--media-libs/oyranos/files/oyranos-0.9.5-buildsystem-r1.patch182
-rw-r--r--media-libs/oyranos/metadata.xml11
-rw-r--r--media-libs/oyranos/oyranos-0.9.4-r2.ebuild112
-rw-r--r--media-libs/oyranos/oyranos-0.9.5-r1.ebuild102
-rw-r--r--media-libs/oyranos/oyranos-0.9.5.ebuild91
-rw-r--r--media-libs/oyranos/oyranos-9999.ebuild102
35 files changed, 3479 insertions, 0 deletions
diff --git a/media-libs/oyranos/Manifest b/media-libs/oyranos/Manifest
new file mode 100644
index 000000000000..168b16401ea0
--- /dev/null
+++ b/media-libs/oyranos/Manifest
@@ -0,0 +1,3 @@
+DIST oyranos-0.9.4.tar.bz2 1632276 SHA256 6dcf7f8bef0720077ee55484a5b507ba5f049094f21fbbd2752f2ed120c0768a SHA512 23ded5bac4c16aba8a2d4266981e6ad53cfa2ce720d03751625552a873de8311dda721eb8dd732860ae0a0fcdfc7346f92aaeb8bde281ceeb4895f154d6e6c59 WHIRLPOOL 7ec535e326bf102eb0d154ac995b42b4a8b23a606c35417727b54653424807c47c5a4cf7ece6411627dcffd7ca5d8b1ddc588d97d1a02fb079d27d3d20efd2a5
+DIST oyranos-0.9.5.tar.bz2 1800977 SHA256 75c2681e6d95cb969336f1e9bdfe12a85ae6a5bd438573d7d2955b37ea466e40 SHA512 18ab90f6d80db2c3d3fda64f80d01be2c83c9e86f14b3a3310eea5dd921b7376afb894fea987357b573a4247d5c285bc9f6ccc044e21dbe7da92f25373b9fd99 WHIRLPOOL 32440b53b7da82baa8299c570c3456c35cbffb17998836240640011ff5a13981e7219213b00c0d9afc367f74bf35ffb297363285d060bd72f73f8f75a18ed025
+DIST oyranos-0.9.5.tar.gz 1801954 SHA256 7cf8d41c3019e91608837cc40de801348b35963853e6d62b3e6dcd46bf24cafa SHA512 836bb7324cd300608cb13381704b6b28aae93485140d2e3f6c7dc21f1d35f9acc44427c861814b13c60cc499ba5495068b1069f6843909744f18ac8998d17ae9 WHIRLPOOL 69b676c6cae8eb878b5e0ea73358ffc59ba78541c9de89d10667a52141d0b37399ea733e1e2aa69bf90208a12e93c63b0b8bb63e6eb2efccc0151b745469491f
diff --git a/media-libs/oyranos/files/oyranos-0.3.2-test.patch b/media-libs/oyranos/files/oyranos-0.3.2-test.patch
new file mode 100644
index 000000000000..6e9b495a963a
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.3.2-test.patch
@@ -0,0 +1,11 @@
+--- oyranos-0.3.2/makefile.in
++++ oyranos-0.3.2/makefile.in
+@@ -995,7 +995,7 @@
+ echo current git version is:
+ n=0; for i in `cd $(SRCDIR); git rev-list master`; do if [ $${n} -eq 0 ]; then echo git id:$${i}; fi; n=1; done
+ echo run tests/test_oyranos
+- OY_MODULE_PATHS=. LD_LIBRARY_PATH=./:$(libdir):$${LD_LIBRARY_PATH} tests/test_oyranos
++ OY_MODULE_PATHS=. LD_LIBRARY_PATH=./:$(libdir):$${LD_LIBRARY_PATH} tests/test_oyranos "Version matching" "Internationalisation" "Elektra" "basic oyOption_s" "default oyOptions_s settings" "Profiles reading" "Registration matching" "Generic Object Observation"
+
+ examples: all
+ cd examples && ($(MAKE) clean; PATH="$(PATH):$(bindir):.." LD_LIBRARY_PATH=./:$(libdir):$${LD_LIBRARY_PATH} PKG_CONFIG_PATH="$(PKG_CONFIG_PATH):$(DESTDIR)$(libdir)/pkgconfig:.." INCLUDE="-I$(includedir) -I$(SRCDIR) -I../ -I$(SRCDIR)/$(GENDIR)" SRCDIR=$(SRCDIR)/examples/ CFLAGS="$(CFLAGS)" LIBS="-L$(libdir) -L../" intl="$(intl)" $(MAKE))
diff --git a/media-libs/oyranos/files/oyranos-0.4.0-buildsystem.patch b/media-libs/oyranos/files/oyranos-0.4.0-buildsystem.patch
new file mode 100644
index 000000000000..66f4ec1ddf2c
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.4.0-buildsystem.patch
@@ -0,0 +1,70 @@
+--- oyranos-0.4.0/configure
++++ oyranos-0.4.0/configure
+@@ -30,7 +30,7 @@
+ PKGC=$TARGET.pc
+ VERS_H="$TARGET"_version.h
+ zeile="$0 $@"
+-MAKEFILE_DIR=". fl_i18n libXNVCtrl yajl"; export MAKEFILE_DIR
++MAKEFILE_DIR=". fl_i18n libXNVCtrl"; export MAKEFILE_DIR
+
+ if [ `uname` = "Linux" ]; then
+ v=-v
+@@ -68,7 +68,7 @@
+ OY_DEVEL_MONTH=03
+ OYRANOS_DEVEL_MONTH=3 # numeric
+ OY_DEVEL_YEAR=2012
+-OY_GIT_MASTER="`cat $ROOT_DIR/.git/refs/heads/master`"
++OY_GIT_MASTER=""
+ time="`date +%y%m%d.%H%M%S`"
+ DATE="$OY_START_MONTH $OY_START_YEAR - $OY_DEVEL_MONTH $OY_DEVEL_YEAR"
+ VERSION=$VERSION_A.$VERSION_B.$VERSION_C
+@@ -120,7 +120,7 @@
+ fi
+ IFS=$old_IFS
+
+-STRIPOPT="sed s/-O.//"
++STRIPOPT="cat"
+
+ if [ $# -gt 0 ]; then
+ prefix=""
+--- oyranos-0.4.0/configure_tests.sh
++++ oyranos-0.4.0/configure_tests.sh
+@@ -3,7 +3,7 @@
+ set > testset.txt
+ ERROR=0
+ WARNING=0
+-STRIPOPT='s/-O.// ; s/-isysroot [[:graph:]]*// ; s/-arch ppc// ; s/-arch i386//'
++STRIPOPT='s/-isysroot [[:graph:]]*// ; s/-arch ppc// ; s/-arch i386//'
+
+ mkdir -p tests
+
+--- oyranos-0.4.0/oforms/oyranos_xforms.makefile
++++ oyranos-0.4.0/oforms/oyranos_xforms.makefile
+@@ -1,5 +1,6 @@
+ INCL = $(INCLUDE) -I../ -I./ $(DEBUG)
+-CC = gcc
++CC ?= gcc
++CXX ?= c++
+ DEBUG = -Wall -g -O0
+ LDFLAGS_ = $$LDFLAGS -L../fl_i18n
+ OY_LIBS := $(shell pkg-config oyranos libxml-2.0 --libs --cflags)
+ FLTK_FLAGS := $(shell fltk-config --ldflags --cxxflags | sed s/-O2//) -lpthread
+@@ -16,15 +17,15 @@
+
+ oyranos-xforms: $(SRCDIR)oyranos_xforms.c
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- gcc -Wall -g $(CFLAGS) $(INCL) $(SRCDIR)oyranos_xforms.c -o oyranos-xforms -pedantic $(OY_FLAGS) $(LDFLAGS_)
++ $(CC) -Wall -g $(CFLAGS) $(INCL) $(SRCDIR)oyranos_xforms.c -o oyranos-xforms -pedantic $(OY_FLAGS) $(LDFLAGS_)
+
+ oyranos-xforms-modules: $(SRCDIR)oyranos_xforms_modules.c
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- gcc -Wall -g $(CFLAGS) $(INCL) $< -o $@ -pedantic $(OY_FLAGS) $(LDFLAGS_)
++ $(CC) -Wall -g $(CFLAGS) $(INCL) $< -o $@ -pedantic $(OY_FLAGS) $(LDFLAGS_)
+
+ oyranos-xforms-fltk: $(SRCDIR)oyranos_xforms_fltk.cxx $(SRCDIR)oyranos_forms_fltk.cxx $(SRCDIR)oyranos_widgets_fltk.cxx $(SRCDIR)oyranos_widgets_fltk.h
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- -c++ $(LDFLAGS_) -Wall -g $(CXXFLAGS) $(INCL) $(SRCDIR)oyranos_xforms_fltk.cxx -o oyranos-xforms-fltk -pedantic -loyforms_fltk -lfl_i18n $(FLTK_FLAGS) $(OY_FLAGS)
++ $(CXX) $(LDFLAGS) -Wall -g $(CXXFLAGS) $(INCL) $(SRCDIR)oyranos_xforms_fltk.cxx -o oyranos-xforms-fltk -pedantic -loyforms_fltk -lfl_i18n $(FLTK_FLAGS) $(OY_FLAGS_)
+
+
+ # Build commands and filename extensions...
diff --git a/media-libs/oyranos/files/oyranos-0.9.0-array.patch b/media-libs/oyranos/files/oyranos-0.9.0-array.patch
new file mode 100644
index 000000000000..bd8ee069e443
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.0-array.patch
@@ -0,0 +1,37 @@
+from http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff;h=0ed3aef1320ccc168c2753ac4cf426290fac6639
+--- a/API_generated/oyArray2d_s_.c
++++ b/API_generated/oyArray2d_s_.c
+@@ -13,7 +13,7 @@
+ * @author Kai-Uwe Behrmann <ku.b@gmx.de>
+ * @par License:
+ * new BSD - see: http://www.opensource.org/licenses/bsd-license.php
+- * @date 2012/10/24
++ * @date 2012/11/02
+ */
+
+
+@@ -404,9 +404,9 @@
+ *
+ * @param[in,out] obj struct object
+ *
+- * @version Oyranos: 0.1.11
++ * @version Oyranos: 0.9.1
++ * @date 2012/11/02
+ * @since 2010/09/07 (Oyranos: 0.1.11)
+- * @date 2010/09/07
+ */
+ int oyArray2d_ReleaseArray_ ( oyArray2d_s * obj )
+ {
+@@ -428,10 +428,10 @@
+ {
+ if((s->own_lines == 1 && y == s->data_area.y) ||
+ s->own_lines == 2)
+- deallocateFunc( &s->array2d[y][dsize * (int)s->data_area.x] );
++ deallocateFunc( &s->array2d[y][dsize * (int)OY_ROUND(s->data_area.x)] );
+ s->array2d[y] = 0;
+ }
+- deallocateFunc( s->array2d + (size_t)s->data_area.y );
++ deallocateFunc( s->array2d + (int)OY_ROUND(s->data_area.y) );
+ s->array2d = 0;
+ }
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.0-buildsystem.patch b/media-libs/oyranos/files/oyranos-0.9.0-buildsystem.patch
new file mode 100644
index 000000000000..9821fd44be40
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.0-buildsystem.patch
@@ -0,0 +1,114 @@
+--- oyranos-0.4.0/configure_tests.sh
++++ oyranos-0.4.0/configure_tests.sh
+@@ -3,7 +3,7 @@
+ set > testset.txt
+ ERROR=0
+ WARNING=0
+-STRIPOPT='s/-O.// ; s/-isysroot [[:graph:]]*// ; s/-arch ppc// ; s/-arch i386//'
++STRIPOPT='s/-isysroot [[:graph:]]*// ; s/-arch ppc// ; s/-arch i386//'
+
+ mkdir -p tests
+
+--- oyranos-0.9.0/oforms/oyranos_xforms.makefile
++++ oyranos-0.9.0/oforms/oyranos_xforms.makefile
+@@ -1,8 +1,8 @@
+-INCL = $(INCLUDE) -I../ -I./ $(DEBUG)
+-CC = gcc
+-DEBUG = -Wall -g -O0
++INCL = $(INCLUDE) -I../ -I./
++CC ?= gcc
++CXX ?= c++
+ LDFLAGS_ = $$LDFLAGS -L../fl_i18n
+-OY_LIBS := $(shell pkg-config oyranos libxml-2.0 --libs --cflags)
++OY_LIBS := $(shell pkg-config libxml-2.0 --libs --cflags) ../liboyranos.so ../liboyranos_object.so ../liboyranos_core.so ../liboyranos_config.so ../liboyranos_modules.so
+ OY_FLAGS = -L../ $(OY_LIBS)
+ FLTK_FLAGS := $(shell fltk-config --ldflags --cxxflags | sed s/-O2//) -lpthread
+
+@@ -15,15 +15,15 @@
+
+ oyranos-xforms: $(SRCDIR)oyranos_xforms.c
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- gcc -Wall -g $(CFLAGS) $(INCL) $(SRCDIR)oyranos_xforms.c -o oyranos-xforms -pedantic $(OY_FLAGS) $(LDFLAGS_)
++ $(CC) -Wall $(CFLAGS) $(LDFLAGS) $(INCL) $(SRCDIR)oyranos_xforms.c -o oyranos-xforms -pedantic $(OY_FLAGS) $(LDFLAGS_)
+
+ oyranos-xforms-modules: $(SRCDIR)oyranos_xforms_modules.c
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- gcc -Wall -g $(CFLAGS) $(INCL) $< -o $@ -pedantic $(OY_FLAGS) $(LDFLAGS_)
++ $(CC) -Wall $(CFLAGS) $(LDFLAGS) $(INCL) $< -o $@ -pedantic $(OY_FLAGS) $(LDFLAGS_)
+
+ oyranos-xforms-fltk: $(SRCDIR)oyranos_xforms_fltk.cxx $(SRCDIR)oyranos_forms_fltk.cxx $(SRCDIR)oyranos_widgets_fltk.cxx $(SRCDIR)oyranos_widgets_fltk.h
+ echo "Compiling $(SRCDIR)$< + Linking $@ ..."
+- -c++ $(LDFLAGS_) -Wall -g $(CXXFLAGS) $(INCL) $(SRCDIR)oyranos_xforms_fltk.cxx -o oyranos-xforms-fltk -pedantic -loyforms_fltk -lfl_i18n $(FLTK_FLAGS) $(OY_FLAGS)
++ $(CXX) $(LDFLAGS_) -Wall $(CXXFLAGS) $(LDFLAGS) $(INCL) $(SRCDIR)oyranos_xforms_fltk.cxx -o oyranos-xforms-fltk -pedantic -loyforms_fltk -lfl_i18n $(FLTK_FLAGS) $(OY_FLAGS)
+
+
+ # Build commands and filename extensions...
+--- oyranos-0.9.0/oyranos-config.in
++++ oyranos-0.9.0/oyranos-config.in
+@@ -109,7 +109,7 @@
+
+ if [ "$echo_ldflags" = "yes" ]; then
+ if [ -f liboyranos.so ]; then
+- echo "-L. -loyranos -loyranos_config -loyranos_modules -loyranos_object -loyranos_core $elektra $oyranos_add"
++ echo "lliboyranos.so liboyranos_config.so liboyranos_modules.so liboyranos_object.so liboyranos_core.so $elektra $oyranos_add"
+ else
+ echo "-L$libdir -loyranos -loyranos_config -loyranos_modules -loyranos_object -loyranos_core $elektra $oyranos_add"
+ fi
+--- oyranos-0.9.0/configure
++++ oyranos-0.9.0/configure
+@@ -121,8 +121,6 @@
+ fi
+ IFS=$old_IFS
+
+-STRIPOPT="sed s/-O.//"
+-
+ if [ $# -gt 0 ]; then
+ prefix=""
+ while [ $# -gt 0 ]; do
+@@ -680,17 +678,8 @@
+ test -n "$ECHO" && $ECHO "CC = $CC" >> $CONF_NV
+ export CC CXX
+
+-# many constant strings are much longer than the C90 allowed, skip the warning
+-CFLAGS_COMMON="`echo $CFLAGS_COMMON | $STRIPOPT` \$(DEBUG) \$(OPENMP)"
+-CXXFLAGS_COMMON="`echo $CXXFLAGS_COMMON | $STRIPOPT` \$(DEBUG) \$(OPENMP)"
+-CFLAGS="`echo $CFLAGS | $STRIPOPT`"
+-CXXFLAGS="`echo $CXXFLAGS | $STRIPOPT`"
+
+-if [ -z "$LDFLAGS" ]; then
+- LDFLAGS="-L./ -L$libdir"
+-else
+- LDFLAGS="`echo $LDFLAGS | $STRIPOPT` -L./ -L$libdir"
+-fi
++#LDFLAGS="-L./ -L$libdir"
+
+
+ # detect Libraries
+@@ -760,12 +749,12 @@
+ --copyright-holder='Kai-Uwe Behrmann' \
+ --msgid-bugs-address='ku.b@gmx.de' \
+ --from-code=utf-8" >> $CONF
+- oyranos_add="-L\$libdir \$ltdl \$xml2 \$iconv \$intl \$yajl"
++ oyranos_add="\$ltdl \$xml2 \$iconv \$intl \$yajl"
+ if [ $OSUNAME = "Linux" ]; then
+ COPY="cp -vdpa"
+ MOVE="mv -v"
+ RM="rm -vf"
+- LDFLAGS="$LDFLAGS -L."
++ LDFLAGS="$LDFLAGS"
+ test -n "$ECHO" && $ECHO "LINK_FLAGS_STATIC =" >> $CONF
+ if [ -n "$rpath" ]; then
+ test -n "$ECHO" && $ECHO "LINK_LIB_PATH = -Wl,--rpath -Wl," >> $CONF
+@@ -1294,9 +1283,9 @@
+ test -n "$ECHO" && $ECHO "" >> $VERS_H
+ test -n "$ECHO" && $ECHO "#endif /*OYRANOS_VERSION_H*/" >> $VERS_H
+
+-CFLAGS="$CFLAGS_COMMON `echo $CFLAGS | $STRIPOPT`"
+-CXXFLAGS="$CXXFLAGS_COMMON `echo $CXXFLAGS | $STRIPOPT`"
+-LDFLAGS="`echo $LDFLAGS | $STRIPOPT` \$(dl) \$(DEVEL_LIBS)"
++CFLAGS="$CFLAGS_COMMON $CFLAGS"
++CXXFLAGS="$CXXFLAGS_COMMON $CXXFLAGS"
++LDFLAGS="$LDFLAGS \$(dl) \$(DEVEL_LIBS)"
+
+ test -n "$ECHO" && $ECHO "CFLAGS=$CFLAGS" >> $CONF_NV
+ test -n "$ECHO" && $ECHO "CFLAGS = $CFLAGS" >> $CONF_I18N
diff --git a/media-libs/oyranos/files/oyranos-0.9.0-png.patch b/media-libs/oyranos/files/oyranos-0.9.0-png.patch
new file mode 100644
index 000000000000..7bcc28651f1c
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.0-png.patch
@@ -0,0 +1,31 @@
+from http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff;h=c39976bf5de8a70f71cef2ecafae13d17e811857
+--- a/modules/oyranos_cmm_oPNG.c
++++ b/modules/oyranos_cmm_oPNG.c
+@@ -816,7 +816,8 @@ oyImage_s * oyImage_FromPNG ( const char * filename,
+ spp = 2; break;
+ case PNG_COLOR_TYPE_PALETTE:
+ png_set_palette_to_rgb( png_ptr );
+- spp = 3; break;
++ /* expect alpha */
++ spp = 4; break;
+ case PNG_COLOR_TYPE_RGB:
+ spp = 3; break;
+ case PNG_COLOR_TYPE_RGB_ALPHA:
+@@ -884,10 +885,15 @@ oyImage_s * oyImage_FromPNG ( const char * filename,
+ oyToDataType_m(pixel_layout),
+ 0 );
+ png_byte ** array2d = (png_byte**) oyArray2d_GetData( a );
+- int i;
++ int i,y;
+
++ /* both variants of libpng access appear equal */
++ if(1)
++ png_read_image( png_ptr, array2d );
++ else
+ for( i = 0; i < num_passes; ++i )
+- png_read_rows( png_ptr, array2d, NULL, height );
++ for( y = 0; y < height; ++y )
++ png_read_row( png_ptr, array2d[y], NULL );
+
+ oyImage_SetData ( image_in, (oyStruct_s**) &a, 0,0,0,0,0,0 );
+ }
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-buildsystem-2.patch b/media-libs/oyranos/files/oyranos-0.9.1-buildsystem-2.patch
new file mode 100644
index 000000000000..6593f6392699
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-buildsystem-2.patch
@@ -0,0 +1,22 @@
+--- oyranos-0.9.1/configure_tests.sh
++++ oyranos-0.9.1/configure_tests.sh
+@@ -612,8 +612,9 @@
+ ID_LIBS="$ID"_LIBS
+ if [ -z "$found" ]; then
+ pkg-config --atleast-version=0.2 $pc_package
++ found=$?
+ if [ $? = 0 ]; then
+- found=`pkg-config --cflags $pc_package`
++ xcm_cflags=`pkg-config --cflags $pc_package`
+ version=`pkg-config --modversion $pc_package`
+ fi
+ fi
+@@ -627,7 +628,7 @@
+ if [ -n "$MAKEFILE_DIR" ]; then
+ for i in $MAKEFILE_DIR; do
+ test -f "$ROOT_DIR/$i/makefile".in && echo "XCM = 1" >> "$i/makefile"
+- test -f "$ROOT_DIR/$i/makefile".in && echo "XCM_H = $found" >> "$i/makefile"
++ test -f "$ROOT_DIR/$i/makefile".in && echo "XCM_H = $xcm_cflags" >> "$i/makefile"
+ test -f "$ROOT_DIR/$i/makefile".in && echo "$ID_LIBS = `pkg-config --libs $name | sed \"$STRIPOPT\"`" >> "$i/makefile"
+ done
+ fi
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-array-access.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-array-access.patch
new file mode 100644
index 000000000000..8f8e2c1b9014
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-array-access.patch
@@ -0,0 +1,29 @@
+From 11d848a38608deeeca61288d46cfca55c6916788 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Mon, 18 Mar 2013 19:07:16 +0100
+Subject: [PATCH] * [oyX1]: fix array access
+
+---
+ modules/devices/oyranos_monitor_x11.c | 7 +++++++
+ 1 files changed, 7 insertions(+), 0 deletions(-)
+
+diff --git a/modules/devices/oyranos_monitor_x11.c b/modules/devices/oyranos_monitor_x11.c
+index a530a81..bac09c1 100644
+--- a/modules/devices/oyranos_monitor_x11.c
++++ b/modules/devices/oyranos_monitor_x11.c
+@@ -1329,6 +1329,13 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+ int n_scr_info = 0;
+ XineramaScreenInfo *scr_info = XineramaQueryScreens( display,
+ &n_scr_info );
++ if(n_scr_info <= selected_screen)
++ {
++ XFree( scr_info );
++ oyX1Monitor_release_( &disp );
++ return 0;
++ }
++
+ geo[0] = scr_info[selected_screen].x_org;
+ geo[1] = scr_info[selected_screen].y_org;
+ geo[2] = scr_info[selected_screen].width;
+--
+1.5.6.5
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-crash-over-missed-output-image.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-crash-over-missed-output-image.patch
new file mode 100644
index 000000000000..72b01dac0b06
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-crash-over-missed-output-image.patch
@@ -0,0 +1,50 @@
+From 2b62b97d76ec64ebfd5ea3fe3a67ef7c3e4a017c Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Mon, 24 Dec 2012 10:34:53 +0100
+Subject: [PATCH] * [lcms]: fix crash over missed output image
+
+---
+ modules/oyranos_cmm_lcm2.c | 4 ++--
+ modules/oyranos_cmm_lcms.c | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/modules/oyranos_cmm_lcm2.c b/modules/oyranos_cmm_lcm2.c
+index 56c2228..90f0bf9 100644
+--- a/modules/oyranos_cmm_lcm2.c
++++ b/modules/oyranos_cmm_lcm2.c
+@@ -1494,11 +1494,11 @@ oyPointer lcm2FilterNode_CmmIccContextToMem (
+ OY_DBG_FORMAT_" missed input image %d", OY_DBG_ARGS_,
+ image_input->type_ );
+ }
+- if(image_output->type_ != oyOBJECT_IMAGE_S)
++ if(!image_output || image_output->type_ != oyOBJECT_IMAGE_S)
+ {
+ oyFilterSocket_Callback( plug, oyCONNECTOR_EVENT_INCOMPATIBLE_DATA );
+ lcm2_msg( oyMSG_WARN, (oyStruct_s*)node,
+- OY_DBG_FORMAT_" missed output image %d", OY_DBG_ARGS_, image_input->type_ );
++ OY_DBG_FORMAT_" missed output image %d", OY_DBG_ARGS_, image_output?image_output->type_:0 );
+ }
+
+ data_type = oyToDataType_m( oyImage_GetPixelLayout( image_input, oyLAYOUT ) );
+diff --git a/modules/oyranos_cmm_lcms.c b/modules/oyranos_cmm_lcms.c
+index b42fc99..9352ea2 100644
+--- a/modules/oyranos_cmm_lcms.c
++++ b/modules/oyranos_cmm_lcms.c
+@@ -1225,12 +1225,12 @@ oyPointer lcmsFilterNode_CmmIccContextToMem (
+ OY_DBG_FORMAT_" missed input image %d", OY_DBG_ARGS_,
+ image_input->type_ );
+ }
+- if(image_output->type_ != oyOBJECT_IMAGE_S)
++ if(!image_output || image_output->type_ != oyOBJECT_IMAGE_S)
+ {
+ oyFilterSocket_Callback( plug, oyCONNECTOR_EVENT_INCOMPATIBLE_DATA );
+ lcms_msg( oyMSG_WARN, (oyStruct_s*)node,
+ OY_DBG_FORMAT_" missed output image %d", OY_DBG_ARGS_,
+- image_input->type_ );
++ image_output?image_output->type_:0 );
+ }
+
+ data_type = oyToDataType_m( oyImage_GetPixelLayout( image_input, oyLAYOUT ) );
+--
+1.5.6.5
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-double-object-release.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-double-object-release.patch
new file mode 100644
index 000000000000..805c5ee3d904
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-double-object-release.patch
@@ -0,0 +1,27 @@
+From 6214cf15fafae52d67233d27462488487091d8d6 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 20 Mar 2013 18:15:17 +0100
+Subject: [PATCH 1/1] * [core]: fix double object release
+
+... which was revealed by valgrind
+
+2013-03-31: backport to oyranos-0.9.1, remove patch for nonexistent file
+---
+ API_generated/oyranos_devices.c | 1 -
+
+diff --git a/API_generated/oyranos_devices.c b/API_generated/oyranos_devices.c
+index 4ed5138..8cee0c8 100644
+--- a/API_generated/oyranos_devices.c
++++ b/API_generated/oyranos_devices.c
+@@ -1896,7 +1896,6 @@ OYAPI int OYEXPORT
+ oyConfigs_MoveIn( taxi_devices, &taxi_dev, -1 );
+ }
+ oyConfigs_Release( &configs_ );
+- oyOptions_Release( &options );
+ oyFree_m_(ranks);
+ }
+
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-more-compiler-warnings.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-more-compiler-warnings.patch
new file mode 100644
index 000000000000..207589e3b0c4
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-more-compiler-warnings.patch
@@ -0,0 +1,496 @@
+From c65685939185b4f1eced04f227dea72b249dd065 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Fri, 14 Dec 2012 10:50:28 +0100
+Subject: [PATCH 1/1] * [core]: fix compiler warnings
+
+dereferencing type-punned pointer will break strict-aliasing rules
+
+set but unused variable
+
+possible use of uninitialised variables
+
+...
+
+2013-03-30: backport to oyranos-0.9.1
+
+---
+ examples/devices/test_device.c | 15 ++----------
+ examples/taxi/taxi.c | 30 ++++++++++---------------
+ modules/oyranos_cmm_lcm2.c | 32 +++++++++++++-------------
+ modules/oyranos_cmm_lcms.c | 32 +++++++++++++-------------
+ modules/oyranos_cmm_lraw.cpp | 5 ++-
+ modules/oyranos_cmm_oyIM_profile.c | 4 +-
+ oyjl/oyjl_tree_parse.c | 2 +-
+ test2.cpp | 6 ++--
+ tests/test_oyranos.c | 2 +-
+ examples/oyranos_convert/oyranos_convert.c | 15 ++++++------
+ oyranos_gamma.c | 2 +-
+
+diff --git a/examples/devices/test_device.c b/examples/devices/test_device.c
+index 7ef2de8..016754b 100644
+--- a/examples/devices/test_device.c
++++ b/examples/devices/test_device.c
+@@ -205,7 +205,7 @@ int main(int argc, char *argv[])
+ oyConfig_s * oy_device = 0;
+ oyProfile_s * profile = 0;
+ const char * tmp = 0;
+- icSignature profile_class;
++ icSignature profile_class = icSigDisplayClass;
+ oyOptions_s * options = 0;
+ oyOptions_SetFromText( &options,
+ "//"OY_TYPE_STD"/config/icc_profile.x_color_region_target",
+@@ -331,7 +331,6 @@ int main(int argc, char *argv[])
+ oyConfig_s * oy_device = 0;
+ oyProfile_s * profile = 0;
+ const char * tmp = 0;
+- icSignature profile_class;
+ oyOptions_s * options = 0;
+ oyOptions_SetFromText( &options,
+ "//"OY_TYPE_STD"/config/icc_profile.x_color_region_target",
+@@ -344,15 +343,9 @@ int main(int argc, char *argv[])
+ oyConfDomain_s * d = oyConfDomain_FromReg( device_class, 0 );
+ const char * icc_profile_class = oyConfDomain_GetText( d,
+ "icc_profile_class", oyNAME_NICK );
+- if(icc_profile_class && strcmp(icc_profile_class,"display") == 0)
+- profile_class = icSigDisplayClass;
+- else if(icc_profile_class && strcmp(icc_profile_class,"output") == 0)
+- profile_class = icSigOutputClass;
+- else if(icc_profile_class && strcmp(icc_profile_class,"input") == 0)
+- profile_class = icSigInputClass;
+
+- printf("icc_profile_class: %s\n", icc_profile_class );
+- oyConfDomain_Release( &d );
++ printf("icc_profile_class: %s\n", icc_profile_class );
++ oyConfDomain_Release( &d );
+ }
+
+ error = oyDeviceGet( 0, device_class, device_name, 0, &oy_device );
+@@ -374,14 +367,12 @@ int main(int argc, char *argv[])
+ oyProfile_s * profile = 0;
+ oyConfigs_s * taxi_devices = 0;
+ oyConfig_s * device = oy_device;
+- const char * profile_file_name = 0;
+
+ oyDevicesFromTaxiDB( device, 0, &taxi_devices, 0 );
+
+ size = oyConfigs_Count( taxi_devices );
+
+ error = oyDeviceGetProfile( device, options, &profile );
+- profile_file_name = oyProfile_GetFileName( profile, 0 );
+
+ int show_only_device_related = 1;
+ int empty_added = -1;
+diff --git a/examples/taxi/taxi.c b/examples/taxi/taxi.c
+index 81c415a..ae3953f 100644
+--- a/examples/taxi/taxi.c
++++ b/examples/taxi/taxi.c
+@@ -7,9 +7,13 @@
+ #include <oyConfigs_s.h>
+ #include <oyProfile_s.h>
+
++#include "oyranos_config_internal.h"
+ #include <oyranos_devices.h>
+ #include "oyranos_helper_macros_cli.h"
++#include "oyranos_helper.h"
++#include "oyranos_i18n.h"
+ #include "oyranos_sentinel.h"
++#include "oyranos_string.h"
+
+ #include "oyjl/oyjl_tree.h"
+
+@@ -86,7 +90,7 @@ int oyLowerStrcmpWrap (const void * a_, const void * b_)
+ #endif
+ }
+
+-int oyStrCmp(char * a, char * b) { return (a && b) ? strcmp(a,b) : 1; }
++int oyStrCmp(const char * a, const char * b) { return (a && b) ? strcmp(a,b) : 1; }
+
+ #define OPENICC_DEVICE_JSON_HEADER_BASE \
+ "{\n" \
+@@ -107,8 +111,8 @@ void storeTaxiProfile( const char * taxi_id, const char * taxi_full_id, const ch
+ {
+ oyOptions_s * options = 0;
+ oyProfile_s * profile;
+- int error = oyOptions_SetFromText( &options,
+- "//" OY_TYPE_STD "/argv/TAXI_id",
++
++ oyOptions_SetFromText( &options, "//" OY_TYPE_STD "/argv/TAXI_id",
+ taxi_full_id,
+ OY_CREATE_NEW );
+
+@@ -138,15 +142,9 @@ void storeTaxiProfile( const char * taxi_id, const char * taxi_full_id, const ch
+
+ int main( int argc, char ** argv )
+ {
+- oyConfig_s * moni = NULL,
+- * device = NULL;
+ int error = 0;
+- oyConfigs_s * devices = NULL;
+- oyOptions_s * options = NULL;
+- oyProfile_s * profile = NULL;
+ char * profile_name = 0; /* the file to write to */
+- int32_t rank_value = 0, max_rank_value = 0;
+- int i,n, max_device_pos = -1,
++ int i,
+ verbose = 0,
+ list_manufacturers = 0,
+ list_urls = 0;
+@@ -156,11 +154,9 @@ int main( int argc, char ** argv )
+
+ size_t size = 0;
+ const char * short_name = NULL,
+- * long_name = NULL,
+- * name = NULL;
++ * long_name = NULL;
+ oyjl_value_s * root = 0;
+- char * val = NULL,
+- * key = NULL;
++ char * val = NULL;
+ oyjl_value_s * v = 0, * tv = 0;
+ int count;
+
+@@ -229,10 +225,8 @@ int main( int argc, char ** argv )
+ error = oyjl_tree_from_json( manufacturers, &root, NULL );
+ if(root)
+ {
+- int level = 0;
+-
+ int count = oyjl_value_count(root);
+- char ** sort = calloc( sizeof(char**), 2*count + 2 );
++ const char ** sort = calloc( sizeof(char**), 2*count + 2 );
+
+ for(i = 0; i < count; ++i)
+ {
+@@ -392,5 +386,5 @@ int main( int argc, char ** argv )
+ if(device_db) oyDeAllocateFunc_(device_db); device_db = 0;
+ }
+
+- return 0;
++ return error;
+ }
+diff --git a/modules/oyranos_cmm_lcm2.c b/modules/oyranos_cmm_lcm2.c
+index c50df87..56c2228 100644
+--- a/modules/oyranos_cmm_lcm2.c
++++ b/modules/oyranos_cmm_lcm2.c
+@@ -215,8 +215,8 @@ lcm2ProfileWrap_s * lcm2CMMProfile_GetWrap_( oyPointer_s* cmm_ptr )
+ {
+ lcm2ProfileWrap_s * s = 0;
+
+- char type_[4] = lcm2PROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcm2PROFILE;
++ int type = *((int32_t*)type_);
+
+ if(cmm_ptr && !lcm2CMMCheckPointer( cmm_ptr, lcm2PROFILE ) &&
+ oyPointer_GetPointer(cmm_ptr))
+@@ -238,8 +238,8 @@ lcm2ProfileWrap_s * lcm2CMMProfile_GetWrap_( oyPointer_s* cmm_ptr )
+ int lcm2CMMTransform_GetWrap_ ( oyPointer_s * cmm_ptr,
+ lcm2TransformWrap_s ** s )
+ {
+- char type_[4] = lcm2TRANSFORM;
+- int type = *((int*)&type_);
++ char * type_ = lcm2TRANSFORM;
++ int type = *((int32_t*)type_);
+
+ if(cmm_ptr && !lcm2CMMCheckPointer( cmm_ptr, lcm2TRANSFORM ) &&
+ oyPointer_GetPointer(cmm_ptr))
+@@ -266,8 +266,8 @@ int lcm2CMMProfileReleaseWrap(oyPointer *p)
+ int error = !p;
+ lcm2ProfileWrap_s * s = 0;
+
+- char type_[4] = lcm2PROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcm2PROFILE;
++ int type = *((int32_t*)type_);
+ char s_type[4];
+
+ if(!error && *p)
+@@ -315,8 +315,8 @@ int lcm2CMMData_Open ( oyStruct_s * data,
+
+ if(!error)
+ {
+- char type_[4] = lcm2PROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcm2PROFILE;
++ int type = *((int32_t*)type_);
+ size_t size = 0;
+ oyPointer block = 0;
+ lcm2ProfileWrap_s * s = calloc(sizeof(lcm2ProfileWrap_s), 1);
+@@ -482,8 +482,8 @@ lcm2TransformWrap_s * lcm2TransformWrap_Set_ (
+
+ if(!error)
+ {
+- char type_[4] = lcm2TRANSFORM;
+- int type = *((int*)&type_);
++ char * type_ = lcm2TRANSFORM;
++ int type = *((int32_t*)type_);
+ lcm2TransformWrap_s * ltw = calloc(sizeof(lcm2TransformWrap_s), 1);
+
+ ltw->type = type;
+@@ -991,8 +991,8 @@ cmsHPROFILE lcm2AddProofProfile ( oyProfile_s * proof,
+ {
+ oyPointer_s * oy = cmm_ptr;
+
+- char type_[4] = lcm2PROFILE;
+- uint32_t type = *((uint32_t*)&type_);
++ char * type_ = lcm2PROFILE;
++ uint32_t type = *((uint32_t*)type_);
+ cmsUInt32Number size = 0;
+ oyPointer block = 0;
+ lcm2ProfileWrap_s * s = calloc(sizeof(lcm2ProfileWrap_s), 1);
+@@ -2182,10 +2182,10 @@ int lcm2FilterPlug_CmmIccRun ( oyFilterPlug_s * requestor_plug,
+ {
+ uint8_t * array_in_tmp = 0,
+ * array_out_tmp = 0;
+- float * array_in_tmp_flt,
+- * array_out_tmp_flt;
+- double * array_in_tmp_dbl,
+- * array_out_tmp_dbl;
++ float * array_in_tmp_flt = 0,
++ * array_out_tmp_flt = 0;
++ double * array_in_tmp_dbl = 0,
++ * array_out_tmp_dbl = 0;
+ uint8_t ** array_in_data = oyArray2d_GetData( array_in ),
+ ** array_out_data = oyArray2d_GetData( array_out );
+ int threads_n =
+diff --git a/modules/oyranos_cmm_lcms.c b/modules/oyranos_cmm_lcms.c
+index bea56ed..b42fc99 100644
+--- a/modules/oyranos_cmm_lcms.c
++++ b/modules/oyranos_cmm_lcms.c
+@@ -213,8 +213,8 @@ lcmsProfileWrap_s * lcmsCMMProfile_GetWrap_( oyPointer_s * cmm_ptr )
+ {
+ lcmsProfileWrap_s * s = 0;
+
+- char type_[4] = lcmsPROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcmsPROFILE;
++ int type = *((int32_t*)type_);
+
+ if(cmm_ptr && !lcmsCMMCheckPointer( cmm_ptr, lcmsPROFILE ) &&
+ oyPointer_GetPointer(cmm_ptr))
+@@ -236,8 +236,8 @@ lcmsProfileWrap_s * lcmsCMMProfile_GetWrap_( oyPointer_s * cmm_ptr )
+ int lcmsCMMTransform_GetWrap_ ( oyPointer_s * cmm_ptr,
+ lcmsTransformWrap_s ** s )
+ {
+- char type_[4] = lcmsTRANSFORM;
+- int type = *((int*)&type_);
++ char * type_ = lcmsTRANSFORM;
++ int type = *((int32_t*)type_);
+
+ if(cmm_ptr && !lcmsCMMCheckPointer( cmm_ptr, lcmsTRANSFORM ) &&
+ oyPointer_GetPointer(cmm_ptr))
+@@ -264,8 +264,8 @@ int lcmsCMMProfileReleaseWrap(oyPointer *p)
+ int error = !p;
+ lcmsProfileWrap_s * s = 0;
+
+- char type_[4] = lcmsPROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcmsPROFILE;
++ int type = *((int32_t*)type_);
+ char s_type[4];
+
+ if(!error && *p)
+@@ -313,8 +313,8 @@ int lcmsCMMData_Open ( oyStruct_s * data,
+
+ if(!error)
+ {
+- char type_[4] = lcmsPROFILE;
+- int type = *((int*)&type_);
++ char * type_ = lcmsPROFILE;
++ int type = *((int32_t*)type_);
+ size_t size = 0;
+ oyPointer block = 0;
+ lcmsProfileWrap_s * s = calloc(sizeof(lcmsProfileWrap_s), 1);
+@@ -466,8 +466,8 @@ lcmsTransformWrap_s * lcmsTransformWrap_Set_ (
+
+ if(!error)
+ {
+- char type_[4] = lcmsTRANSFORM;
+- int type = *((int*)&type_);
++ char * type_ = lcmsTRANSFORM;
++ int type = *((int32_t*)type_);
+ lcmsTransformWrap_s * ltw = calloc(sizeof(lcmsTransformWrap_s), 1);
+
+ ltw->type = type;
+@@ -879,8 +879,8 @@ cmsHPROFILE lcmsAddProofProfile ( oyProfile_s * proof,
+ {
+ oyPointer_s * oy = cmm_ptr;
+
+- char type_[4] = lcmsPROFILE;
+- uint32_t type = *((uint32_t*)&type_);
++ char * type_ = lcmsPROFILE;
++ uint32_t type = *((uint32_t*)type_);
+ size_t size = 0;
+ oyPointer block = 0;
+ lcmsProfileWrap_s * s = calloc(sizeof(lcmsProfileWrap_s), 1);
+@@ -1821,10 +1821,10 @@ int lcmsFilterPlug_CmmIccRun ( oyFilterPlug_s * requestor_plug,
+ {
+ uint8_t * array_in_tmp = 0,
+ * array_out_tmp = 0;
+- float * array_in_tmp_flt,
+- * array_out_tmp_flt;
+- double * array_in_tmp_dbl,
+- * array_out_tmp_dbl;
++ float * array_in_tmp_flt = 0,
++ * array_out_tmp_flt = 0;
++ double * array_in_tmp_dbl = 0,
++ * array_out_tmp_dbl = 0;
+ uint8_t ** array_in_data = oyArray2d_GetData( array_in ),
+ ** array_out_data = oyArray2d_GetData( array_out );
+ int threads_n =
+diff --git a/modules/oyranos_cmm_lraw.cpp b/modules/oyranos_cmm_lraw.cpp
+index 5494091..eacbc46 100644
+--- a/modules/oyranos_cmm_lraw.cpp
++++ b/modules/oyranos_cmm_lraw.cpp
+@@ -357,7 +357,7 @@ typedef struct {
+ oyCIExyY v[3];
+ } oyCIExyYTriple;
+
+-void _oyMAT3toCIExyYTriple ( const oyMAT3* a,oyCIExyYTriple * triple )
++int _oyMAT3toCIExyYTriple ( const oyMAT3* a,oyCIExyYTriple * triple )
+ {
+ int i,j,
+ fail=0;
+@@ -380,6 +380,7 @@ void _oyMAT3toCIExyYTriple ( const oyMAT3* a,oyCIExyYTriple * triple )
+ triple->v[i].xy[1] = 1;
+ }
+ }
++ return fail;
+ }
+ const char * _oyMAT3show ( const oyMAT3* a )
+ {
+@@ -488,7 +489,7 @@ oyProfile_s * createMatrixProfile ( libraw_colordata_t & color )
+ _oyMAT3per( &ab_cm, &cam_zyx, &pre_mul );
+ if(_oyMAT3inverse( &ab_cm, &ab_cm_inverse ))
+ // convert to CIE*xyY
+- _oyMAT3toCIExyYTriple( &ab_cm_inverse, &ab_cm_inverse_xyY );
++ fail = _oyMAT3toCIExyYTriple( &ab_cm_inverse, &ab_cm_inverse_xyY );
+ else
+ {
+ fail = 1;
+diff --git a/modules/oyranos_cmm_oyIM_profile.c b/modules/oyranos_cmm_oyIM_profile.c
+index 0bbb412..c98aba7 100644
+--- a/modules/oyranos_cmm_oyIM_profile.c
++++ b/modules/oyranos_cmm_oyIM_profile.c
+@@ -249,9 +249,9 @@ int oyWriteIcSigLutAtoBType ( oyStructList_s * texts,
+ size_t tag_size )
+ {
+ int error = 0;
+- int size, i;
++ int size = 0, i;
+ size_t off;
+- uint8_t * dimensions, precission, *u8;
++ uint8_t * dimensions = 0, precission = 1, *u8;
+ uint16_t u16;
+ char * tmp = 0;
+ char * text = oyAllocateFunc_(128);
+diff --git a/oyjl/oyjl_tree_parse.c b/oyjl/oyjl_tree_parse.c
+index 78c9882..e43117d 100644
+--- a/oyjl/oyjl_tree_parse.c
++++ b/oyjl/oyjl_tree_parse.c
+@@ -684,7 +684,7 @@ yajl_status oyjl_tree_from_json ( const char * text,
+ #if YAJL_VERSION < 20000
+ yajl_parser_config yconfig = { 1, 1 };
+ #endif
+- yajl_handle yhandle;
++ yajl_handle yhandle = 0;
+
+ if(!error && context)
+ {
+diff --git a/test2.cpp b/test2.cpp
+index a71f484..476c3be 100644
+--- a/test2.cpp
++++ b/test2.cpp
+@@ -3573,7 +3573,7 @@ oyTESTRESULT_e testImagePixel()
+ /* all other buffer pixels shall remain untouched */
+ buf_16out2x2[3]==0 && buf_16out2x2[4]==0 && buf_16out2x2[5]==0 &&
+ buf_16out2x2[6]==0 && buf_16out2x2[7]==0 && buf_16out2x2[8]==0 &&
+- buf_16out2x2[9]==0 && buf_16out2x2[10]==0 && buf_16out2x2[10]==0
++ buf_16out2x2[9]==0 && buf_16out2x2[10]==0 && buf_16out2x2[11]==0
+ )
+ { PRINT_SUB( oyTESTRESULT_SUCCESS,
+ "lower right source pixel in 1 pixel RoI %s",
+@@ -3621,7 +3621,7 @@ oyTESTRESULT_e testImagePixel()
+ buf_16in2x2[6]==0 && buf_16in2x2[7]==0 && buf_16in2x2[8]==0 &&
+ buf_16in2x2[9]==65535 && buf_16in2x2[10]==65535 &&buf_16in2x2[11]==65535&&
+ /* the result shall appear in the lower right corner / last pixel */
+- buf_16out2x2[9]==65535 && buf_16out2x2[10]>20000&&buf_16out2x2[20]<40000&&
++ buf_16out2x2[9]==65535 && buf_16out2x2[10]>20000&&buf_16out2x2[11]<40000&&
+ /* all other buffer pixels shall remain untouched */
+ buf_16out2x2[0]==0 && buf_16out2x2[1]==0 && buf_16out2x2[2]==0 &&
+ buf_16out2x2[3]==0 && buf_16out2x2[4]==0 && buf_16out2x2[5]==0 &&
+@@ -3986,7 +3986,7 @@ oyTESTRESULT_e oyTestRun ( oyTESTRESULT_e (*test)(void),
+ /* main */
+ int main(int argc, char** argv)
+ {
+- int i, error;
++ int i, error = 0;
+
+ if(getenv("OY_DEBUG"))
+ {
+diff --git a/tests/test_oyranos.c b/tests/test_oyranos.c
+index bb3f521..bccec7c 100644
+--- a/tests/test_oyranos.c
++++ b/tests/test_oyranos.c
+@@ -1009,7 +1009,7 @@ oyTESTRESULT_e testObserver ()
+ /* main */
+ int main(int argc, char** argv)
+ {
+- int i, error;
++ int i, error = 0;
+
+ /* init */
+ for(i = 0; i <= oyTESTRESULT_UNKNOWN; ++i)
+diff --git a/examples/oyranos_convert/oyranos_convert.c b/examples/oyranos_convert/oyranos_convert.c
+index 099b872..51dd59d 100644
+--- a/examples/oyranos_convert/oyranos_convert.c
++++ b/examples/oyranos_convert/oyranos_convert.c
+@@ -135,16 +135,10 @@ int main( int argc , char** argv )
+
+ int levels = 0;
+
+- const char * result_xml = 0;
+- char * text = 0, * t = 0;
+- const char * opt_names = 0;
+- oyFormsArgs_s * forms_args = oyFormsArgs_New( 0 );
+- const char * data = 0, * ct = 0;
+ char ** other_args = 0;
+ int other_args_n = 0;
+- int i;
++ char * text = 0, * t = 0;
+ oyOptions_s * opts = 0;
+- oyOption_s * o = 0;
+ oyImage_s * image = 0;
+
+ #ifdef USE_GETTEXT
+@@ -275,6 +269,13 @@ int main( int argc , char** argv )
+ #if 0
+ if(other_args)
+ {
++ const char * result_xml = 0;
++ const char * opt_names = 0;
++ oyFormsArgs_s * forms_args = oyFormsArgs_New( 0 );
++ const char * data = 0, * ct = 0;
++ int i;
++ oyOption_s * o = 0;
++
+ forms_args->print = 0;
+
+ error = oyXFORMsRenderUi( text, oy_ui_cmd_line_handlers, forms_args );
+diff --git a/oyranos_gamma.c b/oyranos_gamma.c
+index 598aa2d..0c5b09e 100644
+--- a/oyranos_gamma.c
++++ b/oyranos_gamma.c
+@@ -172,7 +172,7 @@ int main( int argc , char** argv )
+ else if(OY_IS_ARG("profile"))
+ { OY_PARSE_STRING_ARG2(prof_name, "profile"); break; }
+ else if(OY_IS_ARG("display"))
+- { const char * t; OY_PARSE_STRING_ARG2(t, "display");
++ { const char * t=0; OY_PARSE_STRING_ARG2(t, "display");
+ if(t) display_name = strdup(t); break; }
+ else if(OY_IS_ARG("modules"))
+ { list_modules = 1; i=100; break; }
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-oyRankMap-helper-functions-crashes.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-oyRankMap-helper-functions-crashes.patch
new file mode 100644
index 000000000000..b97260b20f53
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-oyRankMap-helper-functions-crashes.patch
@@ -0,0 +1,54 @@
+From c2feb3e1f1ab45702f98c8728898eab1ee849cd4 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Fri, 22 Feb 2013 19:42:23 +0100
+Subject: [PATCH] * [sources]: fix counting in oyRankMap data
+
+2013-03-31: backport to oyranos-0.9.1, remove (duplicate) patch for nonexistent file
+ remove hunks for not yet existing parts of oyConfig_s.c
+
+This fixes crashes in several oyRankMap helper functions.
+---
+ API_generated/oyConfig_s.c | 86 ++++++++++++++++++++--
+
+diff --git a/src/API_generated/oyConfig_s.c b/API_generated/oyConfig_s.c
+index 8ec0ff6..7ea1f3b 100644
+--- a/API_generated/oyConfig_s.c
++++ b/API_generated/oyConfig_s.c
+@@ -983,14 +983,14 @@ oyRankMap * oyRankMapCopy ( const oyRankMap * rank_map,
+ {
+ oyRankMap * map = 0;
+ int error = !rank_map;
+- int n = 0, i;
++ int n = 0, i = 0;
+
+ if(!allocateFunc)
+ allocateFunc = oyAllocateFunc_;
+
+ if(error <= 0)
+ {
+- while( rank_map[n++].key ) {}
++ while( rank_map[i++].key ) ++n;
+
+ oyAllocHelper_m_( map, oyRankMap, n + 1, allocateFunc, error = 1 );
+ }
+@@ -1025,7 +1025,7 @@ OYAPI void OYEXPORT
+ oyDeAlloc_f deAllocateFunc )
+ {
+ int error = !rank_map || !*rank_map;
+- int n = 0, i;
++ int n = 0, i = 0;
+
+ if(!deAllocateFunc)
+ deAllocateFunc = oyDeAllocateFunc_;
+@@ -1033,7 +1033,7 @@ OYAPI void OYEXPORT
+ if(error <= 0)
+ {
+ oyRankMap * map = *rank_map;
+- while( (*rank_map)[n++].key ) {}
++ while( (*rank_map)[i++].key ) ++n;
+ for(i = 0; i < n; ++i)
+ {
+ deAllocateFunc( map[i].key ); map[i].key = 0;
+--
+1.5.6.5
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-oyStringSegment-crash.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-oyStringSegment-crash.patch
new file mode 100644
index 000000000000..b92be88fc236
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-oyStringSegment-crash.patch
@@ -0,0 +1,26 @@
+From cf495d5ede29f7211e498217c4d06428f944bac3 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 13 Mar 2013 14:59:19 +0100
+Subject: [PATCH] * [core]: fix oyStringSegment_() crash
+
+2013-03-31: backport to oyranos-0.9.1, remove unrelated oyStringReplace_ hunk
+
+---
+ oyranos_string.c | 4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/oyranos_string.c b/oyranos_string.c
+index 525ce7e..1d214c0 100644
+--- a/oyranos_string.c
++++ b/oyranos_string.c
+@@ -499,7 +499,7 @@ char * oyStringSegment_ ( char * text,
+ for(; i < segment; ++i)
+ {
+ t = oyStrchr_( t, delimiter );
+- ++t;
++ if(t) ++t;
+ }
+
+ end_pos = (uintptr_t) oyStrchr_(t, delimiter);
+--
+1.5.6.5
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-pseq-crash.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-pseq-crash.patch
new file mode 100644
index 000000000000..e59dd18feabf
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-pseq-crash.patch
@@ -0,0 +1,26 @@
+From 843b9cc4121cdb518b8f1a65e0207e4cceb2d2ae Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 21 Nov 2012 08:15:21 +0100
+Subject: [PATCH] * [oyIM]: fix pseq crash
+
+---
+ modules/oyranos_cmm_oyIM_profile.c | 3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/modules/oyranos_cmm_oyIM_profile.c b/modules/oyranos_cmm_oyIM_profile.c
+index 265feea..8de0491 100644
+--- a/modules/oyranos_cmm_oyIM_profile.c
++++ b/modules/oyranos_cmm_oyIM_profile.c
+@@ -1958,7 +1958,8 @@ oyStructList_s * oyIMProfileTag_GetValues(
+ memcpy( model_local, model, 4 );
+ model = model_local;
+ tech = oyICCTechnologyDescription( oyValueUInt32(desc->technology ));
+- }
++ } else
++ continue;
+
+ /* first mnf */
+ tmptag = oyProfileTag_New(0);
+--
+1.5.6.5
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-fix-real-compiler-warnings.patch b/media-libs/oyranos/files/oyranos-0.9.1-fix-real-compiler-warnings.patch
new file mode 100644
index 000000000000..ad76042e4d94
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-fix-real-compiler-warnings.patch
@@ -0,0 +1,75 @@
+From 692f4d363033a419ea595f6be9ddda84dae4d20d Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Thu, 13 Dec 2012 18:04:50 +0100
+Subject: [PATCH] * [sources]: fix compiler warnings
+
+2013-03-30: Rip out typo patches, backport to oyranos-0.9.1
+
+---
+ API_generated/oyOption_s.c | 6 +++---
+ oyranos_io_core.c | 2 +-
+ oyranos_string.c | 4 +---
+ oyjl/oyjl_tree_parse.c | 2 +-
+
+diff --git a/API_generated/oyOption_s.c b/API_generated/oyOption_s.c
+index ea78f01..c2bbf66 100644
+--- a/API_generated/oyOption_s.c
++++ b/API_generated/oyOption_s.c
+@@ -372,7 +372,7 @@ const char * oyOption_GetValueString(oyOption_s * obj,
+ {
+ oyOption_s_ * s = (oyOption_s_*)obj;
+ int error = !s,
+- n;
++ n = 0;
+ const char * result = 0;
+
+ if(!s)
+diff --git a/oyranos_io_core.c b/oyranos_io_core.c
+index d28068b..7ce1a94 100644
+--- a/oyranos_io_core.c
++++ b/oyranos_io_core.c
+@@ -262,7 +262,7 @@ char * oyReadUrlToMem_ ( const char * url,
+ {
+ char * text = 0;
+ char * command = 0;
+- FILE * fp;
++ FILE * fp = 0;
+
+ if(url && strlen(url) && size )
+ {
+diff --git a/oyranos_string.c b/oyranos_string.c
+index 26adbe7..d43b0dd 100644
+--- a/oyranos_string.c
++++ b/oyranos_string.c
+@@ -184,13 +184,11 @@ int oyStringFromData_ ( const oyPointer ptr,
+ {
+ const char * text = (const char*) ptr;
+ char * text_tmp = 0;
+- int j,
++ int j = 0,
+ error = 0;
+
+ if(ptr && size)
+ {
+- j = 0;
+-
+ while(j < size)
+ if(!isprint( text[j] ) && !isspace( text[j] ))
+ {
+diff --git a/oyjl/oyjl_tree_parse.c b/oyjl/oyjl_tree_parse.c
+index b969ede..78c9882 100644
+--- a/oyjl/oyjl_tree_parse.c
++++ b/oyjl/oyjl_tree_parse.c
+@@ -213,7 +213,7 @@ oyjl_tree_parse_context_s * oyjl_tree_parse_context_new( void )
+ if(!error)
+ {
+ memset(s, 0, sizeof(oyjl_tree_parse_context_s));
+- strcpy(s->type,"yopc");
++ memcpy(s->type,"yopc",4);
+ }
+ return s;
+ }
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-initialise-memory-for-strtod.patch b/media-libs/oyranos/files/oyranos-0.9.1-initialise-memory-for-strtod.patch
new file mode 100644
index 000000000000..9e127b289042
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-initialise-memory-for-strtod.patch
@@ -0,0 +1,62 @@
+From 996f512cca3d19f7408e6fb9a8e0c133a54561e4 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Thu, 3 Jan 2013 16:38:52 +0100
+Subject: [PATCH] * [sources]: initialise memory for strtod
+
+fixes warnings in valgrind about uninitialised memory usage
+
+2013-03-31: backport to oyranos-0.9.1, remove patch for nonexistent file
+
+---
+ API_generated/oyranos_object.c | 8 ++++----
+ oyranos_string.c | 10 ++++++----
+
+diff --git a/API_generated/oyranos_object.c b/API_generated/oyranos_object.c
+index aacc2f5..1db9f42 100644
+--- a/API_generated/oyranos_object.c
++++ b/API_generated/oyranos_object.c
+@@ -768,10 +768,10 @@ int oyTextIccDictMatch ( const char * text,
+ int n = 0, p_n = 0, i, j;
+ char ** texts = 0, * t;
+ char ** patterns = 0, * p;
+- long num[2];
+- int num_valid[2];
+- double dbl[2];
+- int dbl_valid[2];
++ long num[2] = {0,0};
++ int num_valid[2] = {0,0};
++ double dbl[2] = {0,0};
++ int dbl_valid[2] = {0,0};
+
+ DBG_MEM_START
+
+diff --git a/oyranos_string.c b/oyranos_string.c
+index d43b0dd..b9c9bc4 100644
+--- a/oyranos_string.c
++++ b/oyranos_string.c
+@@ -68,15 +68,17 @@ int oyStringToDouble ( const char * text,
+ setlocale(LC_NUMERIC, "C");
+ /* avoid irritating valgrind output of "Invalid read of size 8"
+ * might be a glibc error or a false positive in valgrind */
+- t = oyAllocateFunc_( len + 2*sizeof(long) + 1 );
++ t = oyAllocateFunc_( len + 2*sizeof(double) + 1 );
++ memset( t, 0, len + 2*sizeof(double) + 1 );
++
+ memcpy( t, text, len );
+- t[len] = 0;
++
+ if(0 && oy_debug_memory)
+ {
+- printf( OY_DBG_FORMAT_""OY_PRINT_POINTER" \"%s\" %d "OY_PRINT_POINTER" \"%s\"\n",
++ fprintf( stderr, OY_DBG_FORMAT_""OY_PRINT_POINTER" \"%s\" %d "OY_PRINT_POINTER" \"%s\"\n",
+ OY_DBG_ARGS_,(intptr_t)text, text, len,
+ t, t );
+- fflush( stdout );
++ fflush( stderr );
+ }
+
+ *value = strtod( t, &p );
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-omit-profile-with-error.patch b/media-libs/oyranos/files/oyranos-0.9.1-omit-profile-with-error.patch
new file mode 100644
index 000000000000..c7605b40d0a3
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-omit-profile-with-error.patch
@@ -0,0 +1,40 @@
+From ecbfe88cf77863c7c925f61d0e69d11474059cb8 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Tue, 26 Mar 2013 12:09:01 +0100
+Subject: [PATCH] * [source]: omit profile with error
+
+a proper return value would be more helpful
+---
+ API_generated/oyProfile_s_.c | 7 +++++--
+
+diff --git a/API_generated/oyProfile_s_.c b/API_generated/oyProfile_s_.c
+index 83629fe..338ed08 100644
+--- a/API_generated/oyProfile_s_.c
++++ b/API_generated/oyProfile_s_.c
+@@ -8,12 +8,12 @@
+ * Oyranos is an open source Colour Management System
+ *
+ * @par Copyright:
+- * 2004-2012 (C) Kai-Uwe Behrmann
++ * 2004-2013 (C) Kai-Uwe Behrmann
+ *
+ * @author Kai-Uwe Behrmann <ku.b@gmx.de>
+ * @par License:
+ * new BSD - see: http://www.opensource.org/licenses/bsd-license.php
+- * @date 2012/10/31
++ * @date 2013/03/26
+ */
+
+
+@@ -724,6 +724,9 @@ oyProfile_s_ * oyProfile_FromFile_ ( const char * name,
+ }
+ }
+
++ if(error >= 1 && s)
++ oyProfile_Release( (oyProfile_s**)&s );
++
+ oyHash_Release_( &entry );
+
+ return s;
+--
+1.5.6.5
diff --git a/media-libs/oyranos/files/oyranos-0.9.1-support-pur-xrandr-without-xinerama.patch b/media-libs/oyranos/files/oyranos-0.9.1-support-pur-xrandr-without-xinerama.patch
new file mode 100644
index 000000000000..9c31fcb3ffc3
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.1-support-pur-xrandr-without-xinerama.patch
@@ -0,0 +1,44 @@
+From a4f157beb6c60855f64d011cb2ad2f93071da461 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Sat, 15 Dec 2012 16:10:22 +0100
+Subject: [PATCH] * [oyX1]: support pur XRandR without Xinerama
+
+... as was seen with Intel's driver.
+---
+ src/modules/devices/oyranos_monitor_x11.c | 12 +++++++-----
+ 1 files changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/src/modules/devices/oyranos_monitor_x11.c b/src/modules/devices/oyranos_monitor_x11.c
+index b79b2d6..f8546b3 100644
+--- a/src/modules/devices/oyranos_monitor_x11.c
++++ b/src/modules/devices/oyranos_monitor_x11.c
+@@ -1278,6 +1278,8 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+ */
+ }
+
++ expensive = 1;
++
+ if((major_versionp*100 + minor_versionp) >= 102 && expensive)
+ {
+ Window w = RootWindow(display, oyX1Monitor_screen_(disp));
+@@ -1347,11 +1349,11 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+ if(crtc_info)
+ {
+ /* compare with Xinerama geometry */
+- if(
+- geo[0] == crtc_info->x &&
+- geo[1] == crtc_info->y &&
+- geo[2] == crtc_info->width &&
+- geo[3] == crtc_info->height )
++ if(!(geo[0] != -1 && geo[1] != -1 && geo[2] != -1 && geo[3] != -1)||
++ (geo[0] == crtc_info->x &&
++ geo[1] == crtc_info->y &&
++ geo[2] == crtc_info->width &&
++ geo[3] == crtc_info->height ) )
+ {
+ xrand_screen = monitors;
+ ++geo_monitors;
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-be-more-verbose.patch b/media-libs/oyranos/files/oyranos-0.9.4-be-more-verbose.patch
new file mode 100644
index 000000000000..66ed023ff842
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-be-more-verbose.patch
@@ -0,0 +1,51 @@
+From 80fd8efab3f56c698b4182846d8707916849cad9 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Sat, 9 Feb 2013 18:21:47 +0100
+Subject: [PATCH] * [tools]: add more verbosity to oy-monitor -v
+
+Here to the profile assignment part.
+---
+ src/tools/oyranos_gamma.c | 16 ++++++++++++++++
+ 1 files changed, 16 insertions(+), 0 deletions(-)
+
+diff --git a/src/tools/oyranos_gamma.c b/src/tools/oyranos_gamma.c
+index f2206a5..005bdd2 100644
+--- a/src/tools/oyranos_gamma.c
++++ b/src/tools/oyranos_gamma.c
+@@ -747,16 +747,32 @@ int main( int argc , char** argv )
+
+ if(monitor_profile)
+ {
++ if(verbose)
++ fprintf( stdout, "oyDeviceSetProfile()\n" );
+ oyDeviceSetProfile( device, monitor_profile );
++ if(verbose)
++ fprintf( stdout, "oyDeviceUnset()\n" );
+ oyDeviceUnset( device );
+ } else
+ if(erase || unset)
++ {
++ if(verbose)
++ fprintf( stdout, "oyDeviceUnset()\n" );
+ oyDeviceUnset( device );
++ }
+ if(erase)
++ {
++ if(verbose)
++ fprintf( stdout, "oyConfig_EraseFromDB()\n" );
+ oyConfig_EraseFromDB( device );
++ }
+
+ if(setup)
++ {
++ if(verbose)
++ fprintf( stdout, "oyDeviceSetup()\n" );
+ oyDeviceSetup( device );
++ }
+
+ oyConfig_Release( &device );
+ }
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-buildsystem-r1.patch b/media-libs/oyranos/files/oyranos-0.9.4-buildsystem-r1.patch
new file mode 100644
index 000000000000..a4516a2aeb11
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-buildsystem-r1.patch
@@ -0,0 +1,162 @@
+--- oyranos-0.9.4/src/CMakeLists.txt
++++ oyranos-0.9.4/src/CMakeLists.txt
+@@ -100,7 +100,9 @@
+ INCLUDE_DIRECTORIES( ${XCM_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${XCM_LIBRARY_DIRS} )
+
+-FIND_PACKAGE( X11 )
++IF(WANT_X11)
++FIND_PACKAGE( X11 REQUIRED )
++ENDIF(WANT_X11)
+ IF(X11_FOUND)
+ INCLUDE_DIRECTORIES( ${X11_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${X11_LIBRARY_DIRS} )
+@@ -123,27 +125,35 @@
+ LINK_DIRECTORIES( ${XXF86VM_LIBRARY_DIRS} )
+ ENDIF(X11_FOUND)
+
+-FIND_PACKAGE( CUPS )
++IF(WANT_CUPS)
++FIND_PACKAGE( Cups REQUIRED )
++SET( HAVE_CUPS 1 )
++ENDIF(WANT_CUPS)
+ IF(HAVE_CUPS)
+- INCLUDE_DIRECTORIES( ${CUPS_INCLUDE_DIRS} )
+- LINK_DIRECTORIES( ${CUPS_LIBRARY_DIRS} )
++ INCLUDE_DIRECTORIES( ${CUPS_INCLUDE_DIR} )
+ ENDIF(HAVE_CUPS)
+
+-FIND_PACKAGE( Cairo )
++IF(WANT_CAIRO)
++FIND_PACKAGE( Cairo REQUIRED)
++ENDIF(WANT_CAIRO)
+ IF(HAVE_CAIRO)
+ INCLUDE_DIRECTORIES( ${CAIRO_INCLUDE_DIR}/cairo )
+ INCLUDE_DIRECTORIES( ${CAIRO_INCLUDE_DIR} )
+ LINK_DIRECTORIES( ${CAIRO_LIBRARY_DIRS} )
+ ENDIF(HAVE_CAIRO)
+
+-FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui)
++IF(WANT_QT4)
++FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui REQUIRED)
++ENDIF(WANT_QT4)
+ IF(QT_FOUND)
+ SET( HAVE_QT 1 )
+ INCLUDE_DIRECTORIES( ${QT_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${QT_LIBRARY_DIRS} )
+ ENDIF(QT_FOUND)
+
+-FIND_PACKAGE( Fltk )
++IF(WANT_FLTK)
++FIND_PACKAGE( FLTK REQUIRED)
++ENDIF(WANT_FLTK)
+ IF(FLTK_FOUND)
+ SET( HAVE_FLTK 1 )
+ INCLUDE_DIRECTORIES( ${FLTK_INCLUDE_DIRS} )
+@@ -159,7 +169,9 @@
+ SET( LIBXML2_LIBRARIES ${LIBXML2_LIBRARIES} PARENT_SCOPE)
+ ENDIF(LIBXML2_FOUND)
+
+-FIND_PACKAGE( LibRaw )
++IF(WANT_LIBRAW)
++FIND_PACKAGE( LibRaw REQUIRED )
++ENDIF(WANT_LIBRAW)
+ IF( HAVE_LIBRAW )
+ # TRY_COMPILE(
+ # HAVE_LIBRAW_REALLY
+@@ -182,7 +194,9 @@
+ MESSAGE( "HAVE_LIBRAW_PLUGIN: ${HAVE_LIBRAW_PLUGIN}" )
+ ENDIF()
+
+-FIND_PACKAGE( Exif2 )
++IF(WANT_EXIV2)
++FIND_PACKAGE( Exif2 REQUIRED )
++ENDIF(WANT_EXIV2)
+ IF(HAVE_EXIV2)
+ INCLUDE_DIRECTORIES( ${EXIV2_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${EXIV2_LIBRARY_DIRS} )
+--- oyranos-0.9.4/CMakeLists.txt
++++ oyranos-0.9.4/CMakeLists.txt
+@@ -41,7 +41,7 @@
+
+
+ # detect top level projects
+-FIND_PACKAGE( Yajl )
++FIND_PACKAGE( Yajl REQUIRED )
+ IF( HAVE_YAJL )
+ INCLUDE_DIRECTORIES( ${YAJL_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${YAJL_LIBRARY_DIRS} )
+@@ -51,71 +51,15 @@
+ IF( NOT HAVE_YAJL_VERSION_H )
+ INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/yajl/ )
+ ENDIF( NOT HAVE_YAJL_VERSION_H )
+-ELSE( HAVE_YAJL )
+- IF(CMAKE_VERSION VERSION_GREATER 2.8.0)
+- include(ExternalProject)
+- ExternalProject_Add( yajl
+- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/yajl
+- CONFIGURE_COMMAND cmake ${CMAKE_CURRENT_SOURCE_DIR}/yajl
+- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/yajl
+- BUILD_COMMAND ${MAKE}
+- # skip installation
+- INSTALL_COMMAND echo )
+- INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/yajl )
+- LINK_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR}/yajl )
+- SET( YAJL_LIBRARIES yajl-static )
+- ENDIF()
+-
+ ENDIF( HAVE_YAJL )
+
+-FIND_PACKAGE( Elektra )
++FIND_PACKAGE( Elektra REQUIRED )
++SET( HAVE_ELEKTRA 1 )
+ IF(HAVE_ELEKTRA)
+ SET( ELEKTRA_SPEC "Requires: elektra 0.7
+ BuildRequires: elektra-devel" )
+ INCLUDE_DIRECTORIES( ${ELEKTRA_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${ELEKTRA_LIBRARY_DIRS} )
+-ELSE(HAVE_ELEKTRA)
+- SET( ELEKTRA_VERSION elektra-0.7.1 )
+- MESSAGE( "-- Using internal Elektra: ${ELEKTRA_VERSION}" )
+- INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/${ELEKTRA_VERSION}/src/include
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/include )
+- SET( ELEKTRA_LIBRARIES_STATIC
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdb.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbhandle.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-key.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyset.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-trie.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbhighlevel.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbcapability.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyhelpers.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keymeta.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyname.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keytest.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyvalue.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-serialize.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-split.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-exported_symbols.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libloader/libloader_static_a-kdbLibLoader.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libhelper/libhelper_static_a-internal.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libhelper/libhelper_static_a-helper.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/backends/filesys/libelektra_filesys_a-filesys.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektratools/libelektratools_a-kdbtools.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektratools/libelektratools_a-stream.o
+- )
+- SET( ELEKTRA_LIBRARIES
+- ${LIBXML2_LIBRARIES}
+- )
+- IF(CMAKE_VERSION VERSION_GREATER 2.8.0)
+- include(ExternalProject)
+- ExternalProject_Add( ${ELEKTRA_VERSION}
+- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/${ELEKTRA_VERSION}
+- # GCC flags (-fPIC) will fail on Windows, without we get relocation R_X86_64_32 errors
+- CONFIGURE_COMMAND CFLAGS=-fPIC ${CMAKE_CURRENT_SOURCE_DIR}/${ELEKTRA_VERSION}/configure --enable-static --enable-shared=false
+- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${ELEKTRA_VERSION}
+- BUILD_COMMAND ${MAKE}
+- # skip installation
+- INSTALL_COMMAND echo )
+- ENDIF()
+ ENDIF(HAVE_ELEKTRA)
+
+ #now add all directories
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-array-access.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-array-access.patch
new file mode 100644
index 000000000000..0c5ca3c83ba5
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-array-access.patch
@@ -0,0 +1,27 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Mon, 18 Mar 2013 18:07:16 +0000 (+0100)
+Subject: * [oyX1]: fix array access
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=11d848a38608deeeca61288d46cfca55c6916788
+
+* [oyX1]: fix array access
+---
+
+diff --git a/src/modules/devices/oyranos_monitor_x11.c b/src/modules/devices/oyranos_monitor_x11.c
+index a530a81..bac09c1 100644
+--- a/src/modules/devices/oyranos_monitor_x11.c
++++ b/src/modules/devices/oyranos_monitor_x11.c
+@@ -1329,6 +1329,13 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+ int n_scr_info = 0;
+ XineramaScreenInfo *scr_info = XineramaQueryScreens( display,
+ &n_scr_info );
++ if(n_scr_info <= selected_screen)
++ {
++ XFree( scr_info );
++ oyX1Monitor_release_( &disp );
++ return 0;
++ }
++
+ geo[0] = scr_info[selected_screen].x_org;
+ geo[1] = scr_info[selected_screen].y_org;
+ geo[2] = scr_info[selected_screen].width;
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-double-object-release.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-double-object-release.patch
new file mode 100644
index 000000000000..1cbdf47a79f2
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-double-object-release.patch
@@ -0,0 +1,35 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 20 Mar 2013 17:15:17 +0000 (+0100)
+Subject: * [core]: fix double object release
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=6214cf15fafae52d67233d27462488487091d8d6
+
+* [core]: fix double object release
+
+... which was revealed by valgrind
+---
+
+diff --git a/src/API_generated/oyranos_devices.c b/src/API_generated/oyranos_devices.c
+index 4ed5138..8cee0c8 100644
+--- a/src/API_generated/oyranos_devices.c
++++ b/src/API_generated/oyranos_devices.c
+@@ -1896,7 +1896,6 @@ OYAPI int OYEXPORT
+ oyConfigs_MoveIn( taxi_devices, &taxi_dev, -1 );
+ }
+ oyConfigs_Release( &configs_ );
+- oyOptions_Release( &options );
+ oyFree_m_(ranks);
+ }
+
+diff --git a/src/templates/oyranos_devices.template.c b/src/templates/oyranos_devices.template.c
+index 586ba36..ff555e3 100644
+--- a/src/templates/oyranos_devices.template.c
++++ b/src/templates/oyranos_devices.template.c
+@@ -1881,7 +1881,6 @@ OYAPI int OYEXPORT
+ oyConfigs_MoveIn( taxi_devices, &taxi_dev, -1 );
+ }
+ oyConfigs_Release( &configs_ );
+- oyOptions_Release( &options );
+ oyFree_m_(ranks);
+ }
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-oyRankMap-helper-functions-crashes.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-oyRankMap-helper-functions-crashes.patch
new file mode 100644
index 000000000000..27c06cd81551
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-oyRankMap-helper-functions-crashes.patch
@@ -0,0 +1,53 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Fri, 22 Feb 2013 18:42:23 +0000 (+0100)
+Subject: * [sources]: fix counting in oyRankMap data
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=c2feb3e1f1ab45702f98c8728898eab1ee849cd4
+
+* [sources]: fix counting in oyRankMap data
+
+2013-04-21: backport to oyranos-0.9.4, remove (duplicate) patch for nonexistent file
+
+This fixes crashes in several oyRankMap helper functions.
+---
+
+diff --git a/src/API_generated/oyConfig_s.c b/src/API_generated/oyConfig_s.c
+index 8ec0ff6..7ea1f3b 100644
+--- a/src/API_generated/oyConfig_s.c
++++ b/src/API_generated/oyConfig_s.c
+@@ -983,14 +983,14 @@ oyRankMap * oyRankMapCopy ( const oyRankMap * rank_map,
+ {
+ oyRankMap * map = 0;
+ int error = !rank_map;
+- int n = 0, i;
++ int n = 0, i = 0;
+
+ if(!allocateFunc)
+ allocateFunc = oyAllocateFunc_;
+
+ if(error <= 0)
+ {
+- while( rank_map[n++].key ) {}
++ while( rank_map[i++].key ) ++n;
+
+ oyAllocHelper_m_( map, oyRankMap, n + 1, allocateFunc, error = 1 );
+ }
+@@ -1025,7 +1025,7 @@ OYAPI void OYEXPORT
+ oyDeAlloc_f deAllocateFunc )
+ {
+ int error = !rank_map || !*rank_map;
+- int n = 0, i;
++ int n = 0, i = 0;
+
+ if(!deAllocateFunc)
+ deAllocateFunc = oyDeAllocateFunc_;
+@@ -1033,7 +1033,7 @@ OYAPI void OYEXPORT
+ if(error <= 0)
+ {
+ oyRankMap * map = *rank_map;
+- while( (*rank_map)[n++].key ) {}
++ while( (*rank_map)[i++].key ) ++n;
+ for(i = 0; i < n; ++i)
+ {
+ deAllocateFunc( map[i].key ); map[i].key = 0;
+--
+1.5.6.5
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-oyStringSegment-crash.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-oyStringSegment-crash.patch
new file mode 100644
index 000000000000..7de609ba31dc
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-oyStringSegment-crash.patch
@@ -0,0 +1,25 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 13 Mar 2013 13:59:19 +0000 (+0100)
+Subject: * [core]: fix oyStringSegment_() crash
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=cf495d5ede29f7211e498217c4d06428f944bac3
+
+2013-04-21: backport to oyranos-0.9.1, remove unrelated oyStringReplace_ hunk
+
+* [core]: fix oyStringSegment_() crash
+---
+
+diff --git a/src/liboyranos_core/oyranos_string.c b/src/liboyranos_core/oyranos_string.c
+index 525ce7e..1d214c0 100644
+--- a/src/liboyranos_core/oyranos_string.c
++++ b/src/liboyranos_core/oyranos_string.c
+@@ -499,7 +499,7 @@ char * oyStringSegment_ ( char * text,
+ for(; i < segment; ++i)
+ {
+ t = oyStrchr_( t, delimiter );
+- ++t;
++ if(t) ++t;
+ }
+
+ end_pos = (uintptr_t) oyStrchr_(t, delimiter);
+--
+1.5.6.5
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-runpaths.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-runpaths.patch
new file mode 100644
index 000000000000..0287c119900b
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-runpaths.patch
@@ -0,0 +1,121 @@
+From b8f4a5fe0cea02878de106f5d02751e922438275 Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Wed, 3 Apr 2013 10:01:04 +0200
+Subject: [PATCH 1/1] * [build]: fix has insecure RUNPATHs
+
+https://sourceforge.net/tracker/?func=detail&atid=879553&aid=3609840&group_id=177017
+
+2013-04-03: backport to oyranos-0.9.4:
+ merged 1-line change from commit 5b63d318e53ae8b8f3a0ccb166c97acf6103caac
+
+---
+ CMakeLists.txt | 2 +-
+ src/examples/CMakeLists.txt | 26 ++++++++++++++++++++++++++
+ src/examples/oforms/CMakeLists.txt | 28 ++++------------------------
+ src/tools/CMakeLists.txt | 2 +-
+ 4 files changed, 32 insertions(+), 26 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f24965c..6e9c8fb 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -10,7 +10,7 @@ SET (OYRANOS_DEVEL_MONTH 01)
+ SET (OYRANOS_DEVEL_YEAR 2013)
+
+ SET (PACKAGE_NAME "oyranos")
+-set (PACKAGE_DESCRIPTION "Oyranos is a Colour Management System (CMS) on operating system level. It allows to match predictably input device colours to output device colours across supporting applications. One goal is to make colour management useful for all users in a automated fashion and regardless of any technical knowledge.")
++SET (PACKAGE_DESCRIPTION "Oyranos is a Colour Management System (CMS) on operating system level. It allows to match predictably input device colours to output device colours across supporting applications. One goal is to make colour management useful for all users in a automated fashion and regardless of any technical knowledge.")
+
+ SET( OY_CMMSUBPATH "colour/modules" )
+ SET( OY_METASUBPATH "${PACKAGE_NAME}" )
+diff --git a/src/examples/CMakeLists.txt b/src/examples/CMakeLists.txt
+index dfe807c..4adfdc9 100644
+--- a/src/examples/CMakeLists.txt
++++ b/src/examples/CMakeLists.txt
+@@ -60,4 +60,30 @@ IF( FLTK_FOUND )
+ INSTALL (TARGETS oyranos-config-fltk DESTINATION bin)
+ ENDIF()
+
++
+ ADD_SUBDIRECTORY( oforms )
++
++# oFORMS for a Oyranos CLI renderer and parser
++ADD_EXECUTABLE( oyranos-xforms oforms/oyranos_xforms.c )
++TARGET_LINK_LIBRARIES( oyranos-xforms
++ ${OY_OFORMS_LIB} oyranos ${EXTRA_LIBS} )
++#INSTALL (TARGETS oyranos-xforms DESTINATION bin)
++
++# oFORMS for a Oyranos FLTK renderer and parser
++IF( FLTK_FOUND )
++ ADD_EXECUTABLE( oyranos-xforms-fltk
++ oforms/oyranos_forms_fltk.cxx
++ oforms/oyranos_widgets_fltk.cxx
++ oforms/oyranos_xforms_fltk.cxx
++ )
++ TARGET_LINK_LIBRARIES ( oyranos-xforms-fltk oyranos ${EXTRA_LIBS}
++ ${OY_OFORMS_LIB} ${FLTK_LIBRARIES} )
++ #INSTALL (TARGETS oyranos-xforms-fltk DESTINATION bin)
++ENDIF()
++
++# oFORMS for a Oyranos module generation
++ADD_EXECUTABLE( oyranos-xforms-modules oforms/oyranos_xforms_modules.c )
++TARGET_LINK_LIBRARIES( oyranos-xforms-modules
++ oyranos ${OY_OFORMS_LIB} ${EXTRA_LIBS} )
++INSTALL (TARGETS oyranos-xforms-modules DESTINATION bin)
++
+diff --git a/src/examples/oforms/CMakeLists.txt b/src/examples/oforms/CMakeLists.txt
+index 4d248ec..c0ff965 100644
+--- a/src/examples/oforms/CMakeLists.txt
++++ b/src/examples/oforms/CMakeLists.txt
+@@ -1,31 +1,11 @@
+ #oFORMS basics
+-SET( OY_OFORMS_LIB ${PACKAGE_NAME}_forms_cmd_line )
++SET( OY_OFORMS_LIB ${PACKAGE_NAME}_forms_cmd_line-static )
++SET( OY_OFORMS_LIB ${OY_OFORMS_LIB} PARENT_SCOPE )
+ ADD_LIBRARY( ${OY_OFORMS_LIB}
+- STATIC ${OY_OFORMS_LIB}.c )
++ STATIC ${PACKAGE_NAME}_forms_cmd_line.c )
+ TARGET_LINK_LIBRARIES ( ${OY_OFORMS_LIB} oyranos ${EXTRA_LIBS} )
+
+-# oFORMS for a Oyranos CML renderer and parser
+-ADD_EXECUTABLE( ../oyranos-xforms oyranos_xforms.c )
+-TARGET_LINK_LIBRARIES( ../oyranos-xforms
+- oyranos ${OY_OFORMS_LIB} ${EXTRA_LIBS} )
+-#INSTALL (TARGETS oyranos-xforms DESTINATION bin)
++MESSAGE( "-- OY_OFORMS_LIB: ${OY_OFORMS_LIB}" )
+
+-# oFORMS for a Oyranos FLTK renderer and parser
+-IF( FLTK_FOUND )
+- ADD_EXECUTABLE( ../oyranos-xforms-fltk
+- oyranos_forms_fltk.cxx
+- oyranos_widgets_fltk.cxx
+- oyranos_xforms_fltk.cxx
+- )
+- TARGET_LINK_LIBRARIES ( ../oyranos-xforms-fltk oyranos ${EXTRA_LIBS}
+- ${FLTK_LIBRARIES} )
+- #INSTALL (TARGETS oyranos-xforms-fltk DESTINATION bin)
+-ENDIF()
+-
+-# oFORMS for a Oyranos module generation
+-ADD_EXECUTABLE( ../oyranos-xforms-modules oyranos_xforms_modules.c )
+-TARGET_LINK_LIBRARIES( ../oyranos-xforms-modules
+- oyranos ${OY_OFORMS_LIB} ${EXTRA_LIBS} )
+-INSTALL (TARGETS ../oyranos-xforms-modules DESTINATION bin)
+ INSTALL (FILES ./oyranos-xforms-modules.1 DESTINATION share/man/man1 )
+
+diff --git a/src/tools/CMakeLists.txt b/src/tools/CMakeLists.txt
+index cb23ace..3b2572a 100644
+--- a/src/tools/CMakeLists.txt
++++ b/src/tools/CMakeLists.txt
+@@ -30,7 +30,7 @@ ENDIF()
+
+ # colour conversion
+ ADD_EXECUTABLE( oyranos-icc "${CMAKE_CURRENT_SOURCE_DIR}/oyranos_convert.c" )
+-TARGET_LINK_LIBRARIES( oyranos-icc oyranos ${EXTRA_LIBS} )
++TARGET_LINK_LIBRARIES( oyranos-icc oyranos ${EXTRA_LIBS} oyranos_forms_cmd_line-static )
+ INSTALL (TARGETS oyranos-icc DESTINATION bin)
+
+ ADD_SUBDIRECTORY (qcmsevents)
+--
+1.5.6.5
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-fix-typos-and-grammar.patch b/media-libs/oyranos/files/oyranos-0.9.4-fix-typos-and-grammar.patch
new file mode 100644
index 000000000000..790c42475aef
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-fix-typos-and-grammar.patch
@@ -0,0 +1,968 @@
+commit bf50dbd47ddef1ccb49bb44cbf893ae7844240d6
+Author: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Wed Apr 3 02:14:21 2013 +0200
+
+ more typo and grammar fixes
+
+diff --git a/po/cs.po b/po/cs.po
+index 9440519..a99974e 100644
+--- a/po/cs.po
++++ b/po/cs.po
+@@ -290,7 +290,7 @@ msgstr "Již aktivováno"
+
+ #: liboyranos_config/oyranos_texts.c:273
+ #, fuzzy
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr "umí zobrazit informace o profilu ICC"
+
+ #: modules/oyranos_cmm_oyra_image.c:1065
+@@ -417,7 +417,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+ "Způsob transformace barev pro simulaci. Většina uživatelů použije funkci "
+ "simulace pouze na obrazovce, pro což se hodí relativní kolorimetrický záměr. "
+@@ -670,7 +670,7 @@ msgstr "Transformace barev mohou být interně uloženy různými způsoby"
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -1024,7 +1024,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+ "Rozhodnout co dělat, když se výchozí barvový prostor nerovná aktuálnímu."
+
+@@ -2179,7 +2179,7 @@ msgstr "Oyranos X11"
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+@@ -2372,27 +2372,27 @@ msgid "Postscript CRD Information"
+ msgstr "Náhled, saturace"
+
+ #: liboyranos_config/oyranos_texts.c:336
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr "Preferovaný CIE*Lab barvový prostor pro editaci"
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:316
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr "Preferovaný barvový prostor CMYK pro editaci"
+
+ #: liboyranos_config/oyranos_texts.c:346
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr "Preferovaný barvový prostor pro editaci v šedi."
+
+ #: liboyranos_config/oyranos_texts.c:306
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr "Preferovaný barvový prostor RGB pro editaci"
+
+ #: liboyranos_config/oyranos_texts.c:326
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr "Preferovaný barvový prostor XYZ pro editaci"
+
+ #. choices
+@@ -2622,7 +2622,7 @@ msgstr "Záměr transformace"
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+ "Záměr pro transformace mezi různými barvovými prostory se obvykle volí "
+@@ -2932,7 +2932,7 @@ msgstr "The client side window data handler of Oyranos."
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -3268,7 +3268,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:347
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr ""
+ "Preferovaný barvový prostor editace v šedi by měl popisovat barvový prostor "
+@@ -3283,13 +3283,13 @@ msgstr ""
+ "barvový prostor jako např. sRGB."
+
+ #: liboyranos_config/oyranos_texts.c:327
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr "Preferovaný barvový prostor editace XYZ by měl popisovat CIE*XYZ."
+
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+ "Barvový prostor pro simulaci zastupuje skutečné zařízení, jež má být "
+@@ -3387,7 +3387,7 @@ msgstr "Tepelná vosková tiskárna"
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+ "Toto nastavení rozhoduje, co se má dělat v případě, že barvy nemají přiřazen "
+ "žádný barvový prostor. Obvykle by měl být přiřazen příslušný předpokládaný "
+diff --git a/po/de.po b/po/de.po
+index 80a106a..80869df 100644
+--- a/po/de.po
++++ b/po/de.po
+@@ -292,7 +292,7 @@ msgid "Already enabled"
+ msgstr "Bereits eingeschalten"
+
+ #: liboyranos_config/oyranos_texts.c:273
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr "Details zu ICC Profilen in Ihrem System"
+
+ #: modules/oyranos_cmm_oyra_image.c:1065
+@@ -415,7 +415,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+ "Verhalten der Farbübertragung bei der Simulation. Die meisten Nutzer "
+ "wünschen eine Simulation nur an einem Bildschirm. Die relativ farbmetrische "
+@@ -652,7 +652,7 @@ msgstr "Farbumwandlung können intern unterschiedlich gespeichert werden"
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -1000,7 +1000,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+ "Was ist zu tuen falls Standardfarbräume nicht mit den Eingestellten "
+ "übereinstimmen."
+@@ -2100,7 +2100,7 @@ msgstr "Oyranos X11"
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+@@ -2283,27 +2283,27 @@ msgid "Postscript CRD Information"
+ msgstr "Postscript CRD Information"
+
+ #: liboyranos_config/oyranos_texts.c:336
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr "Bevorzugter CIE*Lab Editierfarbraum"
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr "Bevorzugte CMM"
+
+ #: liboyranos_config/oyranos_texts.c:316
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr "Bevorzugter Cmyk Editierfarbraum"
+
+ #: liboyranos_config/oyranos_texts.c:346
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr "Bevorzugter Grau Editierfarbraum"
+
+ #: liboyranos_config/oyranos_texts.c:306
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr "Bevorzugter Rgb Editierfarbraum"
+
+ #: liboyranos_config/oyranos_texts.c:326
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr "Bevorzugter XYZ Editierfarbraum"
+
+ #. choices
+@@ -2520,7 +2520,7 @@ msgstr "Übertragungsart: "
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+
+@@ -2817,7 +2817,7 @@ msgstr "Die benutzerseitige Fensterdatenagent von Oyranos."
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -3146,7 +3146,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:347
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr ""
+ "Der bevorzugte Grautonfarbraum soll Farben mit einem einzigen "
+@@ -3159,13 +3159,13 @@ msgid ""
+ msgstr "Der bevorzugte Rgb Editierfarbraum sollte wohlgeformt sein."
+
+ #: liboyranos_config/oyranos_texts.c:327
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr "Der bevorzugter XYZ Editierfarbraum soll CIE*XYZ definieren."
+
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+ "Der Simulationsfarbraum stellt das Farbverhalten eines realen Gerätes dar. "
+@@ -3257,7 +3257,7 @@ msgstr "Thermischer Wachsdrucker"
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+ "Die Einstellung entscheidet was mit Farben ohne Farbprofil geschehen soll. "
+ "Typischerweise wird das vermutete Farbprofil automatisch zugewiesen."
+diff --git a/po/eo.po b/po/eo.po
+index 787905a..bcf0dfc 100644
+--- a/po/eo.po
++++ b/po/eo.po
+@@ -308,7 +308,7 @@ msgid "Already enabled"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:273
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr ""
+
+ #: modules/oyranos_cmm_oyra_image.c:1065
+@@ -435,7 +435,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+
+ #: modules/oyranos_cmm_lraw.cpp:1041
+@@ -665,7 +665,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -992,7 +992,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:154
+@@ -2067,7 +2067,7 @@ msgstr ""
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+@@ -2235,31 +2235,31 @@ msgstr "kolora"
+
+ #: liboyranos_config/oyranos_texts.c:336
+ #, fuzzy
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr "kolora"
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:316
+ #, fuzzy
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr "kolora"
+
+ #: liboyranos_config/oyranos_texts.c:346
+ #, fuzzy
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr "kolora"
+
+ #: liboyranos_config/oyranos_texts.c:306
+ #, fuzzy
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr "kolora"
+
+ #: liboyranos_config/oyranos_texts.c:326
+ #, fuzzy
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr "kolora"
+
+ #. choices
+@@ -2478,7 +2478,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+
+@@ -2748,7 +2748,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -2962,7 +2962,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:347
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr ""
+
+@@ -2973,13 +2973,13 @@ msgid ""
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:327
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+
+@@ -3055,7 +3055,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+
+ #: modules/oyranos_cmm_oyIM_profile.c:1167
+diff --git a/po/eu.po b/po/eu.po
+index f86f417..277b42d 100644
+--- a/po/eu.po
++++ b/po/eu.po
+@@ -315,7 +315,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:273
+ #, fuzzy
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr "Oyranos-en ezarpenak"
+
+ #: modules/oyranos_cmm_oyra_image.c:1065
+@@ -447,7 +447,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+
+ #: modules/oyranos_cmm_lraw.cpp:1041
+@@ -679,7 +679,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -1031,7 +1031,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:154
+@@ -2167,7 +2167,7 @@ msgstr "Oyranos-en ezarpenak"
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+@@ -2349,31 +2349,31 @@ msgstr "Aurrebista, saturatua"
+
+ #: liboyranos_config/oyranos_texts.c:336
+ #, fuzzy
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr "Kolore-espazioa"
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:316
+ #, fuzzy
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr "Kolore-espazioa"
+
+ #: liboyranos_config/oyranos_texts.c:346
+ #, fuzzy
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr "Kolore-espazioa"
+
+ #: liboyranos_config/oyranos_texts.c:306
+ #, fuzzy
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr "Kolore-espazioa"
+
+ #: liboyranos_config/oyranos_texts.c:326
+ #, fuzzy
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr "Kolore-espazioa"
+
+ #. choices
+@@ -2610,7 +2610,7 @@ msgstr "Oyranos-en ezarpenak"
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+
+@@ -2896,7 +2896,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -3113,7 +3113,7 @@ msgstr "Kolore-espazioa"
+ #: liboyranos_config/oyranos_texts.c:347
+ #, fuzzy
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr "Kolore-espazioa"
+
+@@ -3126,13 +3126,13 @@ msgstr "Kolore-espazioa"
+
+ #: liboyranos_config/oyranos_texts.c:327
+ #, fuzzy
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr "Kolore-espazioa"
+
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+
+@@ -3208,7 +3208,7 @@ msgstr "Inprimagailu ezko-termala"
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+
+ #: modules/oyranos_cmm_oyIM_profile.c:1167
+diff --git a/po/fr.po b/po/fr.po
+index f02e45c..737dc28 100644
+--- a/po/fr.po
++++ b/po/fr.po
+@@ -309,7 +309,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:273
+ #, fuzzy
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr "Oyranos Préférences"
+
+ #: modules/oyranos_cmm_oyra_image.c:1065
+@@ -441,7 +441,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+
+ #: modules/oyranos_cmm_lraw.cpp:1041
+@@ -673,7 +673,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -1020,7 +1020,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:154
+@@ -2156,7 +2156,7 @@ msgstr "Oyranos Préférences"
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+@@ -2335,31 +2335,31 @@ msgstr "Aperçu, saturation"
+
+ #: liboyranos_config/oyranos_texts.c:336
+ #, fuzzy
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr "Espace colorimétrique"
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:316
+ #, fuzzy
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr "Espace colorimétrique"
+
+ #: liboyranos_config/oyranos_texts.c:346
+ #, fuzzy
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr "Espace colorimétrique"
+
+ #: liboyranos_config/oyranos_texts.c:306
+ #, fuzzy
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr "Espace colorimétrique"
+
+ #: liboyranos_config/oyranos_texts.c:326
+ #, fuzzy
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr "Espace colorimétrique"
+
+ #. choices
+@@ -2589,7 +2589,7 @@ msgstr "Oyranos Préférences"
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+
+@@ -2870,7 +2870,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -3087,7 +3087,7 @@ msgstr "Espace colorimétrique"
+ #: liboyranos_config/oyranos_texts.c:347
+ #, fuzzy
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr "Espace colorimétrique"
+
+@@ -3100,13 +3100,13 @@ msgstr "Espace colorimétrique"
+
+ #: liboyranos_config/oyranos_texts.c:327
+ #, fuzzy
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr "Espace colorimétrique"
+
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+
+@@ -3182,7 +3182,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+
+ #: modules/oyranos_cmm_oyIM_profile.c:1167
+diff --git a/po/oyranos.pot b/po/oyranos.pot
+index c5f064d..d4eb1f8 100644
+--- a/po/oyranos.pot
++++ b/po/oyranos.pot
+@@ -139,7 +139,7 @@ msgid "Internal stored Size"
+ msgstr ""
+
+ #: API_generated/oyranos_profile.c:66
+-msgid "Prefered CMM"
++msgid "Preferred CMM"
+ msgstr ""
+
+ #: API_generated/oyranos_profile.c:67
+@@ -552,7 +552,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:174
+ msgid ""
+ "Color content can sometimes have no ICC profile assigned. This is a critical "
+-"situation as the system can not properly convert these colors. Therefor the "
++"situation as the system can not properly convert these colors. Therefore the "
+ "color processing parts need to pick some profile as a guess. These settings "
+ "allow to change the picked ICC profile to guide the processing components "
+ "and allow proper conversion and compositing."
+@@ -569,7 +569,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:183
+ msgid ""
+ "The proofing color space represents a real color device for simulation. "
+-"Possible uses cases are to simulate a print machine, a viewing environment "
++"Possible use cases are to simulate a print machine, a viewing environment "
+ "in a theater or a expected small monitor gamut."
+ msgstr ""
+
+@@ -631,7 +631,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:219
+ msgid ""
+ "The conversion between color spaces of different shape and size can happen "
+-"in various ways. The Perceptual rendering intent is usual the best choice "
++"in various ways. The Perceptual rendering intent is usually the best choice "
+ "for photographs and artistic imagery. It is used in many automatic systems. "
+ "The Relative Colorimetric rendering intent provides a well-defined standard, "
+ "one-to-one color mapping, but without applying white point adaption. This "
+@@ -666,7 +666,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:236
+ msgid ""
+-"Decide what to do when the default color spaces dont match the current ones."
++"Decide what to do when the default color spaces don't match the current ones."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:237
+@@ -720,7 +720,7 @@ msgid "Profile Information"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:273
+-msgid "Anylyze ICC profile information on your system."
++msgid "Analyze ICC profile information on your system."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:284
+@@ -743,7 +743,7 @@ msgid "Editing Rgb"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:306
+-msgid "Prefered Rgb Editing Color Space"
++msgid "Preferred Rgb Editing Color Space"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:307
+@@ -757,7 +757,7 @@ msgid "Editing Cmyk"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:316
+-msgid "Prefered Cmyk Editing Color Space"
++msgid "Preferred Cmyk Editing Color Space"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:317
+@@ -771,11 +771,11 @@ msgid "Editing XYZ"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:326
+-msgid "Prefered XYZ Editing Color Space"
++msgid "Preferred XYZ Editing Color Space"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:327
+-msgid "The preferred XYZ Editing Color Space shall decribe CIE*XYZ."
++msgid "The preferred XYZ Editing Color Space shall describe CIE*XYZ."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:335
+@@ -783,7 +783,7 @@ msgid "Editing Lab"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:336
+-msgid "Prefered CIE*Lab Editing Color Space"
++msgid "Preferred CIE*Lab Editing Color Space"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:337
+@@ -795,12 +795,12 @@ msgid "Editing Gray"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:346
+-msgid "Prefered Gray Editing Color Space"
++msgid "Preferred Gray Editing Color Space"
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:347
+ msgid ""
+-"The preferred Gray Editing Color Space shall describe a single lighness "
++"The preferred Gray Editing Color Space shall describe a single lightness "
+ "channel color space for grayscale images."
+ msgstr ""
+
+@@ -910,7 +910,7 @@ msgstr ""
+ #: liboyranos_config/oyranos_texts.c:429
+ msgid ""
+ "This setting decides what to do in the case that colors have no color space "
+-"assigned. Typical the according assumed ICC profile should be assigned."
++"assigned. Typically the according assumed ICC profile should be assigned."
+ msgstr ""
+
+ #. choices
+@@ -1012,7 +1012,7 @@ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:479
+ msgid ""
+-"Rendering intent for color space transformations is typical the Relative "
++"Rendering intent for color space transformations is typically the Relative "
+ "Colorimetric intent plus Black Point Compensation or the Perceptual intent."
+ msgstr ""
+
+@@ -1067,7 +1067,7 @@ msgid ""
+ "Behaviour of color space transformation for proofing. Most people want a "
+ "preview on screen only. The Relative Colorimetric intent is right for that. "
+ "The Absolute Colorimetric intent needs a very careful profiling and non-"
+-"trivial setup, but allowes for side-by-side comparisions."
++"trivial setup, but allows for side-by-side comparisons."
+ msgstr ""
+
+ #: liboyranos_config/oyranos_texts.c:507
+@@ -1168,7 +1168,7 @@ msgstr ""
+ #. HTML
+ #: liboyranos_config/oyranos_xml.c:1036
+ msgid ""
+-"Oyranos allowes detailed settings like preferred editing color spaces and "
++"Oyranos allows detailed settings like preferred editing color spaces and "
+ "the behaviour of color conversions or simulation. Oyranos reduces the work "
+ "involved in all color management related decisions through automation, "
+ "useful defaults and grouping of settings in selectable policies."
+diff --git a/src/liboyranos_config/oyranos_texts.c b/src/liboyranos_config/oyranos_texts.c
+index f7a7244..7a86a42 100644
+--- a/src/liboyranos_config/oyranos_texts.c
++++ b/src/liboyranos_config/oyranos_texts.c
+@@ -171,7 +171,7 @@ oyOptionStringsTranslate_ ()
+ oyGROUP_DEFAULT_PROFILES, 0, 0,
+ _("Assumed Color Space"),
+ _("Assumed Color Space for untagged colors"),
+- _("Color content can sometimes have no ICC profile assigned. This is a critical situation as the system can not properly convert these colors. Therefor the color processing parts need to pick some profile as a guess. These settings allow to change the picked ICC profile to guide the processing components and allow proper conversion and compositing."),
++ _("Color content can sometimes have no ICC profile assigned. This is a critical situation as the system can not properly convert these colors. Therefore the color processing parts need to pick some profile as a guess. These settings allow to change the picked ICC profile to guide the processing components and allow proper conversion and compositing."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ NULL,
+@@ -180,7 +180,7 @@ oyOptionStringsTranslate_ ()
+ 0, 0, 0,
+ _("Proofing Color Space"),
+ _("Color Space for Simulating real devices"),
+- _("The proofing color space represents a real color device for simulation. Possible uses cases are to simulate a print machine, a viewing environment in a theater or a expected small monitor gamut."),
++ _("The proofing color space represents a real color device for simulation. Possible use cases are to simulate a print machine, a viewing environment in a theater or a expected small monitor gamut."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ NULL,
+@@ -216,7 +216,7 @@ oyOptionStringsTranslate_ ()
+ oyGROUP_BEHAVIOUR, 0, 0,
+ _("Rendering"),
+ _("The kind of ICC gamut mapping for transforming colors between differently sized color spaces"),
+- _("The conversion between color spaces of different shape and size can happen in various ways. The Perceptual rendering intent is usual the best choice for photographs and artistic imagery. It is used in many automatic systems. The Relative Colorimetric rendering intent provides a well-defined standard, one-to-one color mapping, but without applying white point adaption. This can lead to color clipping in case of colors falling outside the target gamut as a price for the otherwise colorimetric correctness. The Relative Colorimetric intent is often used in combination with Black Point Compensation. The Saturation rendering intent shall provide an optimal use of saturated device colors. The Absolute Colorimetric rendering intent works like the relative colorimetric one except the white point is adapted. All rendering intents beside the colorimetric ones rely on the color tables designed by the profile vendor."),
++ _("The conversion between color spaces of different shape and size can happen in various ways. The Perceptual rendering intent is usually the best choice for photographs and artistic imagery. It is used in many automatic systems. The Relative Colorimetric rendering intent provides a well-defined standard, one-to-one color mapping, but without applying white point adaption. This can lead to color clipping in case of colors falling outside the target gamut as a price for the otherwise colorimetric correctness. The Relative Colorimetric intent is often used in combination with Black Point Compensation. The Saturation rendering intent shall provide an optimal use of saturated device colors. The Absolute Colorimetric rendering intent works like the relative colorimetric one except the white point is adapted. All rendering intents beside the colorimetric ones rely on the color tables designed by the profile vendor."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ NULL,
+@@ -233,7 +233,7 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_GROUP_TREE, oyWIDGET_GROUP_BEHAVIOUR_MISSMATCH, 1,
+ oyGROUP_BEHAVIOUR, 0, 0,
+ _("Mismatching"),
+- _("Decide what to do when the default color spaces dont match the current ones."),
++ _("Decide what to do when the default color spaces don't match the current ones."),
+ _("Decide how to resolve conflicts with input color spaces and current settings."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+@@ -270,7 +270,7 @@ oyOptionStringsTranslate_ ()
+ 0, 0, 0,
+ _("Information"),
+ _("Profile Information"),
+- _("Anylyze ICC profile information on your system."),
++ _("Analyze ICC profile information on your system."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ NULL,
+@@ -303,7 +303,7 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_DEFAULT_PROFILE, oyWIDGET_EDITING_RGB, 2,
+ oyGROUP_DEFAULT_PROFILES, oyGROUP_DEFAULT_PROFILES_EDIT, 0,
+ _("Editing Rgb"),
+- _("Prefered Rgb Editing Color Space"),
++ _("Preferred Rgb Editing Color Space"),
+ _("The preferred Rgb Editing Color Space should represent a well behaving color space like sRGB."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+@@ -313,7 +313,7 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_DEFAULT_PROFILE, oyWIDGET_EDITING_CMYK, 2,
+ oyGROUP_DEFAULT_PROFILES, oyGROUP_DEFAULT_PROFILES_EDIT, 0,
+ _("Editing Cmyk"),
+- _("Prefered Cmyk Editing Color Space"),
++ _("Preferred Cmyk Editing Color Space"),
+ _("The preferred Cmyk Editing Color Space should represent a color space that complies to well defined printing conditions like FOGRA or SWOP."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+@@ -323,8 +323,8 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_DEFAULT_PROFILE, oyWIDGET_EDITING_XYZ, 2,
+ oyGROUP_DEFAULT_PROFILES, oyGROUP_DEFAULT_PROFILES_EDIT, 0,
+ _("Editing XYZ"),
+- _("Prefered XYZ Editing Color Space"),
+- _("The preferred XYZ Editing Color Space shall decribe CIE*XYZ."),
++ _("Preferred XYZ Editing Color Space"),
++ _("The preferred XYZ Editing Color Space shall describe CIE*XYZ."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ OY_DEFAULT_EDITING_XYZ_PROFILE,
+@@ -333,7 +333,7 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_DEFAULT_PROFILE, oyWIDGET_EDITING_LAB, 2,
+ oyGROUP_DEFAULT_PROFILES, oyGROUP_DEFAULT_PROFILES_EDIT, 0,
+ _("Editing Lab"),
+- _("Prefered CIE*Lab Editing Color Space"),
++ _("Preferred CIE*Lab Editing Color Space"),
+ _("The preferred CIE*Lab Editing Color Space shall describe the CIE*Lab."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+@@ -343,8 +343,8 @@ oyOptionStringsTranslate_ ()
+ oySET_OPTIONS_M_( oyWIDGETTYPE_DEFAULT_PROFILE, oyWIDGET_EDITING_GRAY, 2,
+ oyGROUP_DEFAULT_PROFILES, oyGROUP_DEFAULT_PROFILES_EDIT, 0,
+ _("Editing Gray"),
+- _("Prefered Gray Editing Color Space"),
+- _("The preferred Gray Editing Color Space shall describe a single lighness channel color space for grayscale images."),
++ _("Preferred Gray Editing Color Space"),
++ _("The preferred Gray Editing Color Space shall describe a single lightness channel color space for grayscale images."),
+ 0, /* choices */
+ NULL, NULL, NULL, NULL,
+ OY_DEFAULT_EDITING_GRAY_PROFILE,
+@@ -426,7 +426,7 @@ oyOptionStringsTranslate_ ()
+ oyGROUP_BEHAVIOUR, oyGROUP_BEHAVIOUR_MISSMATCH, 0,
+ _("No Image profile"),
+ _("Image has no color space embedded. What default action shall be performed?"),
+- _("This setting decides what to do in the case that colors have no color space assigned. Typical the according assumed ICC profile should be assigned."),
++ _("This setting decides what to do in the case that colors have no color space assigned. Typically the according assumed ICC profile should be assigned."),
+ 3, /* choices */
+ _("Assign No Profile"),_("Assign Assumed Profile"),_("Prompt"), NULL,
+ OY_ACTION_UNTAGGED_ASSIGN,
+@@ -476,7 +476,7 @@ oyOptionStringsTranslate_ ()
+ oyGROUP_BEHAVIOUR, oyGROUP_BEHAVIOUR_RENDERING, 0,
+ _("Rendering Intent"),
+ _("Rendering intent for color space transformations."),
+- _("Rendering intent for color space transformations is typical the Relative Colorimetric intent plus Black Point Compensation or the Perceptual intent."),
++ _("Rendering intent for color space transformations is typically the Relative Colorimetric intent plus Black Point Compensation or the Perceptual intent."),
+ 4, /* choices */
+ _("Perceptual"),_("Relative Colorimetric"),_("Saturation"),_("Absolute Colorimetric"),
+ OY_DEFAULT_RENDERING_INTENT,
+@@ -496,7 +496,7 @@ oyOptionStringsTranslate_ ()
+ oyGROUP_BEHAVIOUR, oyGROUP_BEHAVIOUR_PROOF, 0,
+ _("Proofing Rendering Intent"),
+ _("Behaviour of color space transformation for proofing"),
+- _("Behaviour of color space transformation for proofing. Most people want a preview on screen only. The Relative Colorimetric intent is right for that. The Absolute Colorimetric intent needs a very careful profiling and non-trivial setup, but allowes for side-by-side comparisions."),
++ _("Behaviour of color space transformation for proofing. Most people want a preview on screen only. The Relative Colorimetric intent is right for that. The Absolute Colorimetric intent needs a very careful profiling and non-trivial setup, but allows for side-by-side comparisons."),
+ 2, /* choices */
+ _("Relative Colorimetric"),_("Absolute Colorimetric"),NULL,NULL,
+ OY_DEFAULT_RENDERING_INTENT_PROOF,
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-omit-profile-with-error.patch b/media-libs/oyranos/files/oyranos-0.9.4-omit-profile-with-error.patch
new file mode 100644
index 000000000000..f87f004cf66f
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-omit-profile-with-error.patch
@@ -0,0 +1,54 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Tue, 26 Mar 2013 11:09:01 +0000 (+0100)
+Subject: * [source]: omit profile with error
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=ecbfe88cf77863c7c925f61d0e69d11474059cb8
+
+* [source]: omit profile with error
+
+a proper return value would be more helpful
+---
+
+diff --git a/src/API_generated/oyProfile_s_.c b/src/API_generated/oyProfile_s_.c
+index 83629fe..338ed08 100644
+--- a/src/API_generated/oyProfile_s_.c
++++ b/src/API_generated/oyProfile_s_.c
+@@ -8,12 +8,12 @@
+ * Oyranos is an open source Colour Management System
+ *
+ * @par Copyright:
+- * 2004-2012 (C) Kai-Uwe Behrmann
++ * 2004-2013 (C) Kai-Uwe Behrmann
+ *
+ * @author Kai-Uwe Behrmann <ku.b@gmx.de>
+ * @par License:
+ * new BSD - see: http://www.opensource.org/licenses/bsd-license.php
+- * @date 2012/10/31
++ * @date 2013/03/26
+ */
+
+
+@@ -724,6 +724,9 @@ oyProfile_s_ * oyProfile_FromFile_ ( const char * name,
+ }
+ }
+
++ if(error >= 1 && s)
++ oyProfile_Release( (oyProfile_s**)&s );
++
+ oyHash_Release_( &entry );
+
+ return s;
+diff --git a/src/sources/Profile.private_methods_definitions.c b/src/sources/Profile.private_methods_definitions.c
+index 7b49ca6..e131893 100644
+--- a/src/sources/Profile.private_methods_definitions.c
++++ b/src/sources/Profile.private_methods_definitions.c
+@@ -311,6 +311,9 @@ oyProfile_s_ * oyProfile_FromFile_ ( const char * name,
+ }
+ }
+
++ if(error >= 1 && s)
++ oyProfile_Release( (oyProfile_s**)&s );
++
+ oyHash_Release_( &entry );
+
+ return s;
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-set-xcalib-to-screen-if-ge-xrandr-12.patch b/media-libs/oyranos/files/oyranos-0.9.4-set-xcalib-to-screen-if-ge-xrandr-12.patch
new file mode 100644
index 000000000000..6acfcdd11cfa
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-set-xcalib-to-screen-if-ge-xrandr-12.patch
@@ -0,0 +1,131 @@
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Sun, 17 Feb 2013 19:28:06 +0000 (+0100)
+Subject: * [oyX1]: set xcalib to screen if XRandR >= 1.2
+X-Git-Url: http://www.oyranos.org/scm?p=oyranos.git;a=commitdiff_plain;h=505b3931d9de6c667566278c5b3a1713d43212a8
+
+* [oyX1]: set xcalib to screen if XRandR >= 1.2
+---
+
+diff --git a/src/modules/devices/oyranos_monitor_x11.c b/src/modules/devices/oyranos_monitor_x11.c
+index a090b14..a530a81 100644
+--- a/src/modules/devices/oyranos_monitor_x11.c
++++ b/src/modules/devices/oyranos_monitor_x11.c
+@@ -90,6 +90,8 @@ RROutput
+ XRROutputInfo *
+ oyX1Monitor_xrrOutputInfo_( oyX1Monitor_s * disp ) { return disp->output_info; }
+ int oyX1Monitor_activeOutputs_( oyX1Monitor_s * disp ) { return disp->active_outputs; }
++int oyX1Monitor_rrVersion_ ( oyX1Monitor_s * disp ) { return disp->rr_version; }
++int oyX1Monitor_rrScreen_ ( oyX1Monitor_s * disp ) { return disp->rr_screen; }
+
+
+ #endif
+@@ -680,7 +682,8 @@ int oyX1MonitorProfileSetup ( const char * display_name,
+ char *text = 0;
+
+ DBG_PROG_START
+- disp = oyX1Monitor_newFrom_( display_name, 0 );
++ /* XRandR needs a expensive initialisation */
++ disp = oyX1Monitor_newFrom_( display_name, 1 );
+ if(!disp)
+ return 1;
+
+@@ -721,6 +724,13 @@ int oyX1MonitorProfileSetup ( const char * display_name,
+ */
+ sprintf(text,"xcalib -d %s -s %d %s \'%s\'", dpy_name, disp->geo[1],
+ oy_debug?"-v":"", profile_fullname);
++ if(oyX1Monitor_infoSource_( disp ) == oyX11INFO_SOURCE_XRANDR)
++ sprintf(text,"xcalib -d %s -s %d %s \'%s\'", dpy_name, oyX1Monitor_rrScreen_(disp),
++ oy_debug?"-v":"", profile_fullname);
++ else
++ sprintf(text,"xcalib -d %s -s %d %s \'%s\'", dpy_name, disp->geo[1],
++ oy_debug?"-v":"", profile_fullname);
++
+ {
+ Display * display = oyX1Monitor_device_( disp );
+ int effective_screen = oyX1Monitor_screen_( disp );
+@@ -751,17 +761,21 @@ int oyX1MonitorProfileSetup ( const char * display_name,
+ #endif
+
+ /* Check for incapabilities of X gamma table access */
+- if(can_gamma || oyX1Monitor_screen_( disp ) == 0)
++ if(can_gamma || oyX1Monitor_screen_( disp ) == 0 || oyX1Monitor_infoSource_( disp ) == oyX11INFO_SOURCE_XRANDR )
+ error = system(text);
+ if(error &&
+ error != 65280)
+ { /* hack */
+- WARNc2_S("%s %s", _("No monitor gamma curves by profile:"),
+- oyNoEmptyName_m_(profil_basename) )
++ WARNc3_S("%s %s %d", _("No monitor gamma curves by profile:"),
++ oyNoEmptyName_m_(profil_basename), error )
+ error = -1;
+ } else
++ {
+ /* take xcalib error not serious, turn into a issue */
++ if(oy_debug)
++ DBG1_S("xcalib returned %d", error)
+ error = -1;
++ }
+ }
+
+ if(oy_debug)
+@@ -873,7 +887,8 @@ int oyX1MonitorProfileUnset ( const char * display_name )
+
+ DBG_PROG_START
+
+- disp = oyX1Monitor_newFrom_( display_name, 0 );
++ /* XRandR needs a expensive initialisation */
++ disp = oyX1Monitor_newFrom_( display_name, 1 );
+ if(!disp)
+ {
+ DBG_PROG_ENDE
+@@ -926,10 +941,16 @@ int oyX1MonitorProfileUnset ( const char * display_name )
+ if( (ptr = strchr(ptr,'.')) != 0 )
+ ptr[0] = '\000';
+
+- oySnprintf2_(command, 1024, "xgamma -gamma 1.0 -screen %d -display %s",
++ if(oyX1Monitor_infoSource_( disp ) == oyX11INFO_SOURCE_XRANDR)
++ oySnprintf2_(command, 1024, "xrandr -display %s --output %s --gamma .999999:.999999:.999999",
++ dpy_name, oyX1Monitor_systemPort_(disp));
++ else
++ oySnprintf2_(command, 1024, "xgamma -gamma 1.0 -screen %d -display %s",
+ disp->geo[1], dpy_name);
+
+- if(screen == disp->geo[1])
++ if(oy_debug)
++ DBG3_S( "%d %d system: %s", screen, disp->geo[1], command )
++ if(screen == disp->geo[1] || oyX1Monitor_infoSource_( disp ) == oyX11INFO_SOURCE_XRANDR)
+ r = system( command );
+ if(r) WARNc2_S("%s %d", _("found issues"),r);
+
+@@ -1347,17 +1368,16 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+
+ if(monitors == 0)
+ {
+- if(strcmp("default", output_info->name) != 0)
+- {
+- disp->info_source = oyX11INFO_SOURCE_XRANDR;
+-
+- } else
++ if(!XRRGetCrtcGammaSize( display, output_info->crtc ))
+ {
+ XRRFreeOutputInfo( output_info );
+ break;
+ }
+ }
+
++ if(XRRGetCrtcGammaSize( display, output_info->crtc ))
++ disp->info_source = oyX11INFO_SOURCE_XRANDR;
++
+ crtc_info = XRRGetCrtcInfo( disp->display, res_temp,
+ output_info->crtc );
+ if(crtc_info)
+@@ -1390,6 +1410,8 @@ oyX1Monitor_s* oyX1Monitor_newFrom_ ( const char * display_name,
+ if(disp->output_info->name && oyStrlen_(disp->output_info->name))
+ disp->system_port = oyStringCopy_( disp->output_info->name,
+ oyAllocateFunc_ );
++ disp->rr_version = major_versionp*100 + minor_versionp;
++ disp->rr_screen = xrand_screen;
+ }
+
+ ++ monitors;
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.4-use-more-internal-xrandr-info.patch b/media-libs/oyranos/files/oyranos-0.9.4-use-more-internal-xrandr-info.patch
new file mode 100644
index 000000000000..d2a58ea73091
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.4-use-more-internal-xrandr-info.patch
@@ -0,0 +1,35 @@
+From 5c9b4a85213e5f63d716655b6c61a7efce07223c Mon Sep 17 00:00:00 2001
+From: Kai-Uwe Behrmann <ku.b@gmx.de>
+Date: Sun, 17 Feb 2013 20:27:04 +0100
+Subject: [PATCH] * [oyX1]: use more internal XRandR information
+
+---
+ src/include_private/oyranos_monitor_internal_x11.h | 4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/src/include_private/oyranos_monitor_internal_x11.h b/src/include_private/oyranos_monitor_internal_x11.h
+index c41aa3a..363b759 100644
+--- a/src/include_private/oyranos_monitor_internal_x11.h
++++ b/src/include_private/oyranos_monitor_internal_x11.h
+@@ -60,6 +60,8 @@ typedef struct {
+ RROutput output; /**< XRandR output */
+ XRROutputInfo * output_info; /**< XRandR output info */
+ int active_outputs; /**< outputs with crtc and gamma size */
++ int rr_version; /**< XRandR version */
++ int rr_screen; /**< nth XRandR output */
+ # endif
+ char * system_port; /**< the operating systems port name */
+ oyBlob_s * edid; /**< edid for the device */
+@@ -95,6 +97,8 @@ RROutput oyX1Monitor_xrrOutput_ ( oyX1Monitor_s * disp );
+ XRROutputInfo *
+ oyX1Monitor_xrrOutputInfo_( oyX1Monitor_s * disp );
+ int oyX1Monitor_activeOutputs_( oyX1Monitor_s * disp );
++int oyX1Monitor_rrVersion_ ( oyX1Monitor_s * disp );
++int oyX1Monitor_rrScreen_ ( oyX1Monitor_s * disp );
+ # endif
+
+ int oyX1MonitorProfileSetup ( const char * display_name,
+--
+1.5.6.5
+
+
diff --git a/media-libs/oyranos/files/oyranos-0.9.5-buildsystem-r1.patch b/media-libs/oyranos/files/oyranos-0.9.5-buildsystem-r1.patch
new file mode 100644
index 000000000000..ad5581077cb3
--- /dev/null
+++ b/media-libs/oyranos/files/oyranos-0.9.5-buildsystem-r1.patch
@@ -0,0 +1,182 @@
+--- a/CMakeLists.txt 2014-06-22 23:44:17.666047736 +0200
++++ b/CMakeLists.txt 2014-06-22 23:45:13.656347758 +0200
+@@ -41,7 +41,7 @@
+
+
+ # detect top level projects
+-FIND_PACKAGE( Yajl )
++FIND_PACKAGE( Yajl REQUIRED )
+ IF( HAVE_YAJL )
+ INCLUDE_DIRECTORIES( ${YAJL_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${YAJL_LIBRARY_DIRS} )
+@@ -51,72 +51,16 @@
+ IF( NOT HAVE_YAJL_VERSION_H )
+ INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/yajl/ )
+ ENDIF( NOT HAVE_YAJL_VERSION_H )
+-ELSE( HAVE_YAJL )
+- IF(CMAKE_VERSION VERSION_GREATER 2.8.0)
+- include(ExternalProject)
+- ExternalProject_Add( yajl
+- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/yajl
+- CONFIGURE_COMMAND cmake ${CMAKE_CURRENT_SOURCE_DIR}/yajl
+- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/yajl
+- BUILD_COMMAND ${MAKE}
+- # skip installation
+- INSTALL_COMMAND echo )
+- INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/yajl )
+- LINK_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR}/yajl )
+- SET( YAJL_LIBRARIES yajl-static )
+- ENDIF()
+-
+ ENDIF( HAVE_YAJL )
+
+-FIND_PACKAGE( Elektra )
++FIND_PACKAGE( Elektra REQUIRED )
++SET( HAVE_ELEKTRA 1 )
+ IF(HAVE_ELEKTRA)
+ SET( ELEKTRA_SPEC "Requires: elektra
+ BuildRequires: elektra-devel" )
+ INCLUDE_DIRECTORIES( ${ELEKTRA_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${ELEKTRA_LIBRARY_DIRS} )
+ STRING(REPLACE ";" " " ELEKTRA_PC_LDFLAGS "${ELEKTRA_STATIC_LDFLAGS}")
+-ELSE(HAVE_ELEKTRA)
+- SET( ELEKTRA_VERSION elektra-0.7.1 )
+- MESSAGE( "-- Using internal Elektra: ${ELEKTRA_VERSION}" )
+- INCLUDE_DIRECTORIES( ${CMAKE_SOURCE_DIR}/${ELEKTRA_VERSION}/src/include
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/include )
+- SET( ELEKTRA_LIBRARIES_STATIC
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdb.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbhandle.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-key.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyset.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-trie.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbhighlevel.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-kdbcapability.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyhelpers.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keymeta.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyname.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keytest.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-keyvalue.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-serialize.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-split.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektra/libelektra_a-exported_symbols.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libloader/libloader_static_a-kdbLibLoader.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libhelper/libhelper_static_a-internal.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libhelper/libhelper_static_a-helper.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/backends/filesys/libelektra_filesys_a-filesys.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektratools/libelektratools_a-kdbtools.o
+- ${CMAKE_BINARY_DIR}/${ELEKTRA_VERSION}/src/libelektratools/libelektratools_a-stream.o
+- )
+- SET( ELEKTRA_LIBRARIES
+- ${LIBXML2_LIBRARIES}
+- )
+- IF(CMAKE_VERSION VERSION_GREATER 2.8.0)
+- include(ExternalProject)
+- ExternalProject_Add( ${ELEKTRA_VERSION}
+- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/${ELEKTRA_VERSION}
+- # GCC flags (-fPIC) will fail on Windows, without we get relocation R_X86_64_32 errors
+- CONFIGURE_COMMAND CFLAGS=-fPIC ${CMAKE_CURRENT_SOURCE_DIR}/${ELEKTRA_VERSION}/configure --enable-static --enable-shared=false
+- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/${ELEKTRA_VERSION}
+- BUILD_COMMAND ${MAKE}
+- # skip installation
+- INSTALL_COMMAND echo )
+- ENDIF()
+ ENDIF(HAVE_ELEKTRA)
+
+ #now add all directories
+--- a/src/CMakeLists.txt 2013-12-20 00:04:12.319880917 +0100
++++ b/src/CMakeLists.txt 2013-12-20 00:11:33.504365352 +0100
+@@ -100,7 +100,9 @@
+ INCLUDE_DIRECTORIES( ${XCM_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${XCM_LIBRARY_DIRS} )
+
+-FIND_PACKAGE( X11 )
++IF(WANT_X11)
++FIND_PACKAGE( X11 REQUIRED )
++ENDIF(WANT_X11)
+ IF(X11_FOUND)
+ INCLUDE_DIRECTORIES( ${X11_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${X11_LIBRARY_DIRS} )
+@@ -123,27 +125,36 @@
+ LINK_DIRECTORIES( ${XXF86VM_LIBRARY_DIRS} )
+ ENDIF(X11_FOUND)
+
+-FIND_PACKAGE( CUPS )
++IF(WANT_CUPS)
++FIND_PACKAGE( Cups REQUIRED )
++SET( HAVE_CUPS 1 )
++ENDIF(WANT_CUPS)
+ IF(HAVE_CUPS)
+ INCLUDE_DIRECTORIES( ${CUPS_INCLUDE_DIR} )
+ LINK_DIRECTORIES( ${CUPS_LIBRARYS} )
+ ENDIF(HAVE_CUPS)
+
+-FIND_PACKAGE( Cairo )
++IF(WANT_CAIRO)
++FIND_PACKAGE( Cairo REQUIRED)
++ENDIF(WANT_CAIRO)
+ IF(HAVE_CAIRO)
+ INCLUDE_DIRECTORIES( ${CAIRO_INCLUDE_DIR}/cairo )
+ INCLUDE_DIRECTORIES( ${CAIRO_INCLUDE_DIR} )
+ LINK_DIRECTORIES( ${CAIRO_LIBRARY_DIRS} )
+ ENDIF(HAVE_CAIRO)
+
+-FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui)
++IF(WANT_QT4)
++FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui REQUIRED)
++ENDIF(WANT_QT4)
+ IF(QT_FOUND)
+ SET( HAVE_QT 1 )
+ INCLUDE_DIRECTORIES( ${QT_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${QT_LIBRARY_DIRS} )
+ ENDIF(QT_FOUND)
+
+-FIND_PACKAGE( Fltk )
++IF(WANT_FLTK)
++FIND_PACKAGE( FLTK REQUIRED)
++ENDIF(WANT_FLTK)
+ IF(FLTK_FOUND)
+ SET( HAVE_FLTK 1 )
+ INCLUDE_DIRECTORIES( ${FLTK_INCLUDE_DIRS} )
+@@ -159,7 +170,9 @@
+ SET( LIBXML2_LIBRARIES ${LIBXML2_LIBRARIES} PARENT_SCOPE)
+ ENDIF(LIBXML2_FOUND)
+
+-FIND_PACKAGE( LibRaw )
++IF(WANT_LIBRAW)
++FIND_PACKAGE( LibRaw REQUIRED )
++ENDIF(WANT_LIBRAW)
+ IF( HAVE_LIBRAW )
+ # TRY_COMPILE(
+ # HAVE_LIBRAW_REALLY
+@@ -182,7 +195,9 @@
+ MESSAGE( "HAVE_LIBRAW_PLUGIN: ${HAVE_LIBRAW_PLUGIN}" )
+ ENDIF()
+
+-FIND_PACKAGE( Exif2 )
++IF(WANT_EXIV2)
++FIND_PACKAGE( Exif2 REQUIRED )
++ENDIF(WANT_EXIV2)
+ IF(HAVE_EXIV2)
+ INCLUDE_DIRECTORIES( ${EXIV2_INCLUDE_DIRS} )
+ LINK_DIRECTORIES( ${EXIV2_LIBRARY_DIRS} )
+--- a/doc/CMakeLists.txt 2014-03-07 09:43:25.000000000 +0100
++++ b/doc/CMakeLists.txt 2014-06-23 00:22:01.256748956 +0200
+@@ -33,7 +33,9 @@
+ INSTALL( FILES ${MAN1_PAGES} DESTINATION share/man/man1 )
+ INSTALL( FILES ${MAN3_PAGES} DESTINATION share/man/man3 )
+
+-FIND_PACKAGE( Doxygen )
++IF(WANT_HTML)
++ FIND_PACKAGE( Doxygen REQUIRED )
++ENDIF(WANT_HTML)
+ IF( DOXYGEN_FOUND )
+
+ ADD_CUSTOM_COMMAND( OUTPUT html
+@@ -43,5 +45,5 @@
+ ADD_CUSTOM_TARGET( docu ALL
+ DEPENDS html )
+
+- INSTALL( DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION share/doc/${PACKAGE_NAME} )
++ INSTALL( DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION share/doc/${PACKAGE_NAME}-${OYRANOS_VERSION} )
+ ENDIF()
diff --git a/media-libs/oyranos/metadata.xml b/media-libs/oyranos/metadata.xml
new file mode 100644
index 000000000000..10d1ba182e9e
--- /dev/null
+++ b/media-libs/oyranos/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>xmw@gentoo.org</email>
+ <name>Michael Weber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">oyranos-cms/oyranos</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-libs/oyranos/oyranos-0.9.4-r2.ebuild b/media-libs/oyranos/oyranos-0.9.4-r2.ebuild
new file mode 100644
index 000000000000..e114d7e8abf9
--- /dev/null
+++ b/media-libs/oyranos/oyranos-0.9.4-r2.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic cmake-utils cmake-multilib
+
+DESCRIPTION="colour management system allowing to share various settings across applications and services"
+HOMEPAGE="http://www.oyranos.org/"
+SRC_URI="mirror://sourceforge/oyranos/Oyranos/Oyranos%200.4/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="X cairo cups doc exif fltk qt4 raw test"
+
+RDEPEND="=app-admin/elektra-0.7*:0=[${MULTILIB_USEDEP}]
+ >=app-admin/elektra-0.7.1-r5:0=[${MULTILIB_USEDEP}]
+ >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+ >=dev-libs/yajl-2.0.4-r1[${MULTILIB_USEDEP}]
+ media-libs/icc-profiles-basiccolor-printing2009
+ media-libs/icc-profiles-basiccolor-printing2009
+ >=media-libs/lcms-2.5:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0[${MULTILIB_USEDEP}]
+ >=media-libs/libXcm-0.5.2-r1[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}] )
+ cups? ( >=net-print/cups-1.7.1-r1[${MULTILIB_USEDEP}] )
+ exif? ( >=media-gfx/exiv2-0.23-r2:=[${MULTILIB_USEDEP}] )
+ fltk? ( x11-libs/fltk:1 )
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )
+ raw? ( >=media-libs/libraw-0.15.4[${MULTILIB_USEDEP}] )
+ X? ( >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
+ >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ app-doc/doxygen
+ media-gfx/graphviz"
+
+RESTRICT="test"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/oyranos-config
+)
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/oyranos/oyranos_version.h
+)
+
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindFltk FindXcm FindCUPS"
+
+src_prepare() {
+ einfo remove bundled libs
+ rm -rf elektra* yajl || die
+
+ epatch "${FILESDIR}/${P}"-buildsystem-r1.patch
+
+ #upstream(ed) fixes, be more verbose, better xrandr handling
+ epatch "${FILESDIR}/${P}"-fix-array-access.patch \
+ "${FILESDIR}/${P}"-fix-oyRankMap-helper-functions-crashes.patch \
+ "${FILESDIR}/${P}"-fix-oyStringSegment-crash.patch \
+ "${FILESDIR}/${P}"-be-more-verbose.patch \
+ "${FILESDIR}/${P}"-use-more-internal-xrandr-info.patch \
+ "${FILESDIR}/${P}"-set-xcalib-to-screen-if-ge-xrandr-12.patch \
+ "${FILESDIR}/${P}"-fix-double-object-release.patch \
+ "${FILESDIR}/${P}"-omit-profile-with-error.patch \
+ "${FILESDIR}/${P}"-fix-typos-and-grammar.patch
+
+ #upstream fix for QA notice, gentoo bug 464254
+ epatch "${FILESDIR}/${P}"-fix-runpaths.patch
+
+ #fix really ugly and prominently visible typo (solved in 0.9.5)
+ sed -e 's/Promt/Prompt/' \
+ -i src/liboyranos_config/oyranos_texts.c po/*.{po,pot} settings/*xml || die
+
+ if use fltk ; then
+ #src/examples does not include fltk flags
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags)
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLIB_SUFFIX=${libdir#lib}
+
+ $(usex X -DWANT_X11=1 "")
+ $(usex cairo -DWANT_CAIRO=1 "")
+ $(usex cups -DWANT_CUPS=1 "")
+ $(usex exif -DWANT_EXIV2=1 "")
+ $(usex raw -DWANT_LIBRAW=1 "")
+
+ # only used in programs
+ $(multilib_native_usex fltk -DWANT_FLTK=1 "")
+ $(multilib_native_usex qt4 -DWANT_QT4=1 "")
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ if use doc; then
+ mv "${ED%/}"/usr/share/doc/{${PN},${PF}} || die
+ else
+ rm -rf "${ED%/}"/usr/share/doc/${PN} || die
+ fi
+
+ dodoc AUTHORS ChangeLog README
+}
diff --git a/media-libs/oyranos/oyranos-0.9.5-r1.ebuild b/media-libs/oyranos/oyranos-0.9.5-r1.ebuild
new file mode 100644
index 000000000000..844ed97b5bc9
--- /dev/null
+++ b/media-libs/oyranos/oyranos-0.9.5-r1.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic cmake-utils cmake-multilib
+
+DESCRIPTION="Colour management system allowing to share various settings across applications and services"
+HOMEPAGE="http://www.oyranos.org/"
+SRC_URI="https://github.com/oyranos-cms/oyranos/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="BSD"
+SLOT="0"
+IUSE="X cairo cups doc exif fltk jpeg qt4 qt5 raw test tiff"
+
+#OY_LINGUAS="cs;de;eo;eu;fr;ru" #TODO
+
+COMMON_DEPEND="
+ || (
+ =app-admin/elektra-0.7*:0=[${MULTILIB_USEDEP}]
+ >=app-admin/elektra-0.8.4:0=[${MULTILIB_USEDEP}]
+ )
+ >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+ >=dev-libs/yajl-2.0.4-r1[${MULTILIB_USEDEP}]
+ >=media-libs/lcms-2.5:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0[${MULTILIB_USEDEP}]
+ >=media-libs/libXcm-0.5.3[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}] )
+ cups? ( >=net-print/cups-1.7.1-r1[${MULTILIB_USEDEP}] )
+ exif? ( >=media-gfx/exiv2-0.23-r2:=[${MULTILIB_USEDEP}] )
+ fltk? ( x11-libs/fltk:1 )
+ jpeg? ( virtual/jpeg:0[${MULTILIB_USEDEP}] )
+ qt5? (
+ dev-qt/qtgui:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5
+ )
+ !qt5? (
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )
+ )
+ raw? ( >=media-libs/libraw-0.15.4[${MULTILIB_USEDEP}] )
+ tiff? ( media-libs/tiff:0[${MULTILIB_USEDEP}] )
+ X? ( >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
+ >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )"
+DEPEND="${COMMON_DEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+RDEPEND="${COMMON_DEPEND}
+ media-libs/icc-profiles-basiccolor-printing2009
+ media-libs/icc-profiles-openicc"
+
+DOCS=( AUTHORS ChangeLog README )
+RESTRICT="test"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/oyranos-config
+)
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/oyranos/oyranos_version.h
+)
+
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindFltk FindXcm FindCUPS"
+
+src_prepare() {
+ einfo remove bundled libs
+ rm -rf elektra* yajl || die
+
+ if use fltk ; then
+ #src/examples does not include fltk flags
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags)
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLIB_SUFFIX=${libdir#lib}
+ -DUSE_SYSTEM_ELEKTRA=YES
+ -DUSE_SYSTEM_YAJL=YES
+ -DUSE_Qt4=$(usex '!qt5')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Cairo=$(usex '!cairo')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Cups=$(usex '!cups')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=$(usex '!doc')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Exif2=$(usex '!exif')
+ -DCMAKE_DISABLE_FIND_PACKAGE_JPEG=$(usex '!jpeg')
+ -DCMAKE_DISABLE_FIND_PACKAGE_LibRaw=$(usex '!raw')
+ -DCMAKE_DISABLE_FIND_PACKAGE_TIFF=$(usex '!tiff')
+ -DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex '!X')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Fltk=$(multilib_native_usex fltk OFF ON)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt4=$(multilib_native_usex qt4 OFF ON)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5=$(multilib_native_usex qt5 OFF ON)
+ )
+
+ cmake-utils_src_configure
+}
diff --git a/media-libs/oyranos/oyranos-0.9.5.ebuild b/media-libs/oyranos/oyranos-0.9.5.ebuild
new file mode 100644
index 000000000000..183f150f970d
--- /dev/null
+++ b/media-libs/oyranos/oyranos-0.9.5.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic cmake-utils cmake-multilib
+
+DESCRIPTION="Colour management system allowing to share various settings across applications and services"
+HOMEPAGE="http://www.oyranos.org/"
+SRC_URI="mirror://sourceforge/oyranos/Oyranos/Oyranos%200.9/${P}.tar.bz2"
+
+KEYWORDS="~amd64 ~x86"
+LICENSE="BSD"
+SLOT="0"
+IUSE="X cairo cups doc exif fltk qt4 raw test"
+
+RDEPEND="
+ || (
+ =app-admin/elektra-0.7*:0=[${MULTILIB_USEDEP}]
+ >=app-admin/elektra-0.8.4:0=[${MULTILIB_USEDEP}]
+ )
+ >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+ >=dev-libs/yajl-2.0.4-r1[${MULTILIB_USEDEP}]
+ media-libs/icc-profiles-basiccolor-printing2009
+ media-libs/icc-profiles-openicc
+ >=media-libs/lcms-2.5:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0[${MULTILIB_USEDEP}]
+ >=media-libs/libXcm-0.5.3[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}] )
+ cups? ( >=net-print/cups-1.7.1-r1[${MULTILIB_USEDEP}] )
+ exif? ( >=media-gfx/exiv2-0.23-r2:=[${MULTILIB_USEDEP}] )
+ fltk? ( x11-libs/fltk:1 )
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )
+ raw? ( >=media-libs/libraw-0.15.4[${MULTILIB_USEDEP}] )
+ X? ( >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
+ >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+
+DOCS="AUTHORS ChangeLog README"
+RESTRICT="test"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/oyranos-config
+)
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/oyranos/oyranos_version.h
+)
+
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindFltk FindXcm FindCUPS"
+
+src_prepare() {
+ einfo remove bundled libs
+ rm -rf elektra* yajl || die
+
+ epatch "${FILESDIR}/${PN}"-0.9.5-buildsystem-r1.patch
+
+ if use fltk ; then
+ #src/examples does not include fltk flags
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags)
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLIB_SUFFIX=${libdir#lib}
+
+ $(usex cairo -DWANT_CAIRO=1 "")
+ $(usex cups -DWANT_CUPS=1 "")
+ $(usex doc -DWANT_HTML=1 "")
+ $(usex exif -DWANT_EXIV2=1 "")
+ $(usex raw -DWANT_LIBRAW=1 "")
+ $(usex X -DWANT_X11=1 "")
+
+ # only used in programs
+ $(multilib_native_usex fltk -DWANT_FLTK=1 "")
+ $(multilib_native_usex qt4 -DWANT_QT4=1 "")
+ )
+
+ cmake-utils_src_configure
+}
diff --git a/media-libs/oyranos/oyranos-9999.ebuild b/media-libs/oyranos/oyranos-9999.ebuild
new file mode 100644
index 000000000000..faf149296fe6
--- /dev/null
+++ b/media-libs/oyranos/oyranos-9999.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic git-r3 cmake-utils cmake-multilib
+
+DESCRIPTION="Colour management system allowing to share various settings across applications and services"
+HOMEPAGE="http://www.oyranos.org/"
+EGIT_REPO_URI="https://github.com/${PN}-cms/${PN}.git"
+
+KEYWORDS=""
+LICENSE="BSD"
+SLOT="0"
+IUSE="X cairo cups doc exif fltk jpeg qt4 qt5 raw test tiff"
+
+#OY_LINGUAS="cs;de;eo;eu;fr;ru" #TODO
+
+COMMON_DEPEND="
+ || (
+ =app-admin/elektra-0.7*:0[${MULTILIB_USEDEP}]
+ >=app-admin/elektra-0.8.4:0[${MULTILIB_USEDEP}]
+ )
+ >=dev-libs/libxml2-2.9.1-r4[${MULTILIB_USEDEP}]
+ >=dev-libs/yajl-2.0.4-r1[${MULTILIB_USEDEP}]
+ >=media-libs/lcms-2.5:2[${MULTILIB_USEDEP}]
+ >=media-libs/libpng-1.6.10:0[${MULTILIB_USEDEP}]
+ >=media-libs/libXcm-0.5.3[${MULTILIB_USEDEP}]
+ cairo? ( >=x11-libs/cairo-1.12.14-r4[${MULTILIB_USEDEP}] )
+ cups? ( >=net-print/cups-1.7.1-r1[${MULTILIB_USEDEP}] )
+ exif? ( >=media-gfx/exiv2-0.23-r2:=[${MULTILIB_USEDEP}] )
+ fltk? ( x11-libs/fltk:1 )
+ jpeg? ( virtual/jpeg:0[${MULTILIB_USEDEP}] )
+ qt5? (
+ dev-qt/qtgui:5 dev-qt/qtwidgets:5 dev-qt/qtx11extras:5
+ )
+ !qt5? (
+ qt4? ( dev-qt/qtcore:4 dev-qt/qtgui:4 )
+ )
+ raw? ( >=media-libs/libraw-0.15.4[${MULTILIB_USEDEP}] )
+ tiff? ( media-libs/tiff:0[${MULTILIB_USEDEP}] )
+ X? ( >=x11-libs/libXfixes-5.0.1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}]
+ >=x11-libs/libXinerama-1.1.3[${MULTILIB_USEDEP}] )"
+DEPEND="${COMMON_DEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )"
+RDEPEND="${COMMON_DEPEND}
+ media-libs/icc-profiles-basiccolor-printing2009
+ media-libs/icc-profiles-openicc"
+
+DOCS=( AUTHORS.md ChangeLog.md README.md )
+RESTRICT="test"
+
+MULTILIB_CHOST_TOOLS=(
+ /usr/bin/oyranos-config
+)
+MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/oyranos/oyranos_version.h
+)
+
+CMAKE_REMOVE_MODULES_LIST="${CMAKE_REMOVE_MODULES_LIST} FindFltk FindXcm FindCUPS"
+
+src_prepare() {
+ einfo remove bundled libs
+ rm -rf elektra* yajl || die
+
+ if use fltk ; then
+ #src/examples does not include fltk flags
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags)
+ fi
+
+ cmake-utils_src_prepare
+}
+
+multilib_src_configure() {
+ local libdir=$(get_libdir)
+ local mycmakeargs=(
+ -DLIB_SUFFIX=${libdir#lib}
+ -DUSE_SYSTEM_ELEKTRA=YES
+ -DUSE_SYSTEM_YAJL=YES
+ -DUSE_Qt4=$(usex '!qt5')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Cairo=$(usex '!cairo')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Cups=$(usex '!cups')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=$(usex '!doc')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Exif2=$(usex '!exif')
+ -DCMAKE_DISABLE_FIND_PACKAGE_JPEG=$(usex '!jpeg')
+ -DCMAKE_DISABLE_FIND_PACKAGE_LibRaw=$(usex '!raw')
+ -DCMAKE_DISABLE_FIND_PACKAGE_TIFF=$(usex '!tiff')
+ -DCMAKE_DISABLE_FIND_PACKAGE_X11=$(usex '!X')
+ -DCMAKE_DISABLE_FIND_PACKAGE_Fltk=$(multilib_native_usex fltk OFF ON)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt4=$(multilib_native_usex qt4 OFF ON)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5=$(multilib_native_usex qt5 OFF ON)
+ )
+
+ cmake-utils_src_configure
+}