2006-11-20 Michael Dominic Kostrzewa <michael.kostrzewa@nokia.com>
+ * Makefile.am:
+ * configure.ac:
+ * m4/as-version.m4:
+ * pkgconfig/Makefile.am:
+ * pkgconfig/hildon-widgets.pc.in:
+ * src/Makefile.am: Changing the install dirs etc.
+
+2006-11-20 Michael Dominic Kostrzewa <michael.kostrzewa@nokia.com>
+
* src/hildon-banner.c:
* src/hildon-calendar-popup.c:
* src/hildon-caption.c:
-SUBDIRS = src po pkgconfig examples
+SUBDIRS = src pkgconfig examples
EXTRA_DIST = \
debian/changelog \
-AC_INIT([Hildon gtk widgets], [0.14.8], [michael.kostrzewa@nokia.com], [hildon-widgets])
+AC_INIT([Hildon gtk widgets], [1.0.0], [michael.kostrzewa@nokia.com], [hildon])
AC_CANONICAL_SYSTEM
AM_CONFIG_HEADER(config.h)
AC_CONFIG_MACRO_DIR([m4])
AM_MAINTAINER_MODE
-dnl set the libtool versioning
+# define PACKAGE_VERSION_* variables
+AS_VERSION
+
+# set the libtool versioning
AS_LIBTOOL(HILDON_WIDGETS, 0, 0, 0)
AM_INIT_AUTOMAKE
AC_HEADER_STDC
CFLAGS="$CFLAGS -Wall -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-format"
-#CFLAGS="$CFLAGS -Wall -pedantic -Wmissing-prototypes -Wmissing-declarations -Werror -Wno-format"
-# -Werror disabled due to the flaw in glib-2.0
-# See http://bugzilla.gnome.org/show_bug.cgi?id=310175 and
-# http://bugzilla.gnome.org/show_bug.cgi?id=310216
+# -Wno-format due to way translation string are done
GTK_VERSION=2.6.10
# includes all the low-level flags
# FIXME Add esd and gconf flags
HILDON_WIDGETS_OBJ_CFLAGS="\$(CFLAGS) \$(GTK_CFLAGS) -I\$(top_builddir)/src/"
-HILDON_WIDGETS_OBJ_LIBS="\$(top_builddir)/src/libhildonwidgets.la \$(GTK_LIBS)"
+HILDON_WIDGETS_OBJ_LIBS="\$(top_builddir)/src/libhildon\$(PACKAGE_VERSION_MAJOR).la \$(GTK_LIBS)"
AC_SUBST(HILDON_WIDGETS_OBJ_CFLAGS)
AC_SUBST(HILDON_WIDGETS_OBJ_LIBS)
AC_CONFIG_FILES([Makefile src/Makefile \
- po/Makefile po/porules.mk \
- pkgconfig/Makefile \
+ pkgconfig/Makefile \
examples/Makefile \
- pkgconfig/hildon-widgets.pc])
+ pkgconfig/hildon.pc])
AC_OUTPUT
- Version............: ${VERSION}
- Compiler...........: ${CC}
- gtk-doc support....: ${enable_gtk_doc}
+- Api................: ${PACKAGE}-${PACKAGE_VERSION_MAJOR}
######################################
+
"
--- /dev/null
+dnl as-version.m4 0.2.0
+
+dnl autostars m4 macro for versioning
+
+dnl Thomas Vander Stichele <thomas at apestaart dot org>
+
+dnl $Id: as-version.m4,v 1.4 2004/06/01 09:40:05 thomasvs Exp $
+
+dnl AS_VERSION
+
+dnl example
+dnl AS_VERSION
+
+dnl this macro
+dnl - AC_SUBST's PACKAGE_VERSION_MAJOR, _MINOR, _MICRO
+dnl - AC_SUBST's PACKAGE_VERSION_RELEASE,
+dnl which can be used for rpm release fields
+dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents
+dnl maintainer mode from running correctly
+dnl
+dnl don't forget to put #undef PACKAGE_VERSION_RELEASE in acconfig.h
+dnl if you use acconfig.h
+
+AC_DEFUN([AS_VERSION],
+[
+ PACKAGE_VERSION_MAJOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f1)
+ PACKAGE_VERSION_MINOR=$(echo AC_PACKAGE_VERSION | cut -d'.' -f2)
+ PACKAGE_VERSION_MICRO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f3)
+
+ AC_SUBST(PACKAGE_VERSION_MAJOR)
+ AC_SUBST(PACKAGE_VERSION_MINOR)
+ AC_SUBST(PACKAGE_VERSION_MICRO)
+])
+
+dnl AS_NANO(ACTION-IF-NO-NANO, [ACTION-IF-NANO])
+
+dnl requires AC_INIT to be called before
+dnl For projects using a fourth or nano number in your versioning to indicate
+dnl development or prerelease snapshots, this macro allows the build to be
+dnl set up differently accordingly.
+
+dnl this macro:
+dnl - parses AC_PACKAGE_VERSION, set by AC_INIT, and extracts the nano number
+dnl - sets the variable PACKAGE_VERSION_NANO
+dnl - sets the variable PACKAGE_VERSION_RELEASE, which can be used
+dnl for rpm release fields
+dnl - executes ACTION-IF-NO-NANO or ACTION-IF-NANO
+
+dnl example:
+dnl AS_NANO(RELEASE="yes", RELEASE="no")
+
+AC_DEFUN([AS_NANO],
+[
+ AC_MSG_CHECKING(nano version)
+
+ NANO=$(echo AC_PACKAGE_VERSION | cut -d'.' -f4)
+
+ if test x"$NANO" = x || test "x$NANO" = "x0" ; then
+ AC_MSG_RESULT([0 (release)])
+ NANO=0
+ PACKAGE_VERSION_RELEASE=1
+ ifelse([$1], , :, [$1])
+ else
+ AC_MSG_RESULT($NANO)
+ PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S`
+ ifelse([$2], , :, [$2])
+ fi
+ PACKAGE_VERSION_NANO=$NANO
+ AC_SUBST(PACKAGE_VERSION_NANO)
+ AC_SUBST(PACKAGE_VERSION_RELEASE)
+])
MAINTAINERCLEANFILES = Makefile.in
+all-local: hildon-@PACKAGE_VERSION_MAJOR@.pc
+
+hildon-@PACKAGE_VERSION_MAJOR@.pc: hildon.pc
+ cp $< $@
+
pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = hildon-widgets.pc
+pkgconfig_DATA = hildon-@PACKAGE_VERSION_MAJOR@.pc
+
+EXTRA_DIST = hildon.pc.in
+CLEANFILES = hildon-@PACKAGE_VERSION_MAJOR@.pc
+++ /dev/null
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: hildon-widgets
-Description: Hildon widgets library
-Requires: gtk+-2.0 >= @GTK_VERSION@
-Version: @VERSION@
-Libs: -L${libdir} -lhildonwidgets
-Cflags: -I${includedir}
--- /dev/null
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@/hildon-@PACKAGE_VERSION_MAJOR@
+
+Name: hildon
+Description: Hildon widgets library
+Requires: gtk+-2.0 >= @GTK_VERSION@
+Version: @VERSION@
+Libs: -L${libdir} -lhildon-@PACKAGE_VERSION_MAJOR@
+Cflags: -I${includedir}
EXTRA_DIST = hildon-marshalers.list
-lib_LTLIBRARIES = libhildonwidgets.la
+lib_LTLIBRARIES = libhildon_@PACKAGE_VERSION_MAJOR@.la
-libhildonwidgets_la_LDFLAGS = $(HILDON_WIDGETS_LT_LDFLAGS)
+libhildon_@PACKAGE_VERSION_MAJOR@_la_LDFLAGS = $(HILDON_WIDGETS_LT_LDFLAGS)
-libhildonwidgets_la_LIBADD = $(GTK_LIBS) \
+libhildon_@PACKAGE_VERSION_MAJOR@_la_LIBADD = $(GTK_LIBS) \
$(GCONF_LIBS) \
$(ESD_LIBS) \
$(LIBMB_LIBS)
-libhildonwidgets_la_CFLAGS = $(GTK_CFLAGS) \
+libhildon_@PACKAGE_VERSION_MAJOR@_la_CFLAGS = $(GTK_CFLAGS) \
$(GCONF_CFLAGS) \
$(ESD_CFLAGS) \
$(LIBMB_CFLAGS)
-libhildonwidgets_la_SOURCES = hildon-composite-widget.c \
+libhildon_@PACKAGE_VERSION_MAJOR@_la_SOURCES = hildon-composite-widget.c \
hildon-controlbar.c \
hildon-seekbar.c \
hildon-color-selector.c \
hildon-enum-types.c \
hildon-marshalers.c
-libhildonwidgets_includedir = $(includedir)/hildon-widgets
+libhildon_@PACKAGE_VERSION_MAJOR@_includedir = $(includedir)/$(PACKAGE)-$(PACKAGE_VERSION_MAJOR)
-libhildonwidgets_include_HEADERS = hildon-controlbar.h \
+libhildon_@PACKAGE_VERSION_MAJOR@_include_HEADERS = hildon-controlbar.h \
hildon-note.h \
hildon-sound.h \
hildon-seekbar.h \
hildon-marshalers.h
# Don't build the library until we have built the header that it needs:
-$(OBJECTS) $(libhildonwidgets_la_OBJECTS): hildon-enum-types.h
+$(OBJECTS) $(libhildon_$(PACKAGE_VERSION_MAJOR)_la_OBJECTS): hildon-enum-types.h
-hildon-enum-types.h: @REBUILD@ $(libhildonwidgets_include_HEADERS) Makefile
+hildon-enum-types.h: @REBUILD@ $(libhildon1_include_HEADERS) Makefile
(cd $(srcdir) && glib-mkenums \
--fhead "#ifndef __HILDON_ENUM_TYPES_H__\n" \
--fhead "#define __HILDON_ENUM_TYPES_H__\n" \
--fprod "/* Enumerations from \"@filename@\" */\n" \
--vhead "GType @enum_name@_get_type (void);\n#define HILDON_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
--ftail "\nG_END_DECLS\n\n#endif /* __HILDON_ENUM_TYPES_H__ */" \
- $(libhildonwidgets_include_HEADERS)) > $@
+ $(libhildon_$(PACKAGE_VERSION_MAJOR)_include_HEADERS)) > $@
-hildon-enum-types.c: @REBUILD@ $(libhildonwidgets_include_HEADERS) Makefile
+hildon-enum-types.c: @REBUILD@ $(libhildon_$(PACKAGE_VERSION_MAJOR)_include_HEADERS) Makefile
(cd $(srcdir) && glib-mkenums \
--fhead "#include \"hildon-widgets.h\"\n" \
--fhead "#include <glib-object.h>" \
--vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
--vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
--vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
- $(libhildonwidgets_include_HEADERS)) > $@
+ $(libhildon_$(PACKAGE_VERSION_MAJOR)_include_HEADERS)) > $@
hildon-marshalers.h: hildon-marshalers.list
glib-genmarshal --prefix _hildon_marshal --header hildon-marshalers.list >hildon-marshalers.h