[Gambas-user] Gambas / FreeBSD
Thierry Thomas
thierry at ...342...
Thu Jan 29 19:00:28 CET 2004
Hello,
I have ported Gambas on FreeBSD. It runs pretty fine, but I have met
several "portability" issues:
1- Threads:
configure has a case for FreeBSD, but it only handles the case of
FreeBSD-4.x. 5.x uses different libraries. Moreover, even with the
correct THREAD_LIB & THREAD_INC, it builds, but aborts in graphical
mode, because gbx is linked without threads.
To fix that, I have removed these values:
case "${host}" in
*-*-freebsd* )
- THREAD_LIB=""
- THREAD_INC="-pthread -D_REENTRANT"
+ THREAD_LIB=
+ THREAD_INC=
;;
*)
THREAD_LIB="-lpthread"
and I pass the correct ones as CFLAGS & LDFLAGS through the port's
Makefile.
2) SDL:
configure does not detect SDL correctly; fortunately, we have a shell
(sdl_config) which returns the right values for cflags & libs.
3) QT & KDElibs:
They are not detected by configure, and src/comp/gbi.c &
src/exec/library.c have hardcoded values of qt-mt kdecore kdeui DCOP
& kio. I patch these files with values returned by ldconfig.
4) GNU-ism
Gambas aborts when clicking on "property", because du does not accept -b
(I have patched to use du -k).
5) Bug?
AnalogWatch's compilation aborts, because there is a $:
--- ./examples/AnalogWatch/FrmClock.class.orig Sat Jan 24 11:32:20 2004
+++ ./examples/AnalogWatch/FrmClock.class Sun Jan 25 20:54:07 2004
@@ -21,7 +21,7 @@
END
-PUBLIC SUB Form_Resize() $
+PUBLIC SUB Form_Resize()
ResizeDrawArea 'Resize the drawing area to match the form
DrawClock 'Update clock
6) Includes
I cannot define <netinet/in.h> before <sys/types.h>:
--- src/lib/net/CSocket.h.orig Fri Nov 28 00:19:20 2003
+++ src/lib/net/CSocket.h Sun Jan 25 00:30:39 2004
@@ -25,11 +25,11 @@
#define __CSOCKET_H
#include "gambas.h"
-#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/un.h>
#include <sys/types.h>
#include <sys/socket.h>
+#include <netinet/in.h>
#include <unistd.h>
#include <netdb.h>
#include "CDnsClient.h"
7) Hier
I have some other patches to respect prefix / hier, but this is usual.
Keep the good work! (and be indulgent to my bad english...)
--
Th. Thomas.
More information about the User
mailing list