On Aug 24, 2015, at 05:20 AM, Pavel Pisa <p...@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

_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to