From 35f328ad85f6ad46199491df03844ee3cfbe7543 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Wed, 4 Sep 2024 19:11:53 -0500 Subject: [PATCH] Update: Add android build support. --- data/build/remove/settings | 14 +++++++++----- data/build/remove/settings.remove | 14 +++++++++----- data/build/stand_alone/settings/settings.remove | 6 +++++- data/build/stand_alone/settings/settings.tacocat | 6 +++++- data/build/tacocat/settings | 14 +++++++++----- data/build/tacocat/settings.tacocat | 14 +++++++++----- 6 files changed, 46 insertions(+), 22 deletions(-) diff --git a/data/build/remove/settings b/data/build/remove/settings index a1e0431..bbcbb26 100644 --- a/data/build/remove/settings +++ b/data/build/remove/settings @@ -3,15 +3,16 @@ # Builds the remove library of the project. # # Modes: -# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. -# - individual_thread: This is required when compiling in individual mode with "thread" mode. -# - level: Compile using per level libraries. -# - monolithic: Compile using per monolithic libraries. +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. # - gcc: Use GCC specific settings. # - gcc_13: Use gcc version 13 or greater specific settings. +# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. +# - individual_thread: This is required when compiling in individual mode with "thread" mode. +# - level: Compile using per level libraries. +# - monolithic: Compile using per monolithic libraries. # - test: Compile for a test, such as unit testing. # - thread: Compile with thread support. # - threadless: Compile without thread support. @@ -26,7 +27,7 @@ version_micro 0 version_file micro version_target minor -modes individual individual_thread level monolithic clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 individual individual_thread level monolithic test thread threadless modes_default monolithic thread gcc build_compiler gcc @@ -78,6 +79,7 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L #defines -D_di_libcap_ defines -D_libcap_legacy_only_ defines -D_use_timegm_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-threadless -D_di_thread_support_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ @@ -87,6 +89,7 @@ defines -D_GNU_SOURCE=1 flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-clang -Wno-logical-op-parentheses flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags-fanalyzer -fanalyzer @@ -97,3 +100,4 @@ flags-thread -pthread flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro diff --git a/data/build/remove/settings.remove b/data/build/remove/settings.remove index 84fe984..4f4e975 100644 --- a/data/build/remove/settings.remove +++ b/data/build/remove/settings.remove @@ -3,15 +3,16 @@ # Builds the remove program of the project. # # Modes: -# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. -# - individual_thread: This is required when compiling in individual mode with "thread" mode. -# - level: Compile using per level libraries. -# - monolithic: Compile using per monolithic libraries. +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. # - gcc: Use GCC specific settings. # - gcc_13: Use gcc version 13 or greater specific settings. +# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. +# - individual_thread: This is required when compiling in individual mode with "thread" mode. +# - level: Compile using per level libraries. +# - monolithic: Compile using per monolithic libraries. # - test: Compile for a test, such as unit testing. # - thread: Compile with thread support. # - threadless: Compile without thread support. @@ -26,7 +27,7 @@ version_micro 0 version_file micro version_target minor -modes individual individual_thread level monolithic clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 individual individual_thread level monolithic test thread threadless modes_default monolithic thread gcc build_compiler gcc @@ -77,6 +78,7 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L #defines -D_di_libcap_ defines -D_libcap_legacy_only_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-threadless -D_di_thread_support_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ @@ -86,6 +88,7 @@ defines -D_GNU_SOURCE=1 flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-clang -Wno-logical-op-parentheses flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags-fanalyzer -fanalyzer @@ -96,3 +99,4 @@ flags-thread -pthread flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro diff --git a/data/build/stand_alone/settings/settings.remove b/data/build/stand_alone/settings/settings.remove index 19ec565..71ed7ee 100644 --- a/data/build/stand_alone/settings/settings.remove +++ b/data/build/stand_alone/settings/settings.remove @@ -6,6 +6,7 @@ # fake -s data/build/stand_alone/settings/settings.remove clean build # # Modes: +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. @@ -25,7 +26,7 @@ version_micro 0 version_file micro version_target minor -modes clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 test thread threadless modes_default thread gcc build_compiler gcc @@ -103,6 +104,7 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L defines -include sources/c/remove-config.h -I sources/c/ #defines -D_di_libcap_ defines -D_libcap_legacy_only_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ defines-threadless -D_di_thread_support_ @@ -112,6 +114,7 @@ defines -D_GNU_SOURCE=1 flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-clang -Wno-logical-op-parentheses flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags-fanalyzer -fanalyzer @@ -122,3 +125,4 @@ flags-thread -pthread flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro diff --git a/data/build/stand_alone/settings/settings.tacocat b/data/build/stand_alone/settings/settings.tacocat index 6628f9f..0b45743 100644 --- a/data/build/stand_alone/settings/settings.tacocat +++ b/data/build/stand_alone/settings/settings.tacocat @@ -6,6 +6,7 @@ # fake -s data/build/stand_alone/settings/settings.tacocat clean build # # Modes: +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. @@ -25,7 +26,7 @@ version_micro 0 version_file micro version_target minor -modes clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 test thread threadless modes_default thread gcc build_compiler gcc @@ -109,12 +110,14 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L defines -include sources/c/tacocat-config.h -I sources/c/ #defines -D_di_libcap_ defines -D_libcap_legacy_only_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ defines-threadless -D_di_thread_support_ flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-clang -Wno-logical-op-parentheses flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags-fanalyzer -fanalyzer @@ -125,3 +128,4 @@ flags-thread -pthread flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro diff --git a/data/build/tacocat/settings b/data/build/tacocat/settings index 2f5474b..9e35d0a 100644 --- a/data/build/tacocat/settings +++ b/data/build/tacocat/settings @@ -3,15 +3,16 @@ # Builds the main tacocat program of the project. # # Modes: -# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. -# - individual_thread: This is required when compiling in individual mode with "thread" mode. -# - level: Compile using per level libraries. -# - monolithic: Compile using per monolithic libraries. +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. # - gcc: Use GCC specific settings. # - gcc_13: Use gcc version 13 or greater specific settings. +# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. +# - individual_thread: This is required when compiling in individual mode with "thread" mode. +# - level: Compile using per level libraries. +# - monolithic: Compile using per monolithic libraries. # - test: Compile for a test, such as unit testing. # - thread: Compile with thread support. # - threadless: Compile without thread support. @@ -26,7 +27,7 @@ version_micro 0 version_file micro version_target minor -modes individual individual_thread level monolithic clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 individual individual_thread level monolithic test thread threadless modes_default monolithic thread gcc build_compiler gcc @@ -77,12 +78,14 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L #defines -D_di_libcap_ defines -D_libcap_legacy_only_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-threadless -D_di_thread_support_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-thread -pthread flags-clang -Wno-logical-op-parentheses flags-gcc_13 -fstrict-flex-arrays=3 @@ -93,3 +96,4 @@ flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro diff --git a/data/build/tacocat/settings.tacocat b/data/build/tacocat/settings.tacocat index 684c3a6..edb6349 100644 --- a/data/build/tacocat/settings.tacocat +++ b/data/build/tacocat/settings.tacocat @@ -3,15 +3,16 @@ # Builds the main tacocat program of the project. # # Modes: -# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. -# - individual_thread: This is required when compiling in individual mode with "thread" mode. -# - level: Compile using per level libraries. -# - monolithic: Compile using per monolithic libraries. +# - android: Compile on an android system (using Termux; may need modification depending on the android system). # - clang: Use CLang rather than the default, which is generally GCC. # - coverage: Compile for building coverage. # - fanalyzer: Compile using GCC's -fanalyzer compile time option. # - gcc: Use GCC specific settings. # - gcc_13: Use gcc version 13 or greater specific settings. +# - individual: Compile using per project (individual) libraries, does not handle thread or threadless cases. +# - individual_thread: This is required when compiling in individual mode with "thread" mode. +# - level: Compile using per level libraries. +# - monolithic: Compile using per monolithic libraries. # - test: Compile for a test, such as unit testing. # - thread: Compile with thread support. # - threadless: Compile without thread support. @@ -26,7 +27,7 @@ version_micro 0 version_file micro version_target minor -modes individual individual_thread level monolithic clang coverage fanalyzer gcc gcc_13 test thread threadless +modes android clang coverage fanalyzer gcc gcc_13 individual individual_thread level monolithic test thread threadless modes_default monolithic thread gcc build_compiler gcc @@ -77,12 +78,14 @@ environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY L #defines -D_di_libcap_ defines -D_libcap_legacy_only_ +defines-android -D_di_f_thread_attribute_affinity_get_ -D_di_f_thread_attribute_affinity_set_ -D_di_f_thread_attribute_concurrency_get_ -D_di_f_thread_attribute_concurrency_set_ -D_di_f_thread_attribute_default_get_ -D_di_f_thread_attribute_default_set_ -D_di_f_thread_cancel_ -D_di_f_thread_cancel_state_set_ -D_di_f_thread_cancel_test_ -D_di_f_thread_join_try_ -D_di_f_thread_join_timed_ -D_pthread_mutex_prioceiling_unsupported_ -D_di_f_thread_semaphore_file_close_ -D_di_f_thread_semaphore_file_open_ -D_di_f_thread_semaphore_file_delete_ -D_di_f_thread_cancel_type_set_ defines-threadless -D_di_thread_support_ defines-thread -D_pthread_attr_unsupported_ -D_pthread_sigqueue_unsupported_ flags -O2 -g -fdiagnostics-color=always -Wno-logical-not-parentheses -Wno-parentheses -Wno-missing-braces flags -fstack-clash-protection -fno-delete-null-pointer-checks flags -Wl,-z,nodlopen -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now +flags-android -Wno-implicit-function-declaration -Wl,-z,norelro flags-clang -Wno-logical-op-parentheses flags-coverage -O0 --coverage -fprofile-abs-path -fprofile-dir=build/coverage/ flags-fanalyzer -fanalyzer @@ -93,3 +96,4 @@ flags-thread -pthread flags_library -fPIC flags_object -fPIC flags_program -fPIE +flags_program-android -fPIE -Wl,-z,relro -- 1.8.3.1