RTEMS graphic testing on RPi

QIAO YANG yangqiao0505 at me.com
Sat Sep 19 14:13:21 UTC 2015


On Aug 24, 2015, at 05:20 AM, Pavel Pisa <pisa at cmp.felk.cvut.cz> wrote:

> Hello Qiao and Joel,
>
> I have rerun testing of actual RSB mainline testing
> on RPi B device. Generally works well.
>
> Used instructions included for archival there
>
> git clone git://git.rtems.org/rtems-source-builder.git
> cd rtems
> ../source-builder/sb-set-builder \
> --prefix=/opt/rtems4.11 \
> --rtems-bsp=arm/raspberrypi \
> --log=graphic-build-log.txt \
> --with-rtems-bsp=raspberrypi \
> --pkg-tar-files \
> 4.11/graphics/freetype2.bset \
> 4.11/graphics/libjpeg.bset \
> 4.11/graphics/libpng.bset \
> 4.11/graphics/libtiff.bset \
> 4.11/graphics/t1lib.bset \
> 4.11/graphics/microwindows.bset
>
>
> There are minor problems with t1lib patch and libpng version changes
>
> diff --git a/rtems/config/4.11/graphics/libpng.bset b/rtems/config/4.11/graphics/libpng.bset
> index 4df0e03..b858081 100644
> --- a/rtems/config/4.11/graphics/libpng.bset
> +++ b/rtems/config/4.11/graphics/libpng.bset
> @@ -17,4 +17,4 @@
> #
> # Build libpng.
> #
> -graphics/libpng-1.5.22-1.cfg
> +graphics/libpng-1.5.23-1.cfg
> diff --git a/source-builder/config/t1lib-1.cfg b/source-builder/config/t1lib-1.cfg
> index 38c3530..b11e1eb 100644
> --- a/source-builder/config/t1lib-1.cfg
> +++ b/source-builder/config/t1lib-1.cfg
> @@ -20,7 +20,7 @@ BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n)
> #
> %source set t1lib ftp://ftp.netbsd.org/pub/pkgsrc/distfiles/t1lib-%{t1lib_version}.tar.gz
> %patch add t1lib https://raw.githubusercontent.com/yangqiao/rtems-tools/graphics/tools/4.11/t1lib/t1lib-5.1.2.diff
> -%hash md5 t1lib-5.1.2.diff 196b0e39e36cab5afc6c5c280dcbe9bc
> +%hash md5 t1lib-5.1.2.diff 98eeed85780227adf8525deab3679877
 
The t1lib pache isn't accepted into rtems-tools.

Since the md5 might changed (due to spaces, line breaks etc... That happened to microwindows patch accepted into rtems-tool ),  so I would like to see the t1lib pach commited first and I send the patch for rsb later to fix the patch url and also add the graphics-all.bset. I've already prepared these patches.

Here is the patch for t1lib to commit into rtems-tool:

---
 tools/4.11/t1lib/t1lib-5.1.2.diff | 75 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 75 insertions(+)
 create mode 100644 tools/4.11/t1lib/t1lib-5.1.2.diff

diff --git a/tools/4.11/t1lib/t1lib-5.1.2.diff b/tools/4.11/t1lib/t1lib-5.1.2.diff
new file mode 100644
index 0000000..532cd54
--- /dev/null
+++ b/tools/4.11/t1lib/t1lib-5.1.2.diff
@@ -0,0 +1,75 @@
+diff -ruN t1lib-5.1.2/configure t1lib-5.1.2-new/configure
+--- t1lib-5.1.2/configure    2007-12-23 16:49:43.000000000 +0100
++++ t1lib-5.1.2-new/configure    2015-08-14 10:32:37.985381959 +0200
+@@ -24758,11 +24758,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test "$cross_compiling" = yes; then
+-  { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
+-See \`config.log' for more details." >&5
+-echo "$as_me: error: cannot run test program while cross compiling
+-See \`config.log' for more details." >&2;}
+-   { (exit 1); exit 1; }; }
++  ac_64bit_type="<none>"
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+diff -ruN t1lib-5.1.2/configure.in t1lib-5.1.2-new/configure.in
+--- t1lib-5.1.2/configure.in    2007-12-23 16:49:43.000000000 +0100
++++ t1lib-5.1.2-new/configure.in    2015-08-14 10:33:39.805379339 +0200
+@@ -225,14 +225,52 @@
+
+ dnl **** Check which ANSI integer type is 64 bit
+
+-AC_CACHE_CHECK( "which ANSI integer type is 64 bit", ac_64bit_type,
+-        AC_TRY_RUN([
++echo $ECHO_N "checking \"which ANSI integer type is 64 bit\"... $ECHO_C" >&6
++if test "${ac_64bit_type+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test "$cross_compiling" = yes; then
++  ac_64bit_type="<none>"
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
+ int main(void) {
+   if (sizeof(long)==8)
+     return(0);
+   else
+     return(1);
+-}], ac_64bit_type="long", ac_64bit_type="<none>"))
++}
++_ACEOF
++rm -f conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_64bit_type="long"
++else
++  echo "$as_me: program exited with status $ac_status" >&5
++echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++( exit $ac_status )
++ac_64bit_type="<none>"
++fi
++rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
++fi
++fi
++echo "$as_me:$LINENO: result: $ac_64bit_type" >&5
++echo "${ECHO_T}$ac_64bit_type" >&6
+ if test "$ac_64bit_type" = "long"
+ then
+   T1_AA_TYPE64="-DT1_AA_TYPE64=long"
-- 
2.1.0

>
>
> #
> # Prepare the source code.
>
> We should get rid of microwindows patches or at least limit them
> to the configuration file only
> microwindows-0.93-dev.diff
> microwindows-0.93-dev-without-keyboard.diff
>
> I have some changes already included in my repo branch for RTEMS.
> I.e. keyboard patch
>
> https://github.com/ppisa/microwindows/commit/57b3eb772dc4175bf356736fe239331c8e125721
>
> I have there configuration file based override of graphic driver
> even for RTEMS
>
> https://github.com/ppisa/microwindows/commit/a85ee935e4ff0f569455004d9a71cc3d218a7ca6
>
> and even null KBD handling should land there.
>
> I hope to find some spare time for that in reasonable time.
>
> As of the 4.11/graphics/nxlib.bset, it does not build for RPi because
> keyboard mapping is missing for that platform.
>
> arm-rtems4.11-gcc --pipe -B/opt/rtems4.11/arm-rtems4.11/raspberrypi/lib/ -specs
> bsp_specs -qrtems -DDEBUG=1 -g -Wall -I/opt/rtems4.11/arm-rtems4.11/raspberrypi/lib/
> include/ -I. -DX11_FONT_DIR1=\"\" -DX11_FONT_DIR2=\"\" -DX11_FONT_DIR3=\"\" -DX11_RGBTXT=\"fonts/rgb.txt\" -O3 -I. -o StrKeysym.o -c
> StrKeysym.c
> StrKeysym.c:20:30: fatal error: rtems/keyboard.h: No such file or directory
> #include <rtems/keyboard.h>
> ^
> I do not see that as big problem because NXlib is mainly for remote
> graphic (i.e. X like protocol) and if I see well the NXlib is absorbed
> now in Microwindows directly
>
> See Gregory Haerr actual repo
>
> https://github.com/ghaerr/microwindows/tree/master/src
>
> Generally, it is great that the RTEMS graphic support build
> is included in official RSB repo now and runs on target.
>
> Best wishes,
>
> Pavel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20150919/37e47d08/attachment.html>


More information about the devel mailing list