Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1160000 > unrolled thread
| Started by | lucas.de.marchi@gmail.com |
|---|---|
| First post | 2015-06-07 08:30 +0200 |
| Last post | 2015-06-07 08:30 +0200 |
| Articles | 3 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH kmod 0/3] Add feature list together with version lucas.de.marchi@gmail.com - 2015-06-07 08:30 +0200
[PATCH kmod 2/3] build: add relevant features to KMOD_FEATURES in config.h lucas.de.marchi@gmail.com - 2015-06-07 08:30 +0200
[PATCH kmod 1/3] build: add function to build string of features lucas.de.marchi@gmail.com - 2015-06-07 08:30 +0200
| From | lucas.de.marchi@gmail.com |
|---|---|
| Date | 2015-06-07 08:30 +0200 |
| Subject | [PATCH kmod 0/3] Add feature list together with version |
| Message-ID | <pyCfL-7Qr-3@gated-at.bofh.it> |
From: Lucas De Marchi <lucas.demarchi@intel.com> Sample output: $ ./tools/kmod --version kmod version 20 +XZ +ZLIB -EXPERIMENTAL Lucas De Marchi (3): build: add function to build string of features build: add relevant features to KMOD_FEATURES in config.h tools: display features together with version information configure.ac | 7 +++++++ m4/features.m4 | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ tools/depmod.c | 1 + tools/insmod.c | 1 + tools/kmod.c | 1 + tools/modinfo.c | 1 + tools/modprobe.c | 1 + tools/rmmod.c | 1 + 8 files changed, 61 insertions(+) create mode 100644 m4/features.m4 -- 2.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [next] | [standalone]
| From | lucas.de.marchi@gmail.com |
|---|---|
| Date | 2015-06-07 08:30 +0200 |
| Subject | [PATCH kmod 2/3] build: add relevant features to KMOD_FEATURES in config.h |
| Message-ID | <pyCfL-7Qr-5@gated-at.bofh.it> |
| In reply to | #1160000 |
From: Lucas De Marchi <lucas.demarchi@intel.com>
Not all the features (i.e. those available in --enable-* or --with-*)
are really relevant to the final user. Create a KMOD_FEATURES definition
in config.h containing these features.
---
configure.ac | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/configure.ac b/configure.ac
index f83eed5..4dc59ec 100644
--- a/configure.ac
+++ b/configure.ac
@@ -92,6 +92,7 @@ AS_IF([test "x$with_xz" != "xno"], [
], [
AC_MSG_NOTICE([Xz support not requested])
])
+CC_FEATURE_APPEND([with_features], [with_xz], [XZ])
AC_ARG_WITH([zlib],
AS_HELP_STRING([--with-zlib], [handle gzipped modules @<:@default=disabled@:>@]),
@@ -102,6 +103,7 @@ AS_IF([test "x$with_zlib" != "xno"], [
], [
AC_MSG_NOTICE([zlib support not requested])
])
+CC_FEATURE_APPEND([with_features], [with_zlib], [ZLIB])
AC_ARG_WITH([bashcompletiondir],
AS_HELP_STRING([--with-bashcompletiondir=DIR], [Bash completions directory]),
@@ -124,6 +126,7 @@ AM_CONDITIONAL([BUILD_EXPERIMENTAL], [test "x$enable_experimental" = "xyes"])
AS_IF([test "x$enable_experimental" = "xyes"], [
AC_DEFINE(ENABLE_EXPERIMENTAL, [1], [Experimental features.])
])
+CC_FEATURE_APPEND([with_features], [enable_experimental], [EXPERIMENTAL])
AC_ARG_ENABLE([tools],
AS_HELP_STRING([--disable-tools], [disable building tools that provide same functionality as module-init-tools @<:@default=enabled@:>@]),
@@ -256,6 +259,8 @@ CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [ \
-Wl,--gc-sections])
AC_SUBST([OUR_LDFLAGS], $with_ldflags)
+AC_DEFINE_UNQUOTED(KMOD_FEATURES, ["$with_features"], [Features in this build])
+
#####################################################################
# Generate files from *.in
#####################################################################
@@ -297,4 +302,6 @@ AC_MSG_RESULT([
doc: ${enable_gtk_doc}
man: ${enable_manpages}
test-modules: ${enable_test_modules}
+
+ features: ${with_features}
])
--
2.4.2
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [next] | [standalone]
| From | lucas.de.marchi@gmail.com |
|---|---|
| Date | 2015-06-07 08:30 +0200 |
| Subject | [PATCH kmod 1/3] build: add function to build string of features |
| Message-ID | <pyCfL-7Qr-7@gated-at.bofh.it> |
| In reply to | #1160000 |
From: Lucas De Marchi <lucas.demarchi@intel.com> Add a CC_FEATURE_APPEND function that we can use to append the features that are enabled/disabled. This will generate a single string in the form "+FEATURE1 +FEATURE2 -FEATURE3". --- m4/features.m4 | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 m4/features.m4 diff --git a/m4/features.m4 b/m4/features.m4 new file mode 100644 index 0000000..82a244f --- /dev/null +++ b/m4/features.m4 @@ -0,0 +1,48 @@ +# Copyright (c) 2015 Lucas De Marchi <lucas.de.marchi@gmail.com> +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. +# +# CC_FEATURE_APPEND([FLAGS], [ENV-TO-CHECK], [FLAG-NAME]) +AC_DEFUN([CC_FEATURE_APPEND], [ + AS_VAR_PUSHDEF([FLAGS], [$1])dnl + AS_VAR_PUSHDEF([ENV_CHECK], [$2])dnl + AS_VAR_PUSHDEF([FLAG_NAME], [$3])dnl + + AS_CASE([" AS_VAR_GET(FLAGS) " ], + [*" FLAG_NAME "*], [AC_RUN_LOG([: FLAGS already contains FLAG_NAME])], + [ + AS_IF([test "x$FLAGS" != "x"], [AS_VAR_APPEND(FLAGS, " ")]) + AS_IF([test "x$ENV_CHECK" = "xyes"], + [AS_VAR_APPEND(FLAGS, "+FLAG_NAME")], + [AS_VAR_APPEND(FLAGS, "-FLAG_NAME")]) + ] + ) + + AS_VAR_POPDEF([FLAG_NAME])dnl + AS_VAR_POPDEF([ENV_CHECK])dnl + AS_VAR_POPDEF([FLAGS])dnl +]) -- 2.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web