xref: /dflybsd-src/usr.sbin/installer/libdfui/README (revision 94b98a915ba84699b2a2adab9146fbc2cf617459)
121c1c48aSSascha Wildnerlibdfui v4.0 README
221c1c48aSSascha Wildner===================
321c1c48aSSascha Wildner
421c1c48aSSascha Wildner$Id: README,v 1.3 2005/03/21 03:26:57 cpressey Exp $
521c1c48aSSascha Wildner
621c1c48aSSascha WildnerWhat is libdfui?
721c1c48aSSascha Wildner----------------
821c1c48aSSascha Wildner
921c1c48aSSascha Wildnerlibdfui is a LIBrary for DragonFly User Interfaces.  It provides a highly
1021c1c48aSSascha Wildnerabstract user interaction interface with which an application program
1121c1c48aSSascha Wildner(termed the backend) can communicate with a user via a concreate user
1221c1c48aSSascha Wildnerinterface terminal program (termed the frontend.)  The frontend and the
13*8f8e1dafSSascha Wildnerbackend can communicate over several kinds of transport layers (TCP
14*8f8e1dafSSascha Wildnerand Named Pipes.)  The protocol is abstract enough so that the
1521c1c48aSSascha Wildnerfrontend can occupy nearly any medium (GUI, addressable text console,
1621c1c48aSSascha Wildnerteletype, voice synthesis/recognition, etc) with little to no `fudging'
1721c1c48aSSascha Wildnerof the semantics (i.e. the structure and nature of the information that
1821c1c48aSSascha Wildnerthe backend wishes to present and/or acquire.)
1921c1c48aSSascha Wildner
2021c1c48aSSascha WildnerWhat is the current state of the project?
2121c1c48aSSascha Wildner-----------------------------------------
2221c1c48aSSascha Wildner
2321c1c48aSSascha WildnerEXPERIMENTAL.  libdfui's application programming interface may change at
2421c1c48aSSascha Wildnerany time.  If you use libdfui in a project, be prepared to chase API changes.
2521c1c48aSSascha Wildnerlibdfui 4.0 is not expected to be backwards-compatible with previous
2621c1c48aSSascha Wildnerversions.  While many functions may be the same, some have changed.
2721c1c48aSSascha Wildner
2821c1c48aSSascha WildnerHow do I build and install libdfui?
2921c1c48aSSascha Wildner-----------------------------------
3021c1c48aSSascha Wildner
3121c1c48aSSascha WildnerOn a BSD-based system, go into the libdfui source directory and type:
3221c1c48aSSascha Wildner
3321c1c48aSSascha Wildner	make
3421c1c48aSSascha Wildner
3521c1c48aSSascha WildnerOnce built, it can be installed by typing (as root):
3621c1c48aSSascha Wildner
3721c1c48aSSascha Wildner	make install
3821c1c48aSSascha Wildner
3921c1c48aSSascha WildnerDirections may differ for other systems.
4021c1c48aSSascha Wildner
4121c1c48aSSascha WildnerAn alternative method is to build libdfui using the ports system and
4221c1c48aSSascha Wildnerinstall it using the package system.
4321c1c48aSSascha Wildner
4421c1c48aSSascha WildnerHow do I use libdfui from a program?
4521c1c48aSSascha Wildner------------------------------------
4621c1c48aSSascha Wildner
4721c1c48aSSascha Wildnerlibdfui requires libaura, but is not statically linked with it, so any
4821c1c48aSSascha Wildnerconsumers of libdfui will also need to link to libaura.
4921c1c48aSSascha Wildner
5021c1c48aSSascha WildnerYou can give gcc the following sort of command line flags to tell it to
5121c1c48aSSascha Wildnerlink your program with libdfui:
5221c1c48aSSascha Wildner
5321c1c48aSSascha Wildner	gcc foo.c -o foo -L/usr/local/lib -laura -ldfui
5421c1c48aSSascha Wildner
5521c1c48aSSascha WildnerSee the libdfui source code for the list of available functions and what
5621c1c48aSSascha Wildnerthey do.
57