diff --git a/doc/fbchkdoc/header-status.bas b/doc/fbchkdoc/header-status.bas new file mode 100644 index 0000000..d235afc --- /dev/null +++ b/doc/fbchkdoc/header-status.bas @@ -0,0 +1,96 @@ +'' +'' This little tool generates the DevHeaderStatus wiki page from the +'' include/status.txt file. (The wiki's table formatting is a pain +'' to do manually.) +'' +'' Input format: +'' Three columns per line, separated by one or more tabs +'' +'' Format to be generated: +'' {{table columns="3" cellpadding="1" cells="1a;1b;1c;2a;2b;2c"}} +'' + +private function skiptabs(byref s as string, byval i as integer) as integer + while (s[i] = asc(!"\t")) + i += 1 + wend + return i +end function + +private function findtab(byref s as string, byval i as integer) as integer + while (s[i] <> asc(!"\t") and (s[i] <> 0)) + i += 1 + wend + return i +end function + +dim as string mypath = exepath() + "/" +dim as string inputfile = mypath + "../../include/HeaderStatus.txt" +dim as string outputfile = mypath + "../manual/cache/DevHeaderStatus.wakka" + +'' Text for the 'cells' string of {{table}} +dim as string cells + +scope + dim as integer fi = freefile() + if (open(inputfile, for input, as #fi)) then + print "could not open input file: " & inputfile + end 1 + end if + + dim as integer linenum = 0 + dim as string ln + do until (eof(fi)) + linenum += 1 + line input #fi, ln + + ln = trim(ln) + + dim as integer length = len(ln) + + if (length = 0) then + continue do + end if + + '' Split up the line into the three columns: + '' abc + + dim as integer a_end = findtab(ln, 0) + dim as integer b_begin = skiptabs(ln, a_end) + dim as integer b_end = findtab(ln, b_begin) + dim as integer c_begin = skiptabs(ln, b_end) + + if ((1 >= a_end) or (b_end >= c_begin) or (c_begin = length)) then + print inputfile & "(" & linenum & "): misformatted, should be 3 columns separated by tabs" + end 1 + end if + + cells += mid(ln, 1, a_end) + ";" + cells += mid(ln, b_begin + 1, b_end - b_begin) + ";" + cells += mid(ln, c_begin + 1, length - c_begin) + ";" + loop + + '' Cut off the last ';', or the fbwiki will show an extra empty cell + if (linenum > 0) then + cells = left(cells, len(cells) - 1) + end if + + close #fi +end scope + +scope + dim as integer fo = freefile() + if (open(outputfile, for output, as #fo)) then + print "could not open output file: " & outputfile + end 1 + end if + + print #fo, "{{fbdoc item=""title"" value=""Status of external library headers included in FreeBASIC""}}----" + print #fo, "" + print #fo, "{{table columns=""3"" cellpadding=""1"" cells=""" + cells + """}}" + print #fo, "" + print #fo, "Note: This wiki page is auto-generated from the """"include/HeaderStatus.txt"""" file from the fbc source code, please patch that file instead of this page, and regenerate the page using the doc/fbchkdoc/header-status.bas program." + print #fo, "" + print #fo, "{{fbdoc item=""back"" value=""DevToc|FreeBASIC Developer Information""}}"; '' No newline at EOF, that's right (wiki formatting...) + close #fo +end scope diff --git a/doc/manual/cache/DevHeaderStatus.wakka b/doc/manual/cache/DevHeaderStatus.wakka new file mode 100644 index 0000000..14f444f --- /dev/null +++ b/doc/manual/cache/DevHeaderStatus.wakka @@ -0,0 +1,7 @@ +{{fbdoc item="title" value="Status of external library headers included in FreeBASIC"}}---- + +{{table columns="3" cellpadding="1" cells="OpenAL;al/;1.13;(ALUT);al/alut.bi;1.1.0;Allegro;allegro.bi, allegro/;4.0.3 + 4.1 changes;GNU Aspell;aspell.bi;0.50;BASS;bass.bi;2.4;BASSMOD;bassmod.bi;2.0;libbfd;bfd.bi, bfd/;2.16, 2.17, 2.18;big_int;big_int/;from 2005;libbzip2;bzlib.bi;1.0.6;caca;caca.bi;0.99 beta17;Cairo Graphics;cairo/;1.2.6;CGUI;cgui.bi;2.0.1;Chipmunk Physics;chipmunk/;4.1.0;C runtime (glibc, msvcrt, djgpp);crt.bi, crt/;from 2005 with partial updates later;cryptlib;cryptlib.bi;from 2005;CUnit;CUnit/;2.1-0;libcurl;curl.bi;7.21.6;Curses (ncurses, pdcurses);curses.bi, curses/;pdcurses is 3.4, curses from 2005;DISLIN;dislin.bi;from 2005;disphelper;disphelper/;from 2005;DOS/DJGPP;dos/;from 2005 with partial updates later;Expat;expat.bi;1.95.8;FastCGI;fastcgi/;from 2005;libffi;ffi.bi, ffi/;3.0.10;flite;flite/;1.4, machine-translated only;FMOD;fmod.bi;3.74;FreeImage;FreeImage.bi;3.15.1;FreeType;freetype2/;2.1.9;GD library;gd/;from 2005;GDBM (GNU data base manager);gdbm.bi;from 2010;GDSL (Generic Data Structures Library);gdsl/;from 2005;gettext;gettext-po.bi;0.17;GIFLIB;gif_lib.bi;4.1;OpenGL;GL/;October 2011;(GLUT);GL/glut.bi;from 2006;(FreeGLUT);GL/freeglut[_ext,_std].bi;2.6.0;(GLFW);GL/glfw.bi;2.7.2;gmplib (GNU Multiple Precision Arithmetic Library);gmp.bi;4.1.4;GRX;grx/;2.4.6;gsl (GNU Scientific Library);gsl/;1.6;GTK+ (atk, gdk, glade, glib, gtk, libart, pango);gtk/;from 2005 with partial updates later;(atk);atk-1.0/;machine-translated only;(gtk);gtk-2.0/;machine-translated only;(glib);glib-2.0/;machine-translated only;(pango);pango-1.0/;machine-translated only;DevIL;IL/;1.6.7;IUP;IUP/;2.3.0;IUP 3.x;IUP3/;3.5 (missing Lua part at the moment);Java API;japi.bi;from 2005;libjit;jit.bi, jit/;0.1.2;Java Native Interface;jni.bi;from 2006;jpeglib (ijg.org);jpeglib.bi;6.2 (?);JPGalleg;jpgalleg.bi;2.5;json-c;json-c/;0.9 (?);libintl;libintl.bi;from 2010;libxml2;libxml/;2.6.17;libxslt;libxslt/;1.1.13;Lua;Lua/;5.1.1;liblzma;lzma.bi;5.0.2;LZO;lzo/;2.02;MediaInfo;MediaInfo.bi;October 2011;mpg123;mpg123.bi;from 2010, machine-translated only;Mini-XML;mxml.bi;from 2005;MySQL;mysql/;4.0.17;Newton Physics Engine;Newton.bi;from 2005;ODE (Open Dynamics Engine);ode/;0.11.1;libogg;ogg/;from 2007;PCRE (Perl Compatible Regular Expressions);pcre/;7.6;PDFlib;pdflib.bi;4.0.2;libpng;png.bi;1.2.16;PortAudio;portaudio.bi;from 2010, machine-translated only;PostgreSQL;postgresql/;from 2006;QuickLZ;quicklz.bi;1.50;TRE (regex matching library);regex.bi;from 2006;SDL;SDL/;1.2.9;libsndfile;sndfile.bi;1.0.X;SpiderMonkey;spidermonkey/;from 2006;SQLite 2.x;sqlite2.bi;2.8.17;SQLite 3.x;sqlite3.bi;3.7.8;UUID library (e2fsprogs);uuid.bi;from 2010;libVLC;vlc/;1.1.x;libvorbis;vorbis/;from 2007;Win32 API;windows.bi, win/;from 2005 with partial updates later;wx-c (wxWidgets);wx-c/;0.9.0.2;X11;X11/;from 2010, machine-translated only;libzip;zip.bi;0.10;zlib;zlib.bi;1.2.2;ZeroMQ;zmq/;2.1.10"}} + +Note: This wiki page is auto-generated from the ""include/HeaderStatus.txt"" file from the fbc source code, please patch that file instead of this page, and regenerate the page using the doc/fbchkdoc/header-status.bas program. + +{{fbdoc item="back" value="DevToc|FreeBASIC Developer Information"}} \ No newline at end of file diff --git a/include/HeaderStatus.txt b/include/HeaderStatus.txt index 5481d5f..ee6aa7f 100644 --- a/include/HeaderStatus.txt +++ b/include/HeaderStatus.txt @@ -1,88 +1,88 @@ -OpenAL al/ 1.13 -(ALUT) al/alut.bi 1.1.0 -Allegro allegro.bi, allegro/ 4.0.3 + 4.1 changes -GNU Aspell aspell.bi 0.50 -BASS bass.bi 2.4 -BASSMOD bassmod.bi 2.0 -libbfd bfd.bi, bfd/ 2.16, 2.17, 2.18 -big_int big_int/ from 2005 -libbzip2 bzlib.bi 1.0.6 -caca caca.bi 0.99 beta17 -Cairo Graphics cairo/ 1.2.6 -CGUI cgui.bi 2.0.1 -Chipmunk Physics chipmunk/ 4.1.0 -C runtime (glibc, msvcrt, djgpp) crt.bi, crt/ from 2005 with partial updates later -cryptlib cryptlib.bi from 2005 -CUnit CUnit/ 2.1-0 -libcurl curl.bi 7.21.6 -Curses (ncurses, pdcurses) curses.bi, curses/ pdcurses is 3.4, curses from 2005 -DISLIN dislin.bi from 2005 -disphelper disphelper/ from 2005 -DOS/DJGPP dos/ from 2005 with partial updates later -Expat expat.bi 1.95.8 -FastCGI fastcgi/ from 2005 -libffi ffi.bi, ffi/ 3.0.10 -flite flite/ 1.4, machine-translated only -FMOD fmod.bi 3.74 -FreeImage? FreeImage.bi 3.15.1 -FreeType? freetype2/ 2.1.9 -GD library gd/ from 2005 -GDBM (GNU data base manager) gdbm.bi from 2010 -GDSL (Generic Data Structures Library) gdsl/ from 2005 -gettext gettext-po.bi 0.17 -GIFLIB gif_lib.bi 4.1 -OpenGL GL/ October 2011 -(GLUT) GL/glut.bi from 2006 -(FreeGLUT) GL/freeglut[_ext,_std].bi 2.6.0 -(GLFW) GL/glfw.bi 2.7.2 -gmplib (GNU Multiple Precision Arithmetic Library) gmp.bi 4.1.4 -GRX grx/ 2.4.6 -gsl (GNU Scientific Library) gsl/ 1.6 -GTK+ (atk, gdk, glade, glib, gtk, libart, pango) gtk/ from 2005 with partial updates later - atk-1.0/ machine-translated only - gtk-2.0/ machine-translated only - glib-2.0/ machine-translated only - pango-1.0/ machine-translated only -DevIL IL/ 1.6.7 -IUP IUP/ 2.3.0 -IUP 3.x IUP3/ 3.5 (missing Lua part at the moment) -Java API japi.bi from 2005 -libjit jit.bi, jit/ 0.1.2 -Java Native Interface jni.bi from 2006 -jpeglib (ijg.org) jpeglib.bi 6.2 (?) -JPGalleg jpgalleg.bi 2.5 -json-c json-c/ 0.9 (?) -libintl libintl.bi from 2010 -libxml2 libxml/ 2.6.17 -libxslt libxslt/ 1.1.13 -Lua Lua/ 5.1.1 -liblzma lzma.bi 5.0.2 -LZO lzo/ 2.02 -MediaInfo? MediaInfo.bi October 2011 -mpg123 mpg123.bi from 2010, machine-translated only -Mini-XML mxml.bi from 2005 -MySQL mysql/ 4.0.17 -Newton Physics Engine Newton.bi from 2005 -ODE (Open Dynamics Engine) ode/ 0.11.1 -libogg ogg/ from 2007 -PCRE (Perl Compatible Regular Expressions) pcre/ 7.6 -PDFlib pdflib.bi 4.0.2 -libpng png.bi 1.2.16 -PortAudio? portaudio.bi from 2010, machine-translated only -PostgreSQL postgresql/ from 2006 -QuickLZ quicklz.bi 1.50 -TRE (regex matching library) regex.bi from 2006 -SDL SDL/ 1.2.9 -libsndfile sndfile.bi 1.0.X -SpiderMonkey? spidermonkey/ from 2006 -SQLite 2.x sqlite2.bi 2.8.17 -SQLite 3.x sqlite3.bi 3.7.8 -UUID library (e2fsprogs) uuid.bi from 2010 -libVLC vlc/ 1.1.x -libvorbis vorbis/ from 2007 -Win32 API windows.bi, win/ from 2005 with partial updates later -wx-c (wxWidgets) wx-c/ 0.9.0.2 -X11 X11/ from 2010, machine-translated only -libzip zip.bi 0.10 -zlib zlib.bi 1.2.2 -ZeroMQ zmq/ 2.1.10 +OpenAL al/ 1.13 +(ALUT) al/alut.bi 1.1.0 +Allegro allegro.bi, allegro/ 4.0.3 + 4.1 changes +GNU Aspell aspell.bi 0.50 +BASS bass.bi 2.4 +BASSMOD bassmod.bi 2.0 +libbfd bfd.bi, bfd/ 2.16, 2.17, 2.18 +big_int big_int/ from 2005 +libbzip2 bzlib.bi 1.0.6 +caca caca.bi 0.99 beta17 +Cairo Graphics cairo/ 1.2.6 +CGUI cgui.bi 2.0.1 +Chipmunk Physics chipmunk/ 4.1.0 +C runtime (glibc, msvcrt, djgpp) crt.bi, crt/ from 2005 with partial updates later +cryptlib cryptlib.bi from 2005 +CUnit CUnit/ 2.1-0 +libcurl curl.bi 7.21.6 +Curses (ncurses, pdcurses) curses.bi, curses/ pdcurses is 3.4, curses from 2005 +DISLIN dislin.bi from 2005 +disphelper disphelper/ from 2005 +DOS/DJGPP dos/ from 2005 with partial updates later +Expat expat.bi 1.95.8 +FastCGI fastcgi/ from 2005 +libffi ffi.bi, ffi/ 3.0.10 +flite flite/ 1.4, machine-translated only +FMOD fmod.bi 3.74 +FreeImage FreeImage.bi 3.15.1 +FreeType freetype2/ 2.1.9 +GD library gd/ from 2005 +GDBM (GNU data base manager) gdbm.bi from 2010 +GDSL (Generic Data Structures Library) gdsl/ from 2005 +gettext gettext-po.bi 0.17 +GIFLIB gif_lib.bi 4.1 +OpenGL GL/ October 2011 +(GLUT) GL/glut.bi from 2006 +(FreeGLUT) GL/freeglut[_ext,_std].bi 2.6.0 +(GLFW) GL/glfw.bi 2.7.2 +gmplib (GNU Multiple Precision Arithmetic Library) gmp.bi 4.1.4 +GRX grx/ 2.4.6 +gsl (GNU Scientific Library) gsl/ 1.6 +GTK+ (atk, gdk, glade, glib, gtk, libart, pango) gtk/ from 2005 with partial updates later +(atk) atk-1.0/ machine-translated only +(gtk) gtk-2.0/ machine-translated only +(glib) glib-2.0/ machine-translated only +(pango) pango-1.0/ machine-translated only +DevIL IL/ 1.6.7 +IUP IUP/ 2.3.0 +IUP 3.x IUP3/ 3.5 (missing Lua part at the moment) +Java API japi.bi from 2005 +libjit jit.bi, jit/ 0.1.2 +Java Native Interface jni.bi from 2006 +jpeglib (ijg.org) jpeglib.bi 6.2 (?) +JPGalleg jpgalleg.bi 2.5 +json-c json-c/ 0.9 (?) +libintl libintl.bi from 2010 +libxml2 libxml/ 2.6.17 +libxslt libxslt/ 1.1.13 +Lua Lua/ 5.1.1 +liblzma lzma.bi 5.0.2 +LZO lzo/ 2.02 +MediaInfo MediaInfo.bi October 2011 +mpg123 mpg123.bi from 2010, machine-translated only +Mini-XML mxml.bi from 2005 +MySQL mysql/ 4.0.17 +Newton Physics Engine Newton.bi from 2005 +ODE (Open Dynamics Engine) ode/ 0.11.1 +libogg ogg/ from 2007 +PCRE (Perl Compatible Regular Expressions) pcre/ 7.6 +PDFlib pdflib.bi 4.0.2 +libpng png.bi 1.2.16 +PortAudio portaudio.bi from 2010, machine-translated only +PostgreSQL postgresql/ from 2006 +QuickLZ quicklz.bi 1.50 +TRE (regex matching library) regex.bi from 2006 +SDL SDL/ 1.2.9 +libsndfile sndfile.bi 1.0.X +SpiderMonkey spidermonkey/ from 2006 +SQLite 2.x sqlite2.bi 2.8.17 +SQLite 3.x sqlite3.bi 3.7.8 +UUID library (e2fsprogs) uuid.bi from 2010 +libVLC vlc/ 1.1.x +libvorbis vorbis/ from 2007 +Win32 API windows.bi, win/ from 2005 with partial updates later +wx-c (wxWidgets) wx-c/ 0.9.0.2 +X11 X11/ from 2010, machine-translated only +libzip zip.bi 0.10 +zlib zlib.bi 1.2.2 +ZeroMQ zmq/ 2.1.10