Maemo port - status update

From: Ryan Pavlik <abiryan_at_ryand.net>
Date: Fri Jan 25 2008 - 18:29:08 CET

Hey all! We've got the packaging moved over, which is great, and I've
gotten all the dependcies to build and will be uploading those to the
Maemo Garage soon. Now, I just have some trouble with the actual
compiling aspect.

I'm starting on Bora (Maemo 3.2 - ITOS 2007) because that's what I have
hardware to test on: haven't upgraded my N800 yet and N810 didn't come
before I left the country. According to this bug,
http://bugzilla.abisource.com/show_bug.cgi?id=11242 - I can re-enable
the tests for the older (pre-4.0) versions of Maemo - see comment #5. I
am not very experienced with auto* and m4, but I did nest the old
fallback test inside the fail part of the new one, and that allowed it
to configure successfully.

However, when building, it gets to some hildony stuff and stops. My
commentary continues after the log:

make[5]: Entering directory `/home/maemo/src/abi26/abiword/src/af/ev/unix'
if g++ -DPACKAGE_NAME=\"abiword\" -DPACKAGE_TARNAME=\"abiword\"
-DPACKAGE_VERSION=\"2.6.0\" -DPACKAGE_STRING=\"abiword\ 2.6.0\"
-DPACKAGE_BUGREPORT=\"http://www.abisource.com/\" -DPACKAGE=\"abiword\"
-DVERSION=\"2.6.0\" -DABIWORD_SERIES=\"2.6\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
-DSIZEOF_LONG_INT=4 -DEMBEDDED_TARGET_GENERIC=1
-DEMBEDDED_TARGET_HILDON=2 -DEMBEDDED_TARGET_POKY=3
-DEMBEDDED_TARGET=EMBEDDED_TARGET_HILDON -DENABLE_MENUBUTTON=1
-DHAVE_PANGOFT2=1 -DWITH_ENCHANT=1 -DSTDC_HEADERS=1 -DHAVE_LIMITS_H=1
-DHAVE_STRINGS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1
-DHAVE_MALLOC_H=1 -DCHECKED_ENDIANNESS=1 -DHAVE_LIBXML2=1 -DHAVE_WV=1
-DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DRETSIGTYPE=void
-DABI_SCANDIR_SELECT_QUALIFIER=const -I. -I. -I/usr/include/gtk-2.0
-I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0
-I/usr/include/pango-1.0 -I/usr/include/freetype2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/libglade-2.0 -I/usr/include/libxml2
-I/usr/include/pango-1.0 -I/usr/include/freetype2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I'../../../../src/af/util/xp' -I'../../../../src/af/tf/xp'
-I'../../../../src/af/ev/xp' -I'../../../../src/af/ev/xp'
-I'../../../../src/af/gr/xp' -I'../../../../src/af/xap/xp'
-I'../../../../src/af/util/unix' -I'../../../../src/af/ev/unix'
-I'../../../../src/af/gr/unix' -I'../../../../src/af/xap/unix'
-I'../../../../src/af/xap/unix/hildon'
-I'../../../../src/wp/ap/unix/hildon' -I'../../../../src/wp/ap/xp'
-I'../../../../src/wp/impexp/xp' -I'../../../../src/wp/ap/unix'
-I'../../../../src/wp/ap/xp/ToolbarIcons'
-I'../../../../src/text/ptbl/xp' -I'../../../../src/text/fmt/xp'
-I'../../../../src/text/fmt/unix' -Wall -pedantic -D_POSIX_SOURCE
-D_BSD_SOURCE -pipe -DNDEBUG
-I/scratchbox/devkits/doctools/include/libxml2 -I/usr/include/fribidi
-I/usr/include/wv -I/usr/include/libgsf-1 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -I/usr/include/libxml2
-I/usr/include/freetype2 -I/usr/include/freetype2
-I/usr/include/libpng12 -DHAVE_THREADS=1 -pthread
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-DABISIZEOF_LONG_INT=4 -I/usr/include/libgsf-1 -I/usr/include/glib-2.0
-I/usr/lib/glib-2.0/include -I/usr/include/libxml2
-I../../../../goffice-bits -I/usr/include/enchant
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -DENABLE_SPELL
-DPACKAGE_NAME=\"abiword\" -DPACKAGE_TARNAME=\"abiword\"
-DPACKAGE_VERSION=\"2.6.0\" -DPACKAGE_STRING=\"abiword\ 2.6.0\"
-DPACKAGE_BUGREPORT=\"http://www.abisource.com/\" -DPACKAGE=\"abiword\"
-DVERSION=\"2.6.0\" -DABIWORD_SERIES=\"2.6\" -DSTDC_HEADERS=1
-DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
-DSIZEOF_LONG_INT=4 -DEMBEDDED_TARGET_GENERIC=1
-DEMBEDDED_TARGET_HILDON=2 -DEMBEDDED_TARGET_POKY=3
-DEMBEDDED_TARGET=EMBEDDED_TARGET_HILDON -DENABLE_MENUBUTTON=1
-DHAVE_PANGOFT2=1 -DWITH_ENCHANT=1 -DSTDC_HEADERS=1 -DHAVE_LIMITS_H=1
-DHAVE_STRINGS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1
-DHAVE_MALLOC_H=1 -DCHECKED_ENDIANNESS=1 -DHAVE_LIBXML2=1 -DHAVE_WV=1
-DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1 -DRETSIGTYPE=void
-DABI_SCANDIR_SELECT_QUALIFIER=const -I/usr/include/gtk-2.0
-I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0
-I/usr/include/pango-1.0 -I/usr/include/freetype2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/libglade-2.0 -I/usr/include/libxml2
-I/usr/include/pango-1.0 -I/usr/include/freetype2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/freetype2 -I../../../../goffice-bits
-DSUPPORTS_UT_IDLE=1 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include
-I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
-I/usr/include/hildon-fm -I/usr/include/dbus-1.0
-I/usr/lib/dbus-1.0/include -I/usr/include/libosso-gsf-1
-DABI_BUILD_VERSION=\"2.6.0\" -MT ev_UnixMenu.o -MD -MP -MF
".deps/ev_UnixMenu.Tpo" -c -o ev_UnixMenu.o ev_UnixMenu.cpp; \
then mv -f ".deps/ev_UnixMenu.Tpo" ".deps/ev_UnixMenu.Po"; else rm -f
".deps/ev_UnixMenu.Tpo"; exit 1; fi
ev_UnixMenu.cpp:61:34: hildon/hildon-window.h: No such file or directory
ev_UnixMenu.cpp: In member function `virtual bool
EV_UnixMenuBar::synthesizeMenuBar()':
ev_UnixMenu.cpp:959: error: `HILDON_WINDOW' undeclared (first use this
function)
ev_UnixMenu.cpp:959: error: (Each undeclared identifier is reported only
once for each function it appears in.)
ev_UnixMenu.cpp:959: error: `hildon_window_set_menu' undeclared (first
use this function)
ev_UnixMenu.cpp: At global scope:
ev_UnixMenu.cpp:339: warning: 'guint _ev_get_underlined_char(const
char*)' defined but not used
make[5]: *** [ev_UnixMenu.o] Error 1
make[5]: Leaving directory `/home/maemo/src/abi26/abiword/src/af/ev/unix'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/home/maemo/src/abi26/abiword/src/af/ev/unix'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/maemo/src/abi26/abiword/src/af/ev'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/maemo/src/abi26/abiword/src/af'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/maemo/src/abi26/abiword/src'
make: *** [all-recursive] Error 1
[sbox-BORA_X86: ~/src/abi26/abiword] >

I can see that it really starts failing on the missing include, which
makes sense. That include was changed in the Maemo 4.0 patch:

-#include <hildon-widgets/hildon-appview.h>
+#include <hildon/hildon-window.h>

I understand the removal of the old line, since that was deprecated.
However, when looking in the Maemo 4.0 dev environment, I see no such
<hildon/hildon-window.h> file! In maemo 3.2, there's a
/usr/include/hildon-window.h file, which I think is probably
what we need. In 4.0, the corresponding filename is in
/usr/include/hildon-1/hildon/hildon-window.h leading me to believe that
somewhere, includepath/hildon-1/ is being added to the includes.

Thus to my possible solution. Where we are (presumably) including
/usr/include/hildon-1 on Maemo 4.0, we include
/usr/include/hildon-1/hildon/ instead, and remove the hildon/ from the
#include lines in the source. Then, I presume that means that we can
find /usr/include/hildon-window.h just as easily (and without adding to
the include paths) as /usr/include/hildon-1/hildon/, and we return the
already-extant OS 2006/2007 support to the code. This is just my hunch,
however, I have not tried this particular solution yet, since I feel a
bit over my head.

I'm guessing that <hildon/hildon-window.h> might be an idiom, which
would make this solution less desireable, but I don't see another way
short of a bunch of ugly ifdefs.

If someone with more experience could comment on this solution, point
out my misdiagnosis of the problem, etc, that would be greatly
appreciated. I'd really like to get this build off the ground!

Ryan

PS. In case you didn't notice, this is the 2.6 branch. Haven't tried
tackling the new build system yet beyond some preliminary windows build
tests.
Received on Fri Jan 25 18:31:32 2008

This archive was generated by hypermail 2.1.8 : Fri Jan 25 2008 - 18:31:32 CET