[BRLTTY] Bindings

Jean-Philippe MENGUAL mengualjeanphi at free.fr
Sun Aug 17 20:36:27 EDT 2008


Is it my system which is a bit capricious? Or I am not enough 
strogg. I don't know. But... :(

make says (I patch with first then current patch):

gcc -Wall -shared  -o ../../lib/libbrlttybpm.so braille.o
/usr/bin/install -c -d ../../data
./../../Programs/txt2hlp ../../data/brltty-pm.hlp ./help*.txt
gcc -Wall -g -O2 -I. -I./../.. -I. -I../.. -D_POSIX_C_SOURCE=2 
-D_BSD_SOURCE -D_
XOPEN_SOURCE=500 -DHAVE_CONFIG_H -Wno-parentheses -Wno-unused 
-Wno-uninitialized
 -Wno-unknown-pragmas -c ./read_config.c
gcc -Wall -Wl,-export-dynamic -o read_config read_config.o 
./../../Programs/cmd.
o ./../../Programs/brl.o ./../../Programs/drivers.o 
./../../Programs/async.o ./.
./../Programs/queue.o ./../../Programs/host_sys.o ./../../Programs/tbl.o 
./../..
/Programs/tbl_native.o ./../../Programs/io_misc.o 
./../../Programs/charset.o ./.
./../Programs/lock.o ./../../Programs/misc.o -ldl -lpthread -lsupc++
./../../Programs/brl.o:(.rodata+0x100): undefined reference to 
`brl_driver_eu'
./../../Programs/brl.o:(.rodata+0x108): undefined reference to 
`brl_driver_eu'
collect2: ld returned 1 exit status
make[2]: *** [read_config] Erreur 1
make[2]: quittant le répertoire « 
/home/jp/Programmes/brltty/brl2/brltty-3.8/Bra
illeDrivers/Papenmeier »
make[1]: *** [braille-drivers] Erreur 1
make[1]: quittant le répertoire « 
/home/jp/Programmes/brltty/brl2/brltty-3.8/Pro
grams »
make: *** [all] Erreur 2

With -pm at configure:

gcc -Wall -g -O2 -I. -I./.. -I. -I.. -D_POSIX_C_SOURCE=2 -D_BSD_SOURCE 
-D_XOPEN_
SOURCE=500 -DHAVE_CONFIG_H -c ./apitest.c
gcc -Wall -Wl,-export-dynamic -o apitest apitest.o cmd.o brl.o drivers.o 
async.o
 queue.o tbl.o tbl_native.o charset.o lock.o options.o misc.o 
sys_linux.o io_mis
c.o -L. -lbrlapi -ldl -lpthread -lsupc++
brl.o:(.rodata+0x100): undefined reference to `brl_driver_eu'
brl.o:(.rodata+0x108): undefined reference to `brl_driver_eu'
collect2: ld returned 1 exit status
make[1]: *** [apitest] Erreur 1
make[1]: quittant le répertoire « 
/home/jp/Programmes/brltty/brl2/brltty-3.8/Pro
grams »
make: *** [all] Erreur 2

I use attached patch.

Sincerely, JP

-------------- next part --------------
--- BrailleDrivers/Papenmeier/Makefile.in.orig	2008-08-18 00:37:41.000000000 +0100
+++ BrailleDrivers/Papenmeier/Makefile.in	2008-08-18 00:38:19.000000000 +0100
@@ -28,7 +28,7 @@
 braille.$O:
 	$(CC) $(BRL_CFLAGS) $(YACC_CFLAGS) -c $(SRC_DIR)/braille.c
 
-READ_CONFIG_OBJECTS = read_config.$O $(BLD_TOP)$(PGM_DIR)/cmd.$O $(BLD_TOP)$(PGM_DIR)/charset.$O $(BLD_TOP)$(PGM_DIR)/lock.$O $(BLD_TOP)$(PGM_DIR)/misc.$O
+READ_CONFIG_OBJECTS = read_config.$O $(BLD_TOP)$(PGM_DIR)/cmd.$O $(BLD_TOP)$(PGM_DIR)/brl.$O $(BLD_TOP)$(PGM_DIR)/drivers.$O $(BLD_TOP)$(PGM_DIR)/async.$O $(BLD_TOP)$(PGM_DIR)/queue.$O $(BLD_TOP)$(PGM_DIR)/host_sys.$O $(BLD_TOP)$(PGM_DIR)/tbl.$O $(BLD_TOP)$(PGM_DIR)/tbl_native.$O $(BLD_TOP)$(PGM_DIR)/io_misc.$O $(BLD_TOP)$(PGM_DIR)/charset.$O $(BLD_TOP)$(PGM_DIR)/lock.$O $(BLD_TOP)$(PGM_DIR)/misc.$O
 read_config$X: $(READ_CONFIG_OBJECTS)
 	$(HOSTCC) $(HOSTLDFLAGS) -o $@ $(READ_CONFIG_OBJECTS) $(LDLIBS)
 
