diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e8c9db6b7c0941789020bdca76b195fa4fcbb82c..df65303c5f108ca90d1ac08c650d45b43554f299 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -55,3 +55,12 @@ build:amd64.macos:
     script:
       - mkdir build
       - cd build && $(${OSXCROSS_ROOT}/bin/osxcross-conf) && export OSXCROSS_NO_INCLUDE_PATH_WARNINGS=1 && export OSXCROSS_HOST=x86_64-apple-darwin20.4 && cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=${OSXCROSS_ROOT}/toolchain.cmake -DBoost_INCLUDE_DIR=$BOOST_INCLUDE_DIR .. && make -j$(nproc)
+
+
+build:any.android:
+    extends: .tests
+    image: demlabs/android/any:qt5
+    before_script: /opt/buildtools/prepare_environment.sh amd64-osx
+    script:
+      - mkdir build
+      - cd build &&  cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=${ANDROID_CMAKE_TOOLCHAIN} .. && make -j$(nproc)
diff --git a/cmake/OS_Detection.cmake b/cmake/OS_Detection.cmake
index cc29d3333c646fe8db741f6c302a49d3382a042c..032f6ec88db1dc568701acb01f167c40c231e976 100644
--- a/cmake/OS_Detection.cmake
+++ b/cmake/OS_Detection.cmake
@@ -102,8 +102,8 @@ if(UNIX)
         set(CCOPT_SYSTEM "")
         set(LDOPT_SYSTEM "")
         if(DAP_DEBUG)
-            set(_CCOPT "-DDAP_DEBUG ${CFLAGS_WARNINGS} -pg -g3 -ggdb -fno-eliminate-unused-debug-symbols -fno-strict-aliasing -std=gnu1x")
-            set(_LOPT "-pg")
+            set(_CCOPT "-DDAP_DEBUG ${CFLAGS_WARNINGS} -g3 -ggdb -fno-eliminate-unused-debug-symbols -fno-strict-aliasing -std=gnu1x")
+            
             if (DEFINED ENV{DAP_ASAN})
                 message("[!] Address Sanitizer enabled")
                 set(_CCOPT "${_CCOPT} -fsanitize=address -fsanitize-address-use-after-scope -fno-omit-frame-pointer -fno-common -O1")
@@ -125,7 +125,6 @@ if(UNIX)
                 set(_CCOPT "${_CCOPT} -fsanitize=undefined -fsanitize=bounds -fno-omit-frame-pointer")
                 set(_LOPT "${_LOPT} -fsanitize=undefined")
             endif()
-            SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -pg")
         else()
             set(_CCOPT "${CFLAGS_WARNINGS} -fno-ident -ffast-math -ftree-vectorize -fno-asynchronous-unwind-tables -ffunction-sections -Wl,--gc-sections -std=gnu11")
             if (DEFINED ENV{DAP_ASAN})
@@ -172,9 +171,7 @@ if(UNIX)
         set(CCOPT_SYSTEM "-L/usr/local/lib -I/usr/local/include")
         set(LDOPT_SYSTEM "-L/usr/local/lib")
         if(DAP_DEBUG)
-          set(_CCOPT "${CCOPT_SYSTEM} -DDAP_DEBUG ${CFLAGS_WARNINGS} -pg -g3 -ggdb -fno-eliminate-unused-debug-symbols -fno-strict-aliasing")
-          set(_LOPT "-pg ${LDOPT_SYSTEM} ")
-	  SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -pg")
+          set(_CCOPT "${CCOPT_SYSTEM} -DDAP_DEBUG ${CFLAGS_WARNINGS} -g3 -ggdb -fno-eliminate-unused-debug-symbols -fno-strict-aliasing")
         else()
           set(_CCOPT "${CCOPT_SYSTEM} ${CFLAGS_WARNINGS} -O3 -fPIC -fno-strict-aliasing -fno-ident -ffast-math -ftree-vectorize -fno-asynchronous-unwind-tables -ffunction-sections -std=gnu11")
           set(_LOPT "${LDOPT_SYSTEM} ")
