home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / ade-misc-src.tgz / ade-misc-src.tar / docs / PROJECTS < prev    next >
Text File  |  1996-09-28  |  17KB  |  624 lines

  1.  
  2.       A M I G A       D E V E L O P E R S      E N V I R O N M E N T
  3.  
  4.                P R O J E C T    L I S T
  5.  
  6.               (Updated 10-May-96)
  7.  
  8. [Note: This is a preliminary draft which will change greatly over the next
  9. few weeks, as it is converted to texinfo format (from which we can
  10. automatically generate AmigaGuide files, GNU info files, dvi files, and
  11. PostScript files.]
  12.  
  13. ================
  14. HOW YOU CAN HELP
  15. ================
  16.  
  17. There is an incredible amount of programmer talent available in the Amiga
  18. community, with an incalculable amount of hours going into producing demos,
  19. freely distributable software, shareware, and other such goodies.  If only
  20. 1% of that effort could be harnessed to improve the ADE, we could easily
  21. have a standard set of freely available tools that would rival any
  22. commercially available tools for the Amiga.
  23.  
  24. You do not have to be an expert AmigaOS programmer to help.  Neither do you
  25. have to be an expert in compiler or other software tools technology.  All
  26. you have to do is be willing to learn and be willing to work in a community
  27. effort.
  28.  
  29. As you read the project list, look for things that you think are within your
  30. capabilities to either work on, or to help test, or even simply to help
  31. document.  If you think of something interesting that either needs doing by
  32. yourself or someone else, send that suggestion to the maintainer of this
  33. list.  Tackle as big or as small of a project as your skills and available
  34. time permits.  Think of it as "adopting a program".
  35.  
  36. =======
  37. REWARDS
  38. =======
  39.  
  40. For certain projects we may offer small rewards to the first person or team
  41. of persons to complete them.  If you can't help with a project, perhaps you
  42. or the company you work for can contribute to an award for a specific
  43. project.  You can pledge an award for any project you wish.
  44.  
  45. ==========
  46. DIFFICULTY
  47. ==========
  48.  
  49. Each project has a rating of how difficult it is. This is an *educated
  50. guess* only, so in reality it may turn out to be easier/more difficult than
  51. expected.  In general, easy projects can be done by anyone with some C
  52. programming knowledge, and preferably some knowledge about tools like
  53. 'make'.     If you get stuck, just ask.  There are always people willing to
  54. help out.
  55.  
  56. Projects of average difficulty can be done by anyone who has a reasonable C
  57. programming experience and a more than passing knowledge of Unix-like
  58. systems.  Again, if you get stuck somewhere, just ask.
  59.  
  60. Finally, difficult projects require a solid knowledge about Unix and C
  61. programming.  You must be aware of the Unix kernel functions and about the
  62. pitfalls and complexities of programming in a multitasking evironment.    Also
  63. knowledge about 680x0 programming is required for some projects.  As usual,
  64. if you get stuck, ask.
  65.  
  66. Often, the difficulty rating is a range (easy-average, average-difficult).
  67. In that case it wasn't possible to make a very educated guess because nobody
  68. had really looked into it to find out what exactly needs to be done.  So
  69. you'll have to find out as you go along.
  70.  
  71. ============
  72. PROJECT LIST
  73. ============
  74.  
  75. This is a list of projects related to maintenance or development of the ADE.
  76. This list is currently being maintained by Fred Fish (fnf@amigalib.com).
  77.  
  78. ============
  79.  
  80. PROJECT:    Get binutils changes merged back into main source
  81.  
  82. DESCRIPTION
  83.         Take the changes that were made in 2.6 and work with the
  84.         maintainers of binutils at cygnus to ensure that those
  85.         changes will still work in the next release and also
  86.         hopefully to get the changes accepted into the master source
  87.         tree so they don't have to be maintained separately.
  88.  
  89. VOLUNTEERS:
  90.  
  91. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  92.         by Amiga Library Services
  93.  
  94. DIFFICULTY:    Average
  95.  
  96. STATUS:        No current activity
  97.  
  98. ============
  99.  
  100. PROJECT:    Test -RESIDENT (-resident with 32-bit offsets)
  101.  
  102. DESCRIPTION
  103.         An option -flarge-baserel exists in gcc. This is the same as
  104.         -fbaserel, would overcome the 64K limit for data.
  105.  
  106.         In order to test this all libraries need to be recompiled
  107.         with this flag. If it works, an option -RESIDENT or
  108.         -resident32 or whatever should be added to the specs file.
  109.  
  110. VOLUNTEERS:
  111.  
  112. REWARD:        2 free Aminet or FreshFish CDs - value $40 - furnished
  113.         by Amiga Library Services
  114.  
  115. DIFFICULTY:    Easy
  116.  
  117. STATUS:        No current activity.
  118.  
  119. ============
  120.  
  121. PROJECT:    Replace the current inlines by the new #define-based
  122.         inlines.
  123.  
  124. DESCRIPTION
  125.  
  126. VOLUNTEERS:
  127.  
  128. REWARD:        2 free Aminet or FreshFish CDs - value $40 - furnished
  129.         by Amiga Library Services
  130.  
  131. STATUS:        In progress
  132.  
  133. ============
  134.  
  135. PROJECT:    Fix latest version of GNU tar.
  136.  
  137. DESCRIPTION
  138.         Find out why 'cat t.tar.gz | tar xzvf -' fails to work for
  139.         large archives.  Also find out why tar is unable to do
  140.         something like:
  141.  
  142.             tar -Mxvf DEV:PC0
  143.  
  144.         with any of the DEV-handlers on Aminet. Similar problems if
  145.         you use the PIPE: device instead.  All is does is to print
  146.  
  147.             Operation not supported by device
  148.  
  149.         There have been two ports of GNU tar which worked and didn't
  150.         use ixemul.library, so maybe the problem is in
  151.         ixemul/open()?
  152.  
  153. VOLUNTEERS:
  154.  
  155. REWARD:        2 free Aminet or FreshFish CDs - value $40 - furnished
  156.         by Amiga Library Services
  157.  
  158. DIFFICULTY:    Easy
  159.  
  160. STATUS:        Hans Verkuil has analyzed the first problem with piping and
  161.         tar still needs    to be patched to work around it.  Volunteers
  162.         can contact him for details.
  163.  
  164. ============
  165.  
  166. PROJECT:    Upgrade to the latest pdksh.
  167.  
  168. DESCRIPTION
  169.  
  170.         Some work has been done on this by Lars Hecking
  171.         (lhecking@nmrc.ucc.ie).  He has merged the diffs from 4.9
  172.         (and some more stuff) into 5.2.3. It compiles fine and runs
  173.         mostly ok interactively, but dies on scripts.  It is
  174.         believed that fork()/vfork() emulation is incomplete.
  175.  
  176.         There are also a couple of documented bugs in pdksh 4.9 that
  177.         either need to be fixed in 4.9 or else ensure they are fixed
  178.         in the updated version:
  179.  
  180.             *    In pdksh 4.9, the built in echo doesn't properly
  181.             handle args that start with '-', so we have to use GNU
  182.             echo.
  183.  
  184.             *    Pdksh 4.9 doesn't properly handle the following, either
  185.             interactively or in a script file.  No warning or error
  186.             is generated, the elif clause is simply ignored:
  187.  
  188.                 if test -f foo
  189.                 then
  190.                     echo foo
  191.                 elif test -f bar   <--- missing following "then"
  192.                     echo bar
  193.                 fi
  194.  
  195.             *    Pdksh 4.9 does not properly handle the following:
  196.  
  197.                 cat >a.c <<EOF
  198.                 EOF
  199.  
  200. VOLUNTEERS:    David Zaroski (cz253@cleveland.Freenet.Ed)
  201.  
  202. DIFFICULTY:    Difficult
  203.  
  204. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  205.         by Amiga Library Services
  206.  
  207. ============
  208.  
  209. PROJECT:    Port bash.
  210.  
  211. DESCRIPTION
  212.  
  213.         Some work has been done on this by Lars Hecking
  214.         (lhecking@nmrc.ucc.ie).  He is able to supply a corrected
  215.         config.sh (the one generated from configure is faulty).  As
  216.         for the pdksh port, some code needs to be written for
  217.         launching external progs (fork()/vfork() emulation, again).
  218.  
  219. VOLUNTEERS:
  220.  
  221. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  222.         by Amiga Library Services
  223.  
  224. DIFFICULTY:    Difficult
  225.  
  226. STATUS:        No current activity.
  227.  
  228. ============
  229.  
  230. PROJECT:    Add MuFS support to ixemul library
  231.  
  232. DESCRIPTION
  233.  
  234.         Mike Krings <kringsm@athene.informatik.uni-bonn.de> has
  235.         already done some work on this.  E.g. he has implemented
  236.         getpwuid() getpwname() getgrgid() and some more. But some
  237.         problems have come up. Functions like getpwuid() return the
  238.         data in a static buffer, which is difficult to implement in
  239.         a shared library.  But this problem can be solved.
  240.  
  241.         He will do some future work, if anyone could do the following stuff:
  242.  
  243.             - open "multiuser.library" V39 on ixemul startup
  244.             - close it on shutdown
  245.  
  246.         Also, the multiuser headers should be integrated into the
  247.         ixemul include tree in the ixemul source so anyone can
  248.         rebuild the library.
  249.  
  250. VOLUNTEERS:    Hans Verkuil
  251.  
  252. REWARD:        free Aminet or FreshFish CDs, quantity depends upon
  253.         actual work - furnished by Amiga Library Services
  254.  
  255. DIFFICULTY:    Average
  256.  
  257. STATUS:        No current activity.
  258.  
  259. ============
  260.  
  261. PROJECT:    Implement the chip-keyword in gcc.
  262.  
  263. DESCRIPTION:
  264.  
  265.         Some code already exists and it would be wonderful if
  266.         somebody would take this on.
  267.  
  268. VOLUNTEERS:
  269.  
  270. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  271.         by Amiga Library Services
  272.  
  273. DIFFICULTY:    Difficult
  274.  
  275. STATUS:        No current activity.
  276.  
  277. ============
  278.  
  279. PROJECT:    Write an AmigaOS GUI for gdb
  280.  
  281. DESCRIPTION
  282.  
  283.         Write a GUI for gdb.  Gdb already has hooks for GUI's. A
  284.         good place to start would be to get and examine GDBTK, which
  285.         is a version of GDB that has a GUI written in TK.  Available
  286.         from ftp.cygnus.com in pub/gdb.
  287.  
  288. VOLUNTEERS:    Jason White (jpwhite@harp.aix.calpoly.edu)
  289.  
  290. REWARD:        10 free Aminet or FreshFish CDs - value $200 - furnished
  291.         by Amiga Library Services
  292.  
  293. DIFFICULTY:    Difficult
  294.  
  295. STATUS:        Jason has volunteered to do this and has a web page
  296.         for this project at http://www.calpoly.edu/~jpwhite/.
  297.         The project is already well under way and he expects to
  298.         meet the deadlines that he has set on the web page.
  299.  
  300. ============
  301.  
  302. PROJECT:    Update GNU emacs port to latest release
  303.  
  304. DESCRIPTION
  305.  
  306.         Current EMACS ports are based on version 18.59.  A port of
  307.         19.28 exists but is not stable.  First step is to make it
  308.         stable and make it work, second step is to convert it so
  309.         that it compiles with GNU C as well as SAS/C.
  310.  
  311.         One problem apparently with emacs19 is that it doesn't work
  312.         on systems that have different memory pools. That means that
  313.         Amiga's where the physical addresses of the memory boards
  314.         are far apart (say, 0x00300000-0x00500000,
  315.         0x07000000-0x07400000) cannot use emacs. It assumes that the
  316.         upper 8 bits of all memory addresses are preferably 0, or at
  317.         least always have the same constant value. And that's also a
  318.         problem with emacs 18. It will not run reliably on Amiga
  319.         which has such a problematic memory configuration.
  320.  
  321. VOLUNTEERS:
  322.  
  323. REWARD:        10 free Aminet or FreshFish CDs - value $200 - furnished
  324.         by Amiga Library Services
  325.  
  326. DIFFICULTY:    Difficult
  327.  
  328. STATUS:        No current activity.
  329.  
  330. ============
  331.  
  332. PROJECT:    Port ghostview
  333.  
  334. DESCRIPTION
  335.  
  336. VOLUNTEERS:
  337.  
  338. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  339.         by Amiga Library Services
  340.  
  341. DIFFICULTY:    Average-difficult
  342.  
  343. STATUS:        No current activity.
  344.  
  345. ============
  346.  
  347. PROJECT:    Fold changes back into main source bases
  348.  
  349. DESCRIPTION
  350.         Many of the changes currently in the ADE are candidates for
  351.         being folded back into the main source base for each of the
  352.         specific tools. You will need to work with the maintainer of
  353.         each tool to take the current changes and get them folded
  354.         back into his source tree. Some changes may require complete
  355.         reworks in order to make them acceptable, and some may be
  356.         acceptable "as is".
  357.  
  358. VOLUNTEERS:
  359.  
  360. DIFFICULTY:    Average
  361.  
  362. REWARD:        free Aminet or FreshFish CDs, quantity depends upon
  363.         actual work - furnished by Amiga Library Services
  364.  
  365. STATUS:        No current activity.
  366.  
  367. ============
  368.  
  369. PROJECT:    Complete a port of the latest version of Perl
  370.  
  371. DESCRIPTION
  372.         Complete a port of the latest version of perl, including
  373.         having it pass it's testsuite.  Some work has already been
  374.         done (fnf@amigalib.com).
  375.  
  376. VOLUNTEERS:    Hans Verkuil
  377.  
  378. REWARD:        2 free Aminet or FreshFish CDs - value $40 - furnished
  379.         by Amiga Library Services
  380.  
  381. STATUS:        No current activity.  Hans is still waiting until Larry Wall
  382.         releases 5.002. As soon as he does that, he'll start porting
  383.         it. Especially with the new networking facilities of the
  384.         ixemul.library and the dld-port this can be a great program.
  385.         Larry released 5.001 way too early at the time (full of bugs)
  386.         and apparently he now wants to be sure all bugs are covered
  387.         before releasing 5.002. And that's also the reason why the
  388.         wait for 5.002.
  389.  
  390. ============
  391.  
  392. PROJECT:    Port TK to the Amiga
  393.  
  394. DESCRIPTION
  395.  
  396. VOLUNTEERS:
  397.  
  398. REWARD:        10 free Aminet or FreshFish CDs - value $200 - furnished
  399.         by Amiga Library Services
  400.  
  401. DIFFICULTY:    Average-difficult
  402.  
  403. STATUS:        No current activity.
  404.  
  405. ============
  406.  
  407. PROJECT:    Turn TCL libraries into shared library tcl.library
  408.  
  409. DESCRIPTION    The need for this is not yet established completely.
  410.         It seems reasonable, since tcl is such a cool thing,
  411.         and it would be good to have the shareable parts be
  412.         in a shared library.
  413.  
  414. VOLUNTEERS:
  415.  
  416. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  417.         by Amiga Library Services
  418.  
  419. DIFFICULTY:    Average
  420.  
  421. STATUS:        No current activity.
  422.  
  423. ============
  424.  
  425. PROJECT:    Making tasking in GNU ADA work.
  426.  
  427. DESCRIPTION    Probably requires porting effort of low level support
  428.         library.
  429.  
  430. VOLUNTEERS:
  431.  
  432. REWARD:        2 free Aminet or FreshFish CDs - value $40 - furnished
  433.         by Amiga Library Services
  434.  
  435. DIFFICULTY:    Difficult
  436.  
  437. STATUS:        No current activity.
  438.  
  439. ============
  440.  
  441. PROJECT:    Implement support to access the serial port in a Unix
  442.         compatible way.
  443.  
  444. DESCRIPTION:    Many programs, such as gdb and GNU uucp, require access
  445.         to the serial port. In order to easily port these programs
  446.         support needs to be added to ixemul.library to emulate
  447.         the way Unix handles this. I'm not entirely sure what
  448.         exactly needs to be done, but it will probably entail
  449.         adding special handling for a /dev/ttya file (much like
  450.         the way /dev/null is currently handled).
  451.  
  452. VOLUNTEERS:
  453.  
  454. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  455.         by Amiga Library Services
  456.  
  457. DIFFICULTY:    Average-difficult
  458.  
  459. STATUS:        No current activity.
  460.  
  461. ============
  462.  
  463. PROJECT:    Port programs from the NetBSD distribution to the Amiga.
  464.  
  465. DESCRIPTION:    The NetBSD distribution (ftp.netbsd.org) provides a huge
  466.         number of programs and utilities that are also free and
  467.         a lot of these programs are probably quite easy to port.
  468.  
  469. VOLUNTEERS:    Hans Verkuil
  470.  
  471. REWARD:        2 free Aminet or FreshFish CDs - value $40 - for each
  472.         "significant" port (includes making it GNU "make"
  473.         compatible and use autoconfig) - furnished by Amiga
  474.         Library Services
  475.  
  476. DIFFICULTY:    Easy-average (depends on which programs you port, of course :-)
  477.  
  478. STATUS:        No current activity.
  479.  
  480. ============
  481.  
  482. PROJECT:    Port glibc-1.09, the GNU standard C library.
  483.  
  484. DESCRIPTION:    The PROJECT line says it all, really.
  485.  
  486. VOLUNTEERS:
  487.  
  488. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  489.         by Amiga Library Services.
  490.  
  491. DIFFICULTY:    Average
  492.  
  493. STATUS:        No current activity.
  494.  
  495. ============
  496.  
  497. PROJECT:    Merge useful parts from PasTeX into ADE unixtex
  498.  
  499. DESCRIPTION:
  500.  
  501.         A very useful thing for someone to do would be to try
  502.         building PasTeX from the supplied source.  Assuming that
  503.         works, and that the source is complete, there would probably
  504.         be some parts that would be very useful to merge into the
  505.         ADE unixtex, such as showdvi for example.  At one time the
  506.         ADE unixtex was based on a newer version of TeX than PasTeX,
  507.         but I don't know if that is still true or not, if PasTeX has
  508.         been updated.  In any case, ADE unixtex could also use some
  509.         updating from the CTAN archives.
  510.  
  511. VOLUNTEERS:
  512.  
  513. REWARD:        3 free Aminet or FreshFish CDs - value $60 - furnished
  514.         by Amiga Library Services.
  515.  
  516. DIFFICULTY:    Average
  517.  
  518. STATUS:        No current activity.
  519.  
  520. ============
  521.  
  522. PROJECT:    Construct a shared/link library to use X11 programs/source
  523.  
  524. DESCRIPTION
  525.  
  526.         Try to make an X11 emulation library so that X11 programs
  527.         can be compiled and linked with it and look like a 'normal'
  528.         Amiga program. Use the existing source of DJGPP's GRXLIB
  529.         (MSDOS GCC port) as a starting point. GRXLIB implements an
  530.         API to access VGA gfxcards. One could make an VGA card that
  531.         resembles the Amiga gfx chipset.  Use the X11 emulation
  532.         library XlibEmu, which uses GRXLIB, to build the actual X11
  533.         emulation.  Terje Pedersen did it so it is possible.
  534.  
  535. VOLUNTEERS:
  536.  
  537. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  538.         by Amiga Library Services.
  539.  
  540. DIFFICULTY:    Might depend if the project could be splitted into
  541.         several parts or not. 
  542.  
  543. STATUS:        No current activity, well some ;)
  544.  
  545. ============
  546.  
  547. PROJECT:    "Amiga-fy" JOVE (Jonathan's Own Version of EMACS)
  548.  
  549. DESCRIPTION
  550.  
  551.         JOVE is a very nice, small EMACS type editor, which
  552.         comes from the contrib portion of the BSD distribution.
  553.         It would be very nice to have an Intuition interface
  554.         for it, rather than the current termcap based one.
  555.  
  556. VOLUNTEERS:
  557.  
  558. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  559.         by Amiga Library Services.
  560.  
  561. DIFFICULTY:    Moderate.
  562.  
  563. STATUS:        No current activity.
  564.  
  565. ============
  566.  
  567. PROJECT:    Turn libg++ into a shared library
  568.  
  569. DESCRIPTION
  570.  
  571.         Libg++ contains most of the C++ runtime support for the
  572.         GNU C++ compiler.  It would be very useful to have a
  573.         shared library version available, as well as the regular
  574.         link library.
  575.  
  576. VOLUNTEERS:
  577.  
  578. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  579.         by Amiga Library Services.
  580.  
  581. DIFFICULTY:    Moderate.
  582.  
  583. STATUS:        No current activity.
  584.  
  585. ============
  586.  
  587. PROJECT:    Port Red Hat Linux's RPM
  588.  
  589. DESCRIPTION
  590.  
  591.         The ADE needs a package management system, that keeps
  592.         track of what packages are installed, what files belong
  593.         to what packages, what the versions are of each package,
  594.         uninstalling a package, upgrading an installed package,
  595.         etc.  The Red Hat Linux distribution has such a package,
  596.         called RPM.
  597.  
  598. VOLUNTEERS:
  599.  
  600. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  601.         by Amiga Library Services.
  602.  
  603. DIFFICULTY:    Moderate to easy.
  604.  
  605. STATUS:        No current activity.
  606.  
  607. ============
  608.  
  609. PROJECT:    Generate Objective-C runtime shared library
  610.  
  611. DESCRIPTION
  612.  
  613.         Transform the GNU Objective-C runtime library (libobjc.a)
  614.         into an Amiga shared library.
  615.  
  616. VOLUNTEERS:    Laurent Peron (Laurent.Peron@emi.u-bordeaux.fr)
  617.  
  618. REWARD:        5 free Aminet or FreshFish CDs - value $100 - furnished
  619.         by Amiga Library Services.
  620.  
  621. DIFFICULTY:    Moderate.
  622.  
  623. STATUS:        Summer project of Laurent's, status report Sept 96.
  624.