--- Programs/cmd.c.orig	2008-08-17 23:36:28.000000000 +0100
+++ Programs/cmd.c	2008-08-17 23:41:47.000000000 +0100
@@ -23,6 +23,7 @@
 #include "misc.h"
 #include "brldefs.h"
 #include "cmd.h"
+#include "brl.h"
 
 #include "Programs/charset.h"
 
@@ -214,20 +215,27 @@
   }
 }
 
+static brlapi_keyCode_t
+cmdWCharToBrlapi(wchar_t wc) {
+  if (wc < 0x100) {
+    /* latin1 character */
+    return BRLAPI_KEY_TYPE_SYM | wc;
+  } else {
+    /* unicode character */
+    return BRLAPI_KEY_TYPE_SYM | BRLAPI_KEY_SYM_UNICODE | wc;
+  }
+}
+
 brlapi_keyCode_t
 cmdBrlttyToBrlapi (int command) {
   brlapi_keyCode_t code;
   switch (command & BRL_MSK_BLK) {
-  case BRL_BLK_PASSCHAR: {
-    wchar_t wc = convertCharToWchar(command & BRL_MSK_ARG);
-    if (wc < 0x100)
-      /* latin1 character */
-      code = wc;
-    else
-      /* unicode character */
-      code = BRLAPI_KEY_SYM_UNICODE | wc;
+  case BRL_BLK_PASSCHAR:
+    code = cmdWCharToBrlapi(convertCharToWchar(command & BRL_MSK_ARG));
+    break;
+  case BRL_BLK_PASSDOTS:
+    code = cmdWCharToBrlapi(untextTable[command & BRL_MSK_ARG]);
     break;
-  }
   case BRL_BLK_PASSKEY:
     switch (command & BRL_MSK_ARG) {
     case BRL_KEY_ENTER:		code = BRLAPI_KEY_SYM_LINEFEED;	 break;
--- BrailleDrivers/Papenmeier/read_config.c.orig	2008-08-18 01:16:25.000000000 +0100
+++ BrailleDrivers/Papenmeier/read_config.c	2008-08-18 01:16:53.000000000 +0100
@@ -29,6 +29,10 @@
   return 1;
 }
 
+void
+message (const char *text, short flags) {
+}
+
 /* --------------------------------------------------------------- */
 
 static const char* get_command_description(int code)
--- Programs/apitest.c.orig	2008-08-18 01:20:58.000000000 +0100
+++ Programs/apitest.c	2008-08-18 01:21:15.000000000 +0100
@@ -73,6 +73,10 @@
    "The path to the file containing BrlAPI's authorization key."},
 END_OPTION_TABLE
 
+void
+message (const char *text, short flags) {
+}
+
 void showDisplaySize(void)
 {
   unsigned int x, y;
--- Programs/Makefile.in.orig	2008-08-18 01:18:51.000000000 +0100
+++ Programs/Makefile.in	2008-08-18 01:20:39.000000000 +0100
@@ -365,7 +365,7 @@
 
 ###############################################################################
 
-APITEST_OBJECTS = apitest.$O cmd.$O charset.$O lock.$O options.$O misc.$O $(SYSTEM_OBJECT) io_misc.$O
+APITEST_OBJECTS = apitest.$O cmd.$O brl.$O drivers.$O async.$O queue.$O tbl.$O tbl_native.$O charset.$O lock.$O options.$O misc.$O $(SYSTEM_OBJECT) io_misc.$O
 
 apitest$X: $(APITEST_OBJECTS) api
 	$(CC) $(LDFLAGS) -o $@ $(APITEST_OBJECTS) -L$(BLD_DIR) -lbrlapi $(LDLIBS)


More information about the BRLTTY mailing list