[maemo-commits] [maemo-commits] r19014 - in projects/haf/trunk/hildon-input-method-plugins-example: . m4 src
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Fri Jul 31 14:21:08 EEST 2009
- Previous message: [maemo-commits] r19013 - in projects/haf/trunk/hildon-input-method-plugins-example: . src
- Next message: [maemo-commits] r19015 - in projects/haf/trunk/hildon-input-method-plugins-example: . src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: murrayc Date: 2009-07-31 14:21:03 +0300 (Fri, 31 Jul 2009) New Revision: 19014 Added: projects/haf/trunk/hildon-input-method-plugins-example/m4/ projects/haf/trunk/hildon-input-method-plugins-example/m4/dk-warn.m4 Modified: projects/haf/trunk/hildon-input-method-plugins-example/ChangeLog projects/haf/trunk/hildon-input-method-plugins-example/INSTALL projects/haf/trunk/hildon-input-method-plugins-example/Makefile.am projects/haf/trunk/hildon-input-method-plugins-example/autogen.sh projects/haf/trunk/hildon-input-method-plugins-example/configure.ac projects/haf/trunk/hildon-input-method-plugins-example/src/Makefile.am projects/haf/trunk/hildon-input-method-plugins-example/src/him-vkb-example.c Log: 2009-06-25 Murray Cumming <murrayc at murrayc.com> * m4/dk-warn.m4: Added this file, providing the DK_ARG_ENABLE_WARNINGS macro, to provide an --enable-warnings= configure option. * configure.ac: Used it. * Makefile.am: Set ACLOCAL_AMFLAGS, specifying our m4 directory. * autogen.sh: Updated this to use autoreconf, so it can discover where the m4 directory is for aclocal. * src/him-vkb-example.c: Fixed two simple compiler warnings. * INSTALL: This was empty, but now it has the standard generated contents. Modified: projects/haf/trunk/hildon-input-method-plugins-example/ChangeLog =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/ChangeLog 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/ChangeLog 2009-07-31 11:21:03 UTC (rev 19014) @@ -1,3 +1,15 @@ +2009-06-25 Murray Cumming <murrayc at murrayc.com> + + * m4/dk-warn.m4: Added this file, providing the DK_ARG_ENABLE_WARNINGS + macro, to provide an --enable-warnings= configure option. + * configure.ac: Used it. + * Makefile.am: Set ACLOCAL_AMFLAGS, specifying our m4 directory. + * autogen.sh: Updated this to use autoreconf, so it can discover where the + m4 directory is for aclocal. + * src/him-vkb-example.c: Fixed two simple compiler warnings. + + * INSTALL: This was empty, but now it has the standard generated contents. + 2009-06-23 Murray Cumming <murrayc at murrayc.com> * src/Makefile.am: Call hildon-im-recache after install and uninstall, Modified: projects/haf/trunk/hildon-input-method-plugins-example/INSTALL =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/INSTALL 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/INSTALL 2009-07-31 11:21:03 UTC (rev 19014) @@ -0,0 +1,229 @@ +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software +Foundation, Inc. + + This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +Basic Installation +================== + + These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. (Caching is +disabled by default to prevent problems with accidental use of stale +cache files.) + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You only need +`configure.ac' if you want to change it or regenerate `configure' using +a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + + Some systems require unusual options for compilation or linking that +the `configure' script does not know about. Run `./configure --help' +for details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + + You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not support the `VPATH' +variable, you have to compile the package for one architecture at a +time in the source code directory. After you have installed the +package for one architecture, use `make distclean' before reconfiguring +for another architecture. + +Installation Names +================== + + By default, `make install' will install the package's files in +`/usr/local/bin', `/usr/local/man', etc. You can specify an +installation prefix other than `/usr/local' by giving `configure' the +option `--prefix=PATH'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +give `configure' the option `--exec-prefix=PATH', the package will use +PATH as the prefix for installing programs and libraries. +Documentation and other data files will still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=PATH' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + + Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + + There may be some features `configure' cannot figure out +automatically, but needs to determine by the type of machine the package +will run on. Usually, assuming the package is built to be run on the +_same_ architectures, `configure' can figure that out, but if it prints +a message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the `--target=TYPE' option to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + + If you want to set default values for `configure' scripts to share, +you can create a site shell script called `config.site' that gives +default values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + + Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +will cause the specified gcc to be used as the C compiler (unless it is +overridden in the site shell script). + +`configure' Invocation +====================== + + `configure' recognizes the following options to control how it +operates. + +`--help' +`-h' + Print a summary of the options to `configure', and exit. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. + Modified: projects/haf/trunk/hildon-input-method-plugins-example/Makefile.am =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/Makefile.am 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/Makefile.am 2009-07-31 11:21:03 UTC (rev 19014) @@ -1,2 +1,6 @@ +#This let us use our custom m4 macros in configure.ac: +ACLOCAL_AMFLAGS = -I m4 $(ACLOCAL_FLAGS) + SUBDIRS = src + Modified: projects/haf/trunk/hildon-input-method-plugins-example/autogen.sh =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/autogen.sh 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/autogen.sh 2009-07-31 11:21:03 UTC (rev 19014) @@ -1,7 +1,9 @@ -#!/bin/sh +test -n "$srcdir" || srcdir=`dirname "$0"` +test -n "$srcdir" || srcdir=. -set -x -libtoolize --automake -aclocal -autoconf -automake --add-missing --foreign +set -ex +#glib-gettextize -c -f +#intltoolize -c -f --automake +autoreconf --install --force "$srcdir" +"$srcdir/configure" "$@" + Modified: projects/haf/trunk/hildon-input-method-plugins-example/configure.ac =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/configure.ac 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/configure.ac 2009-07-31 11:21:03 UTC (rev 19014) @@ -1,6 +1,9 @@ AC_INIT(configure.ac) AM_INIT_AUTOMAKE(hildon-im-vkb-example, 2.0.0) +# Put any generated m4 files in the m4 directory: +AC_CONFIG_MACRO_DIR([m4]) + AC_ISC_POSIX AC_PROG_CC AC_PROG_MAKE_SET @@ -15,5 +18,13 @@ AC_SUBST(HIM_PLUGINS_EXAMPLE_CFLAGS) AC_SUBST(HIM_PLUGINS_EXAMPLE_LIBS) +# This custom macro (in the m4/ directory) is not necessary, but helps us to find +# more errors in our code. +# The call to AC_CONFIG_MACRO_DIR() makes this macro available to us. +DK_ARG_ENABLE_WARNINGS([HIM_PLUGINS_EXAMPLE_WARNING_FLAGS], + [-Wall], + [-pedantic -Wall -Wextra], + []) + AC_OUTPUT([ Makefile src/Makefile]) Added: projects/haf/trunk/hildon-input-method-plugins-example/m4/dk-warn.m4 =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/m4/dk-warn.m4 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/m4/dk-warn.m4 2009-07-31 11:21:03 UTC (rev 19014) @@ -0,0 +1,114 @@ +## Copyright (c) 2004-2007 Daniel Elstner <daniel.kitta at gmail.com> +## +## This file is part of danielk's Autostuff. +## +## danielk's Autostuff 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. +## +## danielk's Autostuff 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 danielk's Autostuff; if not, write to the Free Software Foundation, +## Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +#serial 20070116 + +## DK_ARG_ENABLE_WARNINGS(variable, min-flags, max-flags, [deprecation-prefixes]) +## +## Provide the --enable-warnings configure argument, set to "min" by default. +## <min-flags> and <max-flags> should be space-separated lists of compiler +## warning flags to use with --enable-warnings=min or --enable-warnings=max, +## respectively. Warning level "fatal" is the same as "max" but in addition +## enables -Werror mode. +## +## If not empty, <deprecation-prefixes> should be a list of module prefixes +## which is expanded to -D<module>_DISABLE_DEPRECATED flags if fatal warnings +## are enabled, too. +## +AC_DEFUN([DK_ARG_ENABLE_WARNINGS], +[dnl +m4_if([$3],, [AC_FATAL([3 arguments expected])])[]dnl +dnl +AC_ARG_ENABLE([warnings], [AS_HELP_STRING( + [--enable-warnings=@<:@min|max|fatal|no@:>@], + [control compiler pickyness @<:@min@:>@])], + [dk_enable_warnings=$enableval], + [dk_enable_warnings=min])[]dnl + +dk_lang= +case $ac_compile in + *'$CXXFLAGS '*) + dk_lang='C++' + dk_cc=$CXX + dk_conftest=conftest.${ac_ext-cc} + ;; + *'$CFLAGS '*) + dk_lang=C + dk_cc=$CC + dk_conftest=conftest.${ac_ext-c} + ;; +esac + +AS_IF([test "x$dk_lang" != x], +[ + AC_MSG_CHECKING([which $dk_lang compiler warning flags to use]) + + case $dk_enable_warnings in + no) dk_warning_flags=;; + max) dk_warning_flags="$3";; + fatal) dk_warning_flags="$3 -Werror";; + *) dk_warning_flags="$2";; + esac + + dk_deprecation_flags= +m4_if([$4],,, [ + AS_IF([test "x$dk_enable_warnings" = xfatal], + [ + dk_deprecation_prefixes="$4" + for dk_prefix in $dk_deprecation_prefixes + do + dk_deprecation_flags="${dk_deprecation_flags}-D${dk_prefix}_DISABLE_DEPRECATED " + done + ]) +])[]dnl + dk_tested_flags= + + AS_IF([test "x$dk_warning_flags" != x], + [ + # Keep in mind that the dummy source must be devoid of any + # problems that might cause diagnostics. + AC_LANG_CONFTEST([AC_LANG_SOURCE( + [[int main(int argc, char** argv) { return (argv != 0) ? argc : 0; }]])]) + + for dk_flag in $dk_warning_flags + do + # Test whether the compiler accepts the flag. GCC doesn't bail + # out when given an unsupported flag but prints a warning, so + # check the compiler output instead. + dk_cc_out=`$dk_cc $dk_tested_flags $dk_flag -c "$dk_conftest" 2>&1 || echo failed` + rm -f "conftest.${OBJEXT-o}" + + AS_IF([test "x$dk_cc_out" = x], + [ + AS_IF([test "x$dk_tested_flags" = x], + [dk_tested_flags=$dk_flag], + [dk_tested_flags="$dk_tested_flags $dk_flag"]) + ], [ + echo "$dk_cc_out" >&AS_MESSAGE_LOG_FD + ]) + done + + rm -f "$dk_conftest" + ]) + dk_all_flags=$dk_deprecation_flags$dk_tested_flags + AC_SUBST([$1], [$dk_all_flags]) + + test "x$dk_all_flags" != x || dk_all_flags=none + AC_MSG_RESULT([$dk_all_flags]) +]) +]) Modified: projects/haf/trunk/hildon-input-method-plugins-example/src/Makefile.am =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/src/Makefile.am 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/src/Makefile.am 2009-07-31 11:21:03 UTC (rev 19014) @@ -1,4 +1,4 @@ -INCLUDES = $(HIM_PLUGINS_EXAMPLE_CFLAGS) +AM_CPPFLAGS = $(HIM_PLUGINS_EXAMPLE_CFLAGS) $(HIM_PLUGINS_EXAMPLE_WARNING_FLAGS) # Install the plugin (shared library) in, for instance, # /usr/lib/hildon-input-method/, where it will be found by the Modified: projects/haf/trunk/hildon-input-method-plugins-example/src/him-vkb-example.c =================================================================== --- projects/haf/trunk/hildon-input-method-plugins-example/src/him-vkb-example.c 2009-07-31 11:20:58 UTC (rev 19013) +++ projects/haf/trunk/hildon-input-method-plugins-example/src/him-vkb-example.c 2009-07-31 11:21:03 UTC (rev 19014) @@ -192,6 +192,7 @@ sizeof(HimExampleVKB), 0, /* n_preallocs */ (GInstanceInitFunc) himExample_vkb_init, + 0 }; static const GInterfaceInfo plugin_info = { @@ -375,7 +376,6 @@ { HimExampleVKB *vkb; HimExampleVKBPrivate *priv; - GtkStyle *style; g_return_if_fail (IS_HIMEXAMPLE_VKB (widget)); vkb = HIMEXAMPLE_VKB (widget);
- Previous message: [maemo-commits] r19013 - in projects/haf/trunk/hildon-input-method-plugins-example: . src
- Next message: [maemo-commits] r19015 - in projects/haf/trunk/hildon-input-method-plugins-example: . src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]