未验证 提交 b7471464 编写于 作者: P plum-lihui 提交者: GitHub

Merge pull request #971 from xrdavies/alpine_support

Alpine support
...@@ -70,6 +70,13 @@ IF (NOT DEFINED TD_CLUSTER) ...@@ -70,6 +70,13 @@ IF (NOT DEFINED TD_CLUSTER)
ENDIF () ENDIF ()
ENDIF () ENDIF ()
#
# Get OS information and store in variable TD_OS_INFO.
#
execute_process(COMMAND chmod 777 ${TD_COMMUNITY_DIR}/packaging/tools/get_os.sh)
execute_process(COMMAND ${TD_COMMUNITY_DIR}/packaging/tools/get_os.sh "" OUTPUT_VARIABLE TD_OS_INFO)
MESSAGE(STATUS "The current os is " ${TD_OS_INFO})
IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux") IF (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
IF (${CMAKE_SIZEOF_VOID_P} MATCHES 8) IF (${CMAKE_SIZEOF_VOID_P} MATCHES 8)
SET(TD_LINUX_64 TRUE) SET(TD_LINUX_64 TRUE)
...@@ -150,6 +157,13 @@ IF (NOT DEFINED TD_CLUSTER) ...@@ -150,6 +157,13 @@ IF (NOT DEFINED TD_CLUSTER)
ENDIF () ENDIF ()
ADD_DEFINITIONS(-DLINUX) ADD_DEFINITIONS(-DLINUX)
ADD_DEFINITIONS(-D_REENTRANT -D__USE_POSIX -D_LIBC_REENTRANT) ADD_DEFINITIONS(-D_REENTRANT -D__USE_POSIX -D_LIBC_REENTRANT)
IF (${TD_OS_INFO} MATCHES "Alpine")
MESSAGE(STATUS "The current OS is Alpine, append extra flags")
SET(COMMON_FLAGS "${COMMON_FLAGS} -largp")
link_libraries(/usr/lib/libargp.a)
ELSE ()
ADD_DEFINITIONS(-D__USE_GNU)
ENDIF ()
ELSEIF (TD_LINUX_32) ELSEIF (TD_LINUX_32)
IF (NOT TD_ARM) IF (NOT TD_ARM)
EXIT () EXIT ()
...@@ -160,6 +174,13 @@ IF (NOT DEFINED TD_CLUSTER) ...@@ -160,6 +174,13 @@ IF (NOT DEFINED TD_CLUSTER)
ADD_DEFINITIONS(-DLINUX) ADD_DEFINITIONS(-DLINUX)
ADD_DEFINITIONS(-D_REENTRANT -D__USE_POSIX -D_LIBC_REENTRANT) ADD_DEFINITIONS(-D_REENTRANT -D__USE_POSIX -D_LIBC_REENTRANT)
ADD_DEFINITIONS(-DUSE_LIBICONV) ADD_DEFINITIONS(-DUSE_LIBICONV)
IF (${TD_OS_INFO} MATCHES "Alpine")
MESSAGE(STATUS "The current OS is Alpine, add extra flags")
SET(COMMON_FLAGS "${COMMON_FLAGS} -largp")
link_library(/usr/lib/libargp.a)
ELSE ()
ADD_DEFINITIONS(-D__USE_GNU)
ENDIF ()
ELSEIF (TD_WINDOWS_64) ELSEIF (TD_WINDOWS_64)
SET(CMAKE_GENERATOR "NMake Makefiles" CACHE INTERNAL "" FORCE) SET(CMAKE_GENERATOR "NMake Makefiles" CACHE INTERNAL "" FORCE)
SET(COMMON_FLAGS "/nologo /WX- /Oi /Oy- /Gm- /EHsc /MT /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Gd /errorReport:prompt /analyze-") SET(COMMON_FLAGS "/nologo /WX- /Oi /Oy- /Gm- /EHsc /MT /GS /Gy /fp:precise /Zc:wchar_t /Zc:forScope /Gd /errorReport:prompt /analyze-")
......
...@@ -10,7 +10,7 @@ tdengine_ver=$3 ...@@ -10,7 +10,7 @@ tdengine_ver=$3
armver=$4 armver=$4
script_dir="$(dirname $(readlink -f $0))" script_dir="$(dirname $(readlink -f $0))"
top_dir="$(readlink -m ${script_dir}/../..)" top_dir="$(readlink -f ${script_dir}/../..)"
pkg_dir="${top_dir}/debworkroom" pkg_dir="${top_dir}/debworkroom"
#echo "curr_dir: ${curr_dir}" #echo "curr_dir: ${curr_dir}"
......
...@@ -9,7 +9,7 @@ armver=$1 ...@@ -9,7 +9,7 @@ armver=$1
curr_dir=$(pwd) curr_dir=$(pwd)
script_dir="$(dirname $(readlink -f $0))" script_dir="$(dirname $(readlink -f $0))"
top_dir="$(readlink -m ${script_dir}/..)" top_dir="$(readlink -f ${script_dir}/..)"
versioninfo="${top_dir}/src/util/src/version.c" versioninfo="${top_dir}/src/util/src/version.c"
csudo="" csudo=""
......
...@@ -12,7 +12,7 @@ tdengine_ver=$3 ...@@ -12,7 +12,7 @@ tdengine_ver=$3
armver=$4 armver=$4
script_dir="$(dirname $(readlink -f $0))" script_dir="$(dirname $(readlink -f $0))"
top_dir="$(readlink -m ${script_dir}/../..)" top_dir="$(readlink -f ${script_dir}/../..)"
pkg_dir="${top_dir}/rpmworkroom" pkg_dir="${top_dir}/rpmworkroom"
spec_file="${script_dir}/tdengine.spec" spec_file="${script_dir}/tdengine.spec"
......
#!/bin/bash
#
# This file is used to install TAOS time-series database on linux systems. The operating system
# is required to use systemd to manage services at boot
set -e
# set -x
# -----------------------Variables definition---------------------
OS=$(cat /etc/*-release | grep "^NAME=" | cut -d= -f2)
len=$(echo ${#OS})
len=$((len-2))
retval=$(echo -ne ${OS:1:${len}} | cut -d" " -f0)
echo -ne $retval
...@@ -7,7 +7,7 @@ set -e ...@@ -7,7 +7,7 @@ set -e
#set -x #set -x
# -----------------------Variables definition--------------------- # -----------------------Variables definition---------------------
script_dir=$(dirname $(readlink -m "$0")) script_dir=$(dirname $(readlink -f "$0"))
# Dynamic directory # Dynamic directory
data_dir="/var/lib/taos" data_dir="/var/lib/taos"
log_dir="/var/log/taos" log_dir="/var/log/taos"
......
...@@ -7,7 +7,7 @@ set -e ...@@ -7,7 +7,7 @@ set -e
#set -x #set -x
# -----------------------Variables definition--------------------- # -----------------------Variables definition---------------------
script_dir=$(dirname $(readlink -m "$0")) script_dir=$(dirname $(readlink -f "$0"))
# Dynamic directory # Dynamic directory
data_dir="/var/lib/taos" data_dir="/var/lib/taos"
log_dir="/var/log/taos" log_dir="/var/log/taos"
......
...@@ -9,7 +9,7 @@ set -e ...@@ -9,7 +9,7 @@ set -e
# -----------------------Variables definition--------------------- # -----------------------Variables definition---------------------
source_dir=$1 source_dir=$1
binary_dir=$2 binary_dir=$2
script_dir=$(dirname $(readlink -m "$0")) script_dir=$(dirname $(readlink -f "$0"))
# Dynamic directory # Dynamic directory
data_dir="/var/lib/taos" data_dir="/var/lib/taos"
log_dir="/var/log/taos" log_dir="/var/log/taos"
......
...@@ -11,7 +11,7 @@ build_time=$3 ...@@ -11,7 +11,7 @@ build_time=$3
armver=$4 armver=$4
script_dir="$(dirname $(readlink -f $0))" script_dir="$(dirname $(readlink -f $0))"
top_dir="$(readlink -m ${script_dir}/../..)" top_dir="$(readlink -f ${script_dir}/../..)"
# create compressed install file. # create compressed install file.
build_dir="${compile_dir}/build" build_dir="${compile_dir}/build"
......
...@@ -9,7 +9,7 @@ build_time=$3 ...@@ -9,7 +9,7 @@ build_time=$3
armver=$4 armver=$4
script_dir="$(dirname $(readlink -f $0))" script_dir="$(dirname $(readlink -f $0))"
top_dir="$(readlink -m ${script_dir}/../..)" top_dir="$(readlink -f ${script_dir}/../..)"
# create compressed install file. # create compressed install file.
build_dir="${compile_dir}/build" build_dir="${compile_dir}/build"
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# is required to use systemd to manage services at boot # is required to use systemd to manage services at boot
#set -x #set -x
# -----------------------Variables definition--------------------- # -----------------------Variables definition---------------------
script_dir=$(dirname $(readlink -m "$0")) script_dir=$(dirname $(readlink -f "$0"))
# Dynamic directory # Dynamic directory
data_dir="/var/lib/taos" data_dir="/var/lib/taos"
log_dir="/var/log/taos" log_dir="/var/log/taos"
......
...@@ -17,7 +17,7 @@ done ...@@ -17,7 +17,7 @@ done
declare -A dirHash declare -A dirHash
for linkFile in $(find -L $linkDir -xtype l); do for linkFile in $(find -L $linkDir -xtype l); do
targetFile=$(readlink -m $linkFile) targetFile=$(readlink -f $linkFile)
echo "targetFile: ${targetFile}" echo "targetFile: ${targetFile}"
# TODO : Extract directory part and basename part # TODO : Extract directory part and basename part
dirName=$(dirname $(dirname ${targetFile})) dirName=$(dirname $(dirname ${targetFile}))
......
...@@ -130,7 +130,11 @@ void shellParseArgument(int argc, char *argv[], struct arguments *arguments) { ...@@ -130,7 +130,11 @@ void shellParseArgument(int argc, char *argv[], struct arguments *arguments) {
argp_parse(&argp, argc, argv, 0, 0, arguments); argp_parse(&argp, argc, argv, 0, 0, arguments);
if (arguments->abort) { if (arguments->abort) {
error(10, 0, "ABORTED"); #ifdef __USE_GNU
error(10, 0, "ABORTED");
#else
abort();
#endif
} }
} }
......
...@@ -17,7 +17,10 @@ ...@@ -17,7 +17,10 @@
#include <argp.h> #include <argp.h>
#include <assert.h> #include <assert.h>
#if !defined (__USE_GNU) && defined (LINUX)
#else
#include <error.h> #include <error.h>
#endif
#include <pthread.h> #include <pthread.h>
#include <semaphore.h> #include <semaphore.h>
#include <stdbool.h> #include <stdbool.h>
...@@ -309,7 +312,13 @@ int main(int argc, char *argv[]) { ...@@ -309,7 +312,13 @@ int main(int argc, char *argv[]) {
argp_parse(&argp, argc, argv, 0, 0, &arguments); argp_parse(&argp, argc, argv, 0, 0, &arguments);
if (arguments.abort) error(10, 0, "ABORTED"); if (arguments.abort) {
#ifdef __USE_GNU
error(10, 0, "ABORTED");
#else
abort();
#endif
}
enum MODE query_mode = arguments.mode; enum MODE query_mode = arguments.mode;
char *ip_addr = arguments.host; char *ip_addr = arguments.host;
......
...@@ -15,7 +15,10 @@ ...@@ -15,7 +15,10 @@
#include <argp.h> #include <argp.h>
#include <assert.h> #include <assert.h>
#if !defined (__USE_GNU) && defined (LINUX)
#else
#include <error.h> #include <error.h>
#endif
#include <fcntl.h> #include <fcntl.h>
#include <stdbool.h> #include <stdbool.h>
#include <stdio.h> #include <stdio.h>
...@@ -335,7 +338,13 @@ int main(int argc, char *argv[]) { ...@@ -335,7 +338,13 @@ int main(int argc, char *argv[]) {
reflected in arguments. */ reflected in arguments. */
argp_parse(&argp, argc, argv, 0, 0, &arguments); argp_parse(&argp, argc, argv, 0, 0, &arguments);
if (arguments.abort) error(10, 0, "ABORTED"); if (arguments.abort) {
#ifdef __USE_GNU
error(10, 0, "ABORTED");
#else
abort();
#endif
}
if (taosCheckParam(&arguments) < 0) { if (taosCheckParam(&arguments) < 0) {
exit(EXIT_FAILURE); exit(EXIT_FAILURE);
......
...@@ -229,6 +229,14 @@ void taosSetCoreDump(); ...@@ -229,6 +229,14 @@ void taosSetCoreDump();
void taosBlockSIGPIPE(); void taosBlockSIGPIPE();
#ifndef __USE_GNU
typedef int(*__compar_fn_t)(const void *, const void *);
void error (int, int, const char *);
#ifndef PTHREAD_MUTEX_RECURSIVE_NP
#define PTHREAD_MUTEX_RECURSIVE_NP PTHREAD_MUTEX_RECURSIVE
#endif
#endif
#define BUILDIN_CLZL(val) __builtin_clzl(val) #define BUILDIN_CLZL(val) __builtin_clzl(val)
#define BUILDIN_CLZ(val) __builtin_clz(val) #define BUILDIN_CLZ(val) __builtin_clz(val)
#define BUILDIN_CTZL(val) __builtin_ctzl(val) #define BUILDIN_CTZL(val) __builtin_ctzl(val)
......
...@@ -234,8 +234,15 @@ void *taosProcessAlarmSignal(void *tharg) { ...@@ -234,8 +234,15 @@ void *taosProcessAlarmSignal(void *tharg) {
timer_t timerId; timer_t timerId;
struct sigevent sevent; struct sigevent sevent;
sevent.sigev_notify = SIGEV_THREAD_ID;
sevent._sigev_un._tid = syscall(__NR_gettid); #ifndef __USE_GNU
sevent.sigev_notify = SIGEV_THREAD;
sevent.sigev_value.sival_int = syscall(__NR_gettid);
#else
sevent.sigev_notify = SIGEV_THREAD_ID;
sevent._sigev_un._tid = syscall(__NR_gettid);
#endif
sevent.sigev_signo = SIGALRM; sevent.sigev_signo = SIGALRM;
if (timer_create(CLOCK_REALTIME, &sevent, &timerId) == -1) { if (timer_create(CLOCK_REALTIME, &sevent, &timerId) == -1) {
......
...@@ -27,12 +27,15 @@ ...@@ -27,12 +27,15 @@
#include <unistd.h> #include <unistd.h>
#include <sys/types.h> #include <sys/types.h>
#include <sys/resource.h> #include <sys/resource.h>
#include <sys/sysctl.h>
#include <sys/syscall.h>
#include <string.h> #include <string.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#ifndef __USE_GNU
#include <linux/sysctl.h> #include <linux/sysctl.h>
#else
#include <sys/sysctl.h>
#endif
#include "tglobalcfg.h" #include "tglobalcfg.h"
#include "tlog.h" #include "tlog.h"
......
...@@ -21,6 +21,7 @@ extern "C" { ...@@ -21,6 +21,7 @@ extern "C" {
#endif #endif
#include <stdint.h> #include <stdint.h>
#include <pthread.h>
#define tsetModuleStatus(mod) \ #define tsetModuleStatus(mod) \
{ tsModuleStatus |= (1 << mod); } { tsModuleStatus |= (1 << mod); }
......
...@@ -579,7 +579,7 @@ static int vnodeCloseImportFiles(SMeterObj *pObj, SImportHandle *pHandle) { ...@@ -579,7 +579,7 @@ static int vnodeCloseImportFiles(SMeterObj *pObj, SImportHandle *pHandle) {
SVnodeObj *pVnode = vnodeList + pObj->vnode; SVnodeObj *pVnode = vnodeList + pObj->vnode;
char dpath[TSDB_FILENAME_LEN] = "\0"; char dpath[TSDB_FILENAME_LEN] = "\0";
SCompInfo compInfo; SCompInfo compInfo;
__off_t offset = 0; off_t offset = 0;
if (pVnode->nfd > 0) { if (pVnode->nfd > 0) {
offset = lseek(pVnode->nfd, 0, SEEK_CUR); offset = lseek(pVnode->nfd, 0, SEEK_CUR);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册