From 85c0f9d73624818e9dd3d8c62758cd0b07ab470d Mon Sep 17 00:00:00 2001 From: Hunter Li Date: Thu, 17 Dec 2020 15:33:30 +0800 Subject: [PATCH] Build daemonize for Android --- Android.mk | 8 ++++++++ Application.mk | 1 + android-config.h | 14 ++++++++++++++ daemonize.c | 13 ++++++++----- jni | 1 + 5 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 Android.mk create mode 100644 Application.mk create mode 100644 android-config.h create mode 120000 jni diff --git a/Android.mk b/Android.mk new file mode 100644 index 0000000..81c438e --- /dev/null +++ b/Android.mk @@ -0,0 +1,8 @@ +LOCAL_PATH := $(call my-dir) + +include $(CLEAR_VARS) + +LOCAL_MODULE := daemonize +LOCAL_SRC_FILES := getopt.c daemonize.c + +include $(BUILD_EXECUTABLE) diff --git a/Application.mk b/Application.mk new file mode 100644 index 0000000..c55d923 --- /dev/null +++ b/Application.mk @@ -0,0 +1 @@ +APP_STL := none diff --git a/android-config.h b/android-config.h new file mode 100644 index 0000000..f7308bf --- /dev/null +++ b/android-config.h @@ -0,0 +1,14 @@ +#include +#include +#include +#include +#include + +#define FALSE false +#define TRUE true + +extern int x_getopt (int argc, char **argv, const char *opts); +extern int x_opterr; +extern int x_optind; +extern int x_optopt; +extern char *x_optarg; \ No newline at end of file diff --git a/daemonize.c b/daemonize.c index d20d485..03089f0 100644 --- a/daemonize.c +++ b/daemonize.c @@ -25,7 +25,11 @@ #include #include #include +#ifndef ANDROID #include "config.h" +#else +#include "android-config.h" +#endif #include "version.h" /*---------------------------------------------------------------------------*\ @@ -95,7 +99,7 @@ static void verbose(const char *format, ...) */ static void usage(char *prog) { - static const char *USAGE[] = + static const char *USAGE[] = { "Usage: %s [OPTIONS] path [arg] ...", "", @@ -360,12 +364,12 @@ static void open_output_files() { if ((out_fd = open_output_file(out_file)) == -1) { - die("Can't open \"%s\" for stdout: %s\n", + die("Can't open \"%s\" for stdout: %s\n", out_file, strerror(errno)); } } - else + else { out_fd = null_fd; } @@ -377,7 +381,7 @@ static void open_output_files() else if ((err_fd = open_output_file(err_file)) == -1) { - die("Can't open \"%s\" for stderr: %s\n", + die("Can't open \"%s\" for stderr: %s\n", err_file, strerror (errno)); } } @@ -530,4 +534,3 @@ int main(int argc, char **argv) } /* vim: set et sw=4 sts=4 : */ - diff --git a/jni b/jni new file mode 120000 index 0000000..945c9b4 --- /dev/null +++ b/jni @@ -0,0 +1 @@ +. \ No newline at end of file