summaryrefslogtreecommitdiff
path: root/sci-biology/mosaik
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sci-biology/mosaik
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-biology/mosaik')
-rw-r--r--sci-biology/mosaik/Manifest8
-rw-r--r--sci-biology/mosaik/files/mosaik-2.2.30-Wformat-security.patch84
-rw-r--r--sci-biology/mosaik/files/mosaik-2.2.30-fix-build-system.patch226
-rw-r--r--sci-biology/mosaik/files/mosaik-2.2.30-remove-platform-code.patch10
-rw-r--r--sci-biology/mosaik/metadata.xml12
-rw-r--r--sci-biology/mosaik/mosaik-2.2.30.ebuild52
6 files changed, 392 insertions, 0 deletions
diff --git a/sci-biology/mosaik/Manifest b/sci-biology/mosaik/Manifest
new file mode 100644
index 000000000000..adaa18c65bc6
--- /dev/null
+++ b/sci-biology/mosaik/Manifest
@@ -0,0 +1,8 @@
+AUX mosaik-2.2.30-Wformat-security.patch 3296 SHA256 3c69765e3c1d4602dd279b256990ccbcd1208a522a3bcef4754ab22f1ff1e777 SHA512 e72fa7cac8798425ac1dd4d3358bfdff640cc831a01531749ee2fad99f8b53bd64e8c7fcdddce205e9f6dd312cc74376afcba395ab8d508d92416190b7eed1df WHIRLPOOL df27b653648d71ade5c576923b5e7d54b48bd7ab414506e50ab6883b9e7b86d96f210d0e7311245cc52a7a58be38d46c0fbf58f074851bdf448900558a7aebf2
+AUX mosaik-2.2.30-fix-build-system.patch 8056 SHA256 88bd8b4419e5780ceae38cdb37dd07cf7d03e0c64e10490139e8f5f4d65daec3 SHA512 ed4a6efd9fb2fabd6c24adaa5894fde80024d8ee930450711c07388b62969a41e801f052ee88d7890355f1ddfc5ef9fbb40bfdabfbfae364c64c673ce08958c6 WHIRLPOOL 3abb198b14ef31663768a721f51245f072fde58bb2394ba2e4c260b9f8dbe8c22b0ad08aac3895b297d7ccedd7bc84b4c206181bc51821883175887d9debddb7
+AUX mosaik-2.2.30-remove-platform-code.patch 399 SHA256 3793acf75b1f369c799189f50169df3d0334e443b86164dd67175561fa74ebb2 SHA512 4aec709660b41fb61bb9219a587255a5f416992a4478c2a7eb67374d1425f0a4e0b4d356827a9214e2f2718b635169c95d3288bf10388a74e50d498c39c2f259 WHIRLPOOL 89c63cac8369cc576e972292a1fa1a9eabda528afe6e37ce942ec0b73d93df4ce3683d7fb774d944cef898a6e9de8a73a8d512cbbf55917a86d75a8d4c43945a
+DIST mosaik-2.2.30.tar.gz 4387062 SHA256 685dcc4cde1b56d19be37bfb238ae4cddeb25dced6da7b3880e68973957e940e SHA512 1acf534e6defc927fc22937a7bae6786e85ab7aa234b4209169f1267f1a9bd68415b441c6aed2e7cd667f694a562017ebc9457251958f77386259ffce9812b10 WHIRLPOOL 493291cc94cc5f95f5f1f62c3208f1c8dbb8cb0efcf6a21cca3e3963228f02ab0e59f11e00d8a9724a99733ffd290bc979262c0e553a1ee55c1adc9c392c3813
+EBUILD mosaik-2.2.30.ebuild 1104 SHA256 ea37ecc77194c75ce01496b514aebc8e390fc7be4bfac5cc1909d51e873ade07 SHA512 34863af564b085b85d1670b9c20fdc8ca8c5367e210a041c81d2cb67e5380e91636620214ebe06c347cb0ac556581d304374e527738c36b01029cf38a4846a4b WHIRLPOOL 57644a9e561244ef72d917c5a92bf25a36702ba1b44fabdc028c47d8dad1340b4929977a81aef1df5e059a31c9db250f2d16e4b8a282f943d4f171037c57024a
+MISC ChangeLog 3305 SHA256 b8b8b1113cbdaf2fea6ca9ab28f001062c1610f2cedc2c535060b48d73268692 SHA512 adf81c6674b28b48da41e77efe2863fc18206e3619ee5822fb4185054fb22344bdf7bcdb928377fb17a065ab65e0b6f5302027c20cbee03d020684a31a5eb175 WHIRLPOOL de1f72644cd4f32637610bf571787deeb07ec81008cbfc3fc54cdd46526802abb429c822d4688f81d6aabd317a8701255562894aef8957d11c987eeae95e80e4
+MISC ChangeLog-2015 856 SHA256 23a69346ec54793f927a44a2ae7e02651a39e3b9f7175a048421130459d89b27 SHA512 8f910c7484fb486a57de9cfd3905f7d7cbe99017ce4a8049380260b5f11b63af9b19f381cac56426af6e517218ba02f2fd58fe1cf4393a99d6ff668d8e07b192 WHIRLPOOL af9db8386579802fdc37c68388e481af380764e57eb956adbf56f9e2b933787aeee08553e1a20f0fa2a0561bdeb6702179482ce53d113fafb95b8262b153de04
+MISC metadata.xml 414 SHA256 d17a60490c8a08b7e38bac22293e7163570929ae004eb017436017bee8b33b8e SHA512 2e6887226a0ac7457d1bbce1d76ac0953f0c1d5ff1d4261b7e11e4fa38803f01f8a67a285c2071671d58fcb8912ca8bb66bdfca93e2481be043ec5f2f2353c5b WHIRLPOOL 8e7ed6c4688ae4dbcaebba57db220aec9be52b058488ea4ea86a77b032ece920385736713edcc0db77e0b49c8174c86c352033694099f24604ccc05fa082a9b4
diff --git a/sci-biology/mosaik/files/mosaik-2.2.30-Wformat-security.patch b/sci-biology/mosaik/files/mosaik-2.2.30-Wformat-security.patch
new file mode 100644
index 000000000000..9f7271860229
--- /dev/null
+++ b/sci-biology/mosaik/files/mosaik-2.2.30-Wformat-security.patch
@@ -0,0 +1,84 @@
+- Fix incorrect printf format specifier (-Wformat)
+* fann.c: In function ‘fann_print_connections’:
+* fann.c:889:11: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘long int’ [-Wformat=]
+* printf("L %3d / N %4d %s\n", layer_it - ann->first_layer,
+
+- Fix erroneous memset call
+* md5.c: In function ‘MD5Final’:
+* md5.c:152:26: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
+* memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
+
+--- a/fann-2.1.0/fann.c
++++ b/fann-2.1.0/fann.c
+@@ -886,7 +886,7 @@
+ neurons[ann->connections[i] - ann->first_layer->first_neuron] = (char)('A' + value);
+ }
+ }
+- printf("L %3d / N %4d %s\n", layer_it - ann->first_layer,
++ printf("L %3ld / N %4ld %s\n", layer_it - ann->first_layer,
+ neuron_it - ann->first_layer->first_neuron, neurons);
+ }
+ }
+@@ -987,12 +987,12 @@
+ {
+ if(ann->network_type == FANN_NETTYPE_SHORTCUT)
+ {
+- printf(" Hidden layer :%4d neurons, 0 bias\n",
++ printf(" Hidden layer :%4ld neurons, 0 bias\n",
+ layer_it->last_neuron - layer_it->first_neuron);
+ }
+ else
+ {
+- printf(" Hidden layer :%4d neurons, 1 bias\n",
++ printf(" Hidden layer :%4ld neurons, 1 bias\n",
+ layer_it->last_neuron - layer_it->first_neuron - 1);
+ }
+ }
+--- a/fann-2.1.0/fann_io.c
++++ b/fann-2.1.0/fann_io.c
+@@ -174,7 +174,7 @@
+ #endif
+
+ /* Save network parameters */
+- fprintf(conf, "num_layers=%u\n", ann->last_layer - ann->first_layer);
++ fprintf(conf, "num_layers=%ld\n", ann->last_layer - ann->first_layer);
+ fprintf(conf, "learning_rate=%f\n", ann->learning_rate);
+ fprintf(conf, "connection_rate=%f\n", ann->connection_rate);
+ fprintf(conf, "network_type=%u\n", ann->network_type);
+@@ -236,7 +236,7 @@
+ for(layer_it = ann->first_layer; layer_it != ann->last_layer; layer_it++)
+ {
+ /* the number of neurons in the layers (in the last layer, there is always one too many neurons, because of an unused bias) */
+- fprintf(conf, "%u ", layer_it->last_neuron - layer_it->first_neuron);
++ fprintf(conf, "%ld ", layer_it->last_neuron - layer_it->first_neuron);
+ }
+ fprintf(conf, "\n");
+
+@@ -316,14 +316,14 @@
+ if(save_as_fixed)
+ {
+ /* save the connection "(source weight) " */
+- fprintf(conf, "(%u, %d) ",
++ fprintf(conf, "(%ld, %d) ",
+ connected_neurons[i] - first_neuron,
+ (int) floor((weights[i] * fixed_multiplier) + 0.5));
+ }
+ else
+ {
+ /* save the connection "(source weight) " */
+- fprintf(conf, "(%u, " FANNPRINTF ") ", connected_neurons[i] - first_neuron, weights[i]);
++ fprintf(conf, "(%ld, " FANNPRINTF ") ", connected_neurons[i] - first_neuron, weights[i]);
+ }
+ #else
+ /* save the connection "(source weight) " */
+--- a/CommonSource/Utilities/md5.c
++++ b/CommonSource/Utilities/md5.c
+@@ -149,7 +149,7 @@
+ MD5Transform(ctx->buf, (uint32 *) ctx->in);
+ byteReverse((unsigned char *) ctx->buf, 4);
+ memcpy(digest, ctx->buf, 16);
+- memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
++ memset(ctx, 0, sizeof(*ctx)); /* In case it's sensitive */
+ }
+
+
diff --git a/sci-biology/mosaik/files/mosaik-2.2.30-fix-build-system.patch b/sci-biology/mosaik/files/mosaik-2.2.30-fix-build-system.patch
new file mode 100644
index 000000000000..00a9bec3ae4d
--- /dev/null
+++ b/sci-biology/mosaik/files/mosaik-2.2.30-fix-build-system.patch
@@ -0,0 +1,226 @@
+- Make build system verbose by default, as required by Gentoo policy
+ See also: https://bugs.gentoo.org/show_bug.cgi?id=429308
+- Remove CFLAGS and CXXFLAGS defaults
+- Fix order of flags and honour CPPFLAGS for LFS support
+ and LDFLAGS for --as-needed, respectively
+
+--- a/CommonSource/DataStructures/Makefile
++++ b/CommonSource/DataStructures/Makefile
+@@ -22,7 +22,7 @@
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ clean:
+ @echo "Cleaning up."
+--- a/CommonSource/ExternalReadFormats/Makefile
++++ b/CommonSource/ExternalReadFormats/Makefile
+@@ -22,7 +22,7 @@
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ clean:
+ @echo "Cleaning up."
+--- a/CommonSource/MosaikReadFormat/Makefile
++++ b/CommonSource/MosaikReadFormat/Makefile
+@@ -22,7 +22,7 @@
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ clean:
+ @echo "Cleaning up."
+--- a/CommonSource/PairwiseAlignment/Makefile
++++ b/CommonSource/PairwiseAlignment/Makefile
+@@ -26,11 +26,11 @@
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(CBUILT_OBJECTS): $(CSOURCES)
+ @echo " * compiling" $(*F).c
+- @$(CC) -c -o $@ $(*F).c -O3 $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CC) $(CFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).c
+
+ clean:
+ @echo "Cleaning up."
+--- a/CommonSource/Utilities/Makefile
++++ b/CommonSource/Utilities/Makefile
+@@ -48,11 +48,11 @@
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(CBUILT_OBJECTS): $(CSOURCES)
+ @echo " * compiling" $(*F).c
+- @$(CC) -c -o $@ $(*F).c -O3 -w -DSQLITE_OMIT_LOAD_EXTENSION $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CC) $(CFLAGS) $(CPPFLAGS) -DSQLITE_OMIT_LOAD_EXTENSION $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).c
+
+ clean:
+ @echo "Cleaning up."
+--- a/fann-2.1.0/Makefile
++++ b/fann-2.1.0/Makefile
+@@ -12,7 +12,7 @@
+
+ $(CBUILT_OBJECTS): $(CSOURCES)
+ @echo " * compiling" $(*F).c
+- @$(CC) -c -o $@ $(*F).c -O3 $(PLATFORM_FLAGS) -I$(INCLUDES)
++ $(CC) $(CFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) -I$(INCLUDES) -c -o $@ $(*F).c
+
+ clean:
+ @echo "Cleaning up."
+--- a/Makefile
++++ b/Makefile
+@@ -4,8 +4,8 @@
+ # ==========================
+
+ # define our object and binary directories
+-export OBJ_DIR = ../obj
+-export BIN_DIR = ../bin
++export OBJ_DIR = ./obj
++export BIN_DIR = ./bin
+
+ # define our common source directories
+ export ASSEMBLY_DIR = CommonSource/AssemblyFormats
+@@ -16,20 +16,6 @@
+ export PAIRWISE_DIR = CommonSource/PairwiseAlignment
+ export UTILITIES_DIR = CommonSource/Utilities
+
+-# define some default flags
+-FLAGS = -Wall -Wno-char-subscripts -ansi -O3
+-#FLAGS = -Wall -Wno-char-subscripts -ansi -g -D VERBOSE_DEBUG #gdb debugging
+-#FLAGS = -Wall -Wno-char-subscripts -ansi -O3 -D VERBOSE_DEBUG #enables verbose debugging
+-CFLAGS =
+-CXXFLAGS =
+-#CXXFLAGS = -ansi -pedantic -Wextra -Weffc++
+-CFLAGS += $(FLAGS)
+-CXXFLAGS += $(FLAGS)
+-export CFLAGS
+-export CXXFLAGS
+-#export LDFLAGS = -Wl
+-export CXX ?= g++
+-
+ # define our platform
+ export BLD_PLATFORM ?= linux
+ include includes/$(BLD_PLATFORM).inc
+--- a/MosaikAligner/Makefile
++++ b/MosaikAligner/Makefile
+@@ -68,11 +68,11 @@
+
+ $(PROGRAM): $(BUILT_OBJECTS) $(EXT_OBJECTS)
+ @echo " * linking $(PROGRAM)"
+- @$(CXX) $(LDFLAGS) $(CXXFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(EXT_OBJECTS):
+ @$(MAKE) --no-print-directory -C $(TD)$(DATA_STRUCT_DIR)
+--- a/MosaikBuild/Makefile
++++ b/MosaikBuild/Makefile
+@@ -26,11 +26,11 @@
+
+ $(PROGRAM): $(BUILT_OBJECTS) $(EXT_OBJECTS)
+ @echo " * linking $(PROGRAM)"
+- @$(CXX) $(LDFLAGS) $(CXXFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(EXT_OBJECTS):
+ @$(MAKE) --no-print-directory -C $(TD)$(DATA_STRUCT_DIR)
+--- a/MosaikJump/Makefile
++++ b/MosaikJump/Makefile
+@@ -26,11 +26,11 @@
+
+ $(PROGRAM): $(BUILT_OBJECTS) $(EXT_OBJECTS)
+ @echo " * linking $(PROGRAM)"
+- @$(CXX) $(LDFLAGS) $(CXXFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(EXT_OBJECTS):
+ @$(MAKE) --no-print-directory -C $(TD)$(MOSAIKREAD_DIR)
+--- a/MosaikText/Makefile
++++ b/MosaikText/Makefile
+@@ -26,11 +26,11 @@
+
+ $(PROGRAM): $(BUILT_OBJECTS) $(EXT_OBJECTS)
+ @echo " * linking $(PROGRAM)"
+- @$(CXX) $(LDFLAGS) $(CXXFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(PLATFORM_FLAGS) -o $(TD)$(BIN_DIR)/$@ $^ $(LIBS)
+
+ $(BUILT_OBJECTS): $(SOURCES)
+ @echo " * compiling" $(*F).cpp
+- @$(CXX) -c -o $@ $(*F).cpp $(CXXFLAGS) $(PLATFORM_FLAGS) $(INCLUDES)
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(PLATFORM_FLAGS) $(INCLUDES) -c -o $@ $(*F).cpp
+
+ $(EXT_OBJECTS):
+ @$(MAKE) --no-print-directory -C $(TD)$(MOSAIKREAD_DIR)
+--- a/networkFile/retrainCode/attachXC/Makefile
++++ b/networkFile/retrainCode/attachXC/Makefile
+@@ -3,12 +3,11 @@
+ # (c) 2012 Wan-Ping Lee
+ # ==========================
+
+-FLAGS = -Wall -O3
+
+
+ all: xc_pe.cpp xc_se.cpp
+- @$(CXX) $(FLAGS) xc_pe.cpp -o xc_pe
+- @$(CXX) $(FLAGS) xc_se.cpp -o xc_se
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) xc_pe.cpp -o xc_pe
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) xc_se.cpp -o xc_se
+
+ .PHONY: all
+
+--- a/networkFile/retrainCode/trainNetwork/Makefile
++++ b/networkFile/retrainCode/trainNetwork/Makefile
+@@ -5,8 +5,6 @@
+
+ OBJ_DIR = ./obj
+
+-FLAGS = -Wall -O3
+-CFLAGS = -O3
+ FANN=../../../fann-2.1.0
+
+ SOURCES = sam_parser_float.cpp parameter_parser_float.cpp mq_train_float.cpp
+@@ -15,12 +13,12 @@
+ all: $(FANN)/floatfann.c $(SOURCES)
+ @test -d $(OBJ_DIR) || mkdir $(OBJ_DIR)
+ @echo " * compiling ......"
+- @$(CC) $(CFLAGS) -c -o $(OBJ_DIR)/floatfann.o $(FANN)/floatfann.c -I$(FANN)/include
+- @$(CXX) -c $(FLAGS) -o $(OBJ_DIR)/sam_parser_float.o sam_parser_float.cpp
+- @$(CXX) -c $(FLAGS) -o $(OBJ_DIR)/parameter_parser_float.o parameter_parser_float.cpp
+- @$(CXX) -c $(FLAGS) -o $(OBJ_DIR)/mq_train_float.o mq_train_float.cpp -I$(FANN)/include
++ $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $(OBJ_DIR)/floatfann.o $(FANN)/floatfann.c -I$(FANN)/include
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $(OBJ_DIR)/sam_parser_float.o sam_parser_float.cpp
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $(OBJ_DIR)/parameter_parser_float.o parameter_parser_float.cpp
++ $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $(OBJ_DIR)/mq_train_float.o mq_train_float.cpp -I$(FANN)/include
+ @echo " * linking ......"
+- @$(CXX) $(FLAGS) $(OBJ_DIR)/*.o -o $(PROGRAM)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJ_DIR)/*.o -o $(PROGRAM)
+
+ .PHONY: all
+
diff --git a/sci-biology/mosaik/files/mosaik-2.2.30-remove-platform-code.patch b/sci-biology/mosaik/files/mosaik-2.2.30-remove-platform-code.patch
new file mode 100644
index 000000000000..8573573ec125
--- /dev/null
+++ b/sci-biology/mosaik/files/mosaik-2.2.30-remove-platform-code.patch
@@ -0,0 +1,10 @@
+- Remove macro for enabling large file support, this is better handled at an
+ ebuild level, where the LFS flags can be handled for multiple architectures
+- Remove static flag, which is contrary to Gentoo policy
+
+--- a/includes/linux.inc
++++ b/includes/linux.inc
+@@ -1,2 +1,2 @@
+ # define our processor specific flags
+-export PLATFORM_FLAGS = -D_FILE_OFFSET_BITS=64 -static
++export PLATFORM_FLAGS =
diff --git a/sci-biology/mosaik/metadata.xml b/sci-biology/mosaik/metadata.xml
new file mode 100644
index 000000000000..a3eca9b62b1c
--- /dev/null
+++ b/sci-biology/mosaik/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-biology@gentoo.org</email>
+ <name>Gentoo Biology Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">mosaik-aligner</remote-id>
+ <remote-id type="github">wanpinglee/MOSAIK</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-biology/mosaik/mosaik-2.2.30.ebuild b/sci-biology/mosaik/mosaik-2.2.30.ebuild
new file mode 100644
index 000000000000..45633c47dab5
--- /dev/null
+++ b/sci-biology/mosaik/mosaik-2.2.30.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic toolchain-funcs vcs-snapshot
+
+DESCRIPTION="A reference-guided aligner for next-generation sequencing technologies"
+HOMEPAGE="https://github.com/wanpinglee/MOSAIK"
+SRC_URI="https://github.com/wanpinglee/MOSAIK/archive/5c25216d3522d6a33e53875cd76a6d65001e4e67.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86"
+
+DEPEND=""
+RDEPEND=""
+
+S="${WORKDIR}/${P}/src"
+
+PATCHES=(
+ "${FILESDIR}/${P}-remove-platform-code.patch"
+ "${FILESDIR}/${P}-fix-build-system.patch"
+ "${FILESDIR}/${P}-Wformat-security.patch"
+)
+
+src_configure() {
+ # readd default warning flags from build system
+ append-flags -Wall -Wno-char-subscripts
+ append-lfs-flags
+ export BLD_PLATFORM=linux
+}
+
+src_compile() {
+ emake \
+ CC=$(tc-getCC) \
+ CXX=$(tc-getCXX) \
+ CFLAGS="${CFLAGS}" \
+ CXXFLAGS="${CXXFLAGS}" \
+ CPPFLAGS="${CPPFLAGS}" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin bin/Mosaik*
+
+ dodoc ../README
+
+ insinto /usr/share/${PN}/examples
+ doins -r ../demo/.
+}