For the ability of better porting the text client should be moved into its own directory and be equipped with its own build infrastructure.
several parts are still intermixed with citadel server and the client. heres a list, and howto dissovle them:
- Directories; the client gets its own copy of citadel_dirs.c, some entries are removed from the server one.
- citadel.h + ipcdef.h contains some defines which are used in several places; the contents are moved to libcitadel.h; some defines have duplicates in webcit.h and should be removed there
Parts to move:
- citadel/utillib/ipc_c_tpc.c -> libcitadel/libtextclient/ (some include paths have to be corrected)
- citadel/utillib/citadel_ipc.c -> libcitadel/libtextclient/ (some include paths have to be corrected)
- citadel/include/command.h -> libcitadel/libtextclient/
- citadel/include/citadel_ipc.h -> libcitadel/libtextclient/
- citadel/textclient/ -> textclient with these files: (or maybe better to textclient/src/ ?) with these files:
citadel.c client_chat.c client_passwords.c commands.c ecrash.c(copy) md5.c messages.c rooms.c routines.c routines2.c screen.c tuiconfig.c
citadel_decls.h client_chat.h client_passwords.h commands.h ecrash.h(copy) md5.h messages.h rooms.h routines.h routines2.h screen.h sysdep.h tuiconfig.h typesize.h
Parts to copy/create
debian/ with its packaging instructions
citadel/configure.ac + citadel/Makefile.in have to be freed from textclient instructions
/home/dothebart/split_client_citadel.tar.bz2 contains a working draft of the above.