diff --git a/core/src/unix/linux/dap_network_monitor.c b/core/src/unix/linux/dap_network_monitor.c
index 4f5cbf27bed359ef1058d3f3d164f8b3ba0014e0..ec6ddaac872d612c8399d83603d066cb5932a1d4 100755
--- a/core/src/unix/linux/dap_network_monitor.c
+++ b/core/src/unix/linux/dap_network_monitor.c
@@ -153,7 +153,7 @@ static void _route_msg_handler(struct nlmsghdr *nlh,
 
     route_attribute_len = RTM_PAYLOAD(nlh);
 
-    for ( ; NLMSG_OK(nlh, received_bytes); \
+    for ( ; NLMSG_OK(nlh, (size_t)received_bytes); \
                        nlh = NLMSG_NEXT(nlh, received_bytes))
        {
            /* Get the route data */
@@ -246,7 +246,7 @@ static void* network_monitor_worker(void *arg)
     while ((len = recvmsg(_net_notification.socket, &msg, 0)) > 0){
         _send_NLM_F_ACK_msg(_net_notification.socket);
 
-        for (nlh = (struct nlmsghdr *) buf; (NLMSG_OK(nlh, len)) && (nlh->nlmsg_type != NLMSG_DONE); nlh = NLMSG_NEXT(nlh, len)) {
+        for (nlh = (struct nlmsghdr *) buf; (NLMSG_OK(nlh, (size_t)len)) && (nlh->nlmsg_type != NLMSG_DONE); nlh = NLMSG_NEXT(nlh, len)) {
             if (nlh->nlmsg_type == NLMSG_ERROR){
                 /* Do some error handling. */
                 log_it(L_DEBUG, "There an error! nlmsg_type %d", nlh->nlmsg_type);
diff --git a/crypto/XKCP/CMakeLists.txt b/crypto/XKCP/CMakeLists.txt
index 6e221138c51bf1c19de2b6c89a6ad09e41f73192..8a5df4b8454ae69bbebb6fefcfe489ad56865215 100644
--- a/crypto/XKCP/CMakeLists.txt
+++ b/crypto/XKCP/CMakeLists.txt
@@ -65,6 +65,7 @@ message("[*] XKCP target: ${TARGET_ARCH} ${XKCP_TARGET}")
 message("[*] XKCP build dir: ${XKCP_BUILD_DIR}")
 message("[*] XKCP make command: ${MAKE}")
 message("[*] XKCP make CC: ${CMAKE_C_COMPILER}")
+message("[*] XKCP make COMPILER_TARGET: ${CMAKE_C_COMPILER_TARGET}")
 message("[*] XKCP make AR: ${CMAKE_AR}")
 message("[*] XKCP compiller supports -march=native: ${COMPILER_SUPPORTS_MARCH_NATIVE}")
 message("[*] XKCP SYSROOT: ${CMAKE_OSX_SYSROOT}")
@@ -74,8 +75,16 @@ SET(XKCP_BUILD_LIB ${XKCP_BUILD_DIR}/bin/${XKCP_TARGET})
 
 file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/ DESTINATION ${XKCP_BUILD_DIR})
 
+if (CMAKE_C_COMPILER_TARGET)
+    set(MAKE_C_FLAGS "--target=${CMAKE_C_COMPILER_TARGET} ${CMAKE_C_FLAGS} ")
+else()
+    set(MAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+endif()
+
+message("[*] XKCP CFLAGS: ${MAKE_C_FLAGS}")
+
 add_custom_target(BuildXKCP ALL
-    COMMAND ${CMAKE_COMMAND}  -E env AR=${CMAKE_AR} CC=${CMAKE_C_COMPILER} SDKROOT=${CMAKE_OSX_SYSROOT}  ${MAKE} -C ./xkcp_build_src ${XKCP_TARGET}
+    COMMAND ${CMAKE_COMMAND}  -E env AR=${CMAKE_AR} CC=${CMAKE_C_COMPILER} CFLAGS=${MAKE_C_FLAGS} SDKROOT=${CMAKE_OSX_SYSROOT}  ${MAKE} -C ./xkcp_build_src ${XKCP_TARGET}
     BYPRODUCTS ${XKCP_BUILD_LIB}
 )
 
diff --git a/crypto/XKCP/lib/LowLevel.build b/crypto/XKCP/lib/LowLevel.build
index fa97960e979d1707ca89f0302ab54f644d02fe27..0f6de1db4c8a6c6509f2e2b664ce0d39ded29df2 100644
--- a/crypto/XKCP/lib/LowLevel.build
+++ b/crypto/XKCP/lib/LowLevel.build
@@ -118,7 +118,6 @@ The fragments below allow to select the desired implementation of the permutatio
         <gcc>-fomit-frame-pointer</gcc>
         <gcc>-O2</gcc>
         <gcc>-g0</gcc>
-        <gcc>-mtune=native</gcc>
     </fragment>
 
     <fragment name="optimized-march-native">
diff --git a/crypto/XKCP/libdap-xkcp-armv7.build b/crypto/XKCP/libdap-xkcp-armv7.build
index 5e08894033b3ebde971e4dc4b9290a13c61b1dc3..1e69adddff52760775c9effedad762b9fcbecb9d 100644
--- a/crypto/XKCP/libdap-xkcp-armv7.build
+++ b/crypto/XKCP/libdap-xkcp-armv7.build
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
 <group>
-	<target name="libdap-XKCP-armv7.a" inherits="FIPS202 K1600-ARMv7A-NEON"/>
-	<target name="libdap-XKCP-armv7-native.a" inherits="FIPS202 K1600-ARMv7A-NEON optimized-march-native"/>
+	<target name="libdap-XKCP-armv7.a" inherits="FIPS202  K1600-plain-64bits-lcua"/>
+	<target name="libdap-XKCP-armv7-native.a" inherits="FIPS202 K1600-plain-64bits-lcua optimized-march-native"/>
 </group>
\ No newline at end of file
diff --git a/crypto/XKCP/libdap-xkcp-armv8.build b/crypto/XKCP/libdap-xkcp-armv8.build
index ee8a334f7006878edb4781e3151dda8a8cdabfec..9cc2c068271a58eb0a9408da56b777f75f38493f 100644
--- a/crypto/XKCP/libdap-xkcp-armv8.build
+++ b/crypto/XKCP/libdap-xkcp-armv8.build
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
 <group>
 	<target name="libdap-XKCP-armv8.a" inherits="FIPS202 K1600-plain-64bits-lcua"/>
-	<target name="libdap-XKCP-armv8-native.a" inherits="FIPS202 K1600-plain-64bits-lcua optimized-march-native"/>
+	<target name="libdap-XKCP-armv8-native.a" inherits="FIPS202 K1600-plain-64bits-lcua"/>
 </group>
\ No newline at end of file