2000-11-20 Martin Baulig Started with the big rewrite for GNOME 2.0: - split the `glibtop' structure into `glibtop_server' and `glibtop_client' and make `glibtop_client' a GObject. - cleanly separate the library and the backends. This stuff currently does not compile. * glibtop.h (glibtop_server_private, glibtop_server_info): Removed typedefs. (struct _glibtop, struct _glibtop_server_info): Removed. (glibtop_global_server, glibtop_server_features): Removed. (glibtop_server_ref, glibtop_server_unref): Removed. * glibtop.h (glibtop_init_s): First argument is now a `glibtop_server *'. * include/glibtop/*.h: Removed all #defines with the glibtop_global_server. (glibtop_get_*_l): First argument is now a `glibtop_client *'. (glibtop_get_*_s, glibtop_init_*_s): First argument is now a `glibtop_server *'. * lib/glibtop-client.c: New file. * sysdeps/common/xmalloc.c: Moved to lib/. * sysdeps/common/error.c: Moved to lib/. * lib/xmalloc.c: Moved here from sysdeps/common/. * lib/error.c: Moved here from sysdeps/common/. * include/glibtop/backend.h (glibtop_backend_open_func_t, glibtop_backend_close_func_t): First argument is now a `glibtop_server *'. (glibtop_backend_info): Added `glibtop_server *server'. (glibtop_open_backend_l): Returns `glibtop_backend *', first argument is `glibtop_client *' and added `GError **'. * include/glibtop/close.h (glibtop_close_s, glibtop_close_p): First argument is now a `glibtop_server *'. * include/glibtop/error.h (*): First argument is now a `glibtop_server *'. * include/glibtop/errors.h: Switched this to use GError. 2000-11-20 Martin Baulig * glibtop.h (glibtop_server_info): New type. (glibtop): Added `glibtop_server_info *info', moved `ncpu', `features', `sysdeps', `required' and `wanted' info glibtop_server_info. 2000-11-20 Martin Baulig * autogen.sh: Use gnome-common. * configure.in: Require glib HEAD. 2000-08-09 Szabolcs BAN * po/hu.po: Adding Hungarian translations. 2000-04-24 Martin Baulig Added `Process current working directory' feature (proc_cwd). * include/glibtop/proc_cwd.h: New file. * features.def: Added `proc_cwd'. * include/glibtop/sysdeps.h (glibtop_sysdeps): Added `proc_cwd'. * include/glibtop/union.h (glibtop_union): Added `proc_cwd'. * sysdeps/stub/proc_cwd.c: New file. * sysdeps/names/proc_cwd.c: New file. 2000-04-19 Pablo Saratxaga * configure.in (ALL_LINGUAS): added Catalan 2000-04-16 Valek Filippov * configure.in: Added russian translation. 2000-03-08 Alastair McKinstry * configure.in (ALL_LINGUAS): Added Irish (ga) translation. 2000-02-27 Martin Baulig * dtd/libgtop-backends.dtd: Added XML DTD for the `*.backend' files. 2000-02-27 Martin Baulig * dtd/: New directory. * dtd/libgtop-backend-info.dtd: This is a XML DTD for "backend info" XML files. In future, each backend will have such a xml file which contains information like a short description of the backend, its authors etc. * sysdeps/linux/backend-info.xml: New file. First version of such a "backend info" XML file as described above. 2000-02-27 Martin Baulig * libgtop-sysdeps.m4 (libgtop_have_sysdeps): Set this to "no" for all systems until I made up my mind how this'll work in future. 2000-02-24 Martin Baulig * include/glibtop/error.h (glibtop_error_r, glibtop_warn_r): Moved to sysdeps/common/error.c. (glibtop_error_io_r, glibtop_warn_io_r): Likewise. (glibtop_error, glibtop_warn): Moved the non-GNU-C version of them to sysdeps/common/error.c. (glibtop_error_io, glibtop_warn_io): Likewise. * sysdeps/common/error.c (glibtop_error_r, glibtop_warn_r): Moved here from include/glibtop/error.h. (glibtop_error_io_r, glibtop_warn_io_r): Likewise. (glibtop_error, glibtop_warn): Moved the non-GNU-C version of them here from include/glibtop/error.h. (glibtop_error_io, glibtop_warn_io): Likewise. 2000-02-23 Martin Baulig * autogen.sh: Call it "GNOME Portable System Access Library". * LIBGTOP-VERSION (LIBGTOP_VERSION_SUFFIX): Set this to `-snap' so the tarball will be called `libgtop-1.1.6-snap.tar.gz'. 2000-02-23 Martin Baulig Fix some True64 issues which were reported from Aron Griffis. * libgtop-sysdeps.m4 (GNOME_LIBGTOP_TYPES_PRIVATE): Check for and use AC_LIBGTOP_CHECK_TYPE, not AC_CHECK_TYPE. * include/glibtop/global.h: #include . * ltmain.sh: Added this from libtool 1.3.4 (only used on Solaris). 2000-02-22 Martin Baulig * lib/init-backends.c (glibtop_backend_*): Removed external declaration. * lib/open-backends.c (backend_init_table): New static variable. This maps backend names to their `glibtop_backend_info' structure. (glibtop_open_backend_l): Make this working for the non-gmodule case. * lib/close.c (close_backend): Likewise. * acconfig.h (LIBGTOP_HAVE_SYSDEPS): Added. (LIBGTOP_NEED_SERVER): Added. 2000-02-22 Martin Baulig * ltconfig: Added this to CVS and hacked it to use `$CC -shared' to create shared libraries on Solaris. * automake.sh: Don't run libtoolize on Solaris but use the CVS version instead. 2000-02-16 Martin Baulig * configure.in (LIBGTOP_LIBS): Add `-lgtop_backend_sysdeps' and `-lgtop_backend_common' if dynamic linking does not work. * libgtop-sysdeps.m4 (GNOME_LIBGTOP_DYNLINK): New macro to check whether dynamic linking works. (libgtop_use_gmodule): Set this to `yes' or `no' depending on whether dynamic linking of the backends work on the current system. (LIBGTOP_USE_GMODULE): New automake conditional. * acconfig.h (LIBGTOP_USE_GMOUDLE): Define this when dynamic linking of the backends work on the current system. 2000-02-21 Martin Baulig * include/glibtop/interfaces.h (GLIBTOP_STRATEGY_FLAGS_MASK): New constant. 2000-02-20 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.1.6, binary age 0, interface age 0. 2000-02-16 Martin Baulig Released LibGTop 1.1.5 "Sidney". 2000-02-16 Martin Baulig * sysdeps/sun4: This is very old and obsolete so we won't include it in the tarballs any longer. 2000-02-16 Martin Baulig * xml.m4: Check for `xmlDocGetRootElement' to make sure we have a recent enough libxml. 2000-02-13 Martin Baulig * configure.in (AC_LIBTOOL_DLOPEN): Added. * lib/sysdeps-init-linux.c (glibtop_sys_siglist): Added labels. * lib/sysdeps-init-freebsd.c (glibtop_sys_siglist): Provide actual implementation. 2000-02-06 Martin Baulig * lib/sysdeps-init-*.c (glibtop_sys_siglist): Moved here from the sysdeps directories. * sysdeps/*/siglist.c: Removed. 2000-02-06 Martin Baulig * glibtop.h (glibtop): Removed `method', `server_command', `server_host', `server_user' and `server_rsh'. Added `glibtop_parameter _param' field and moved `error_method' there. * include/glibtop/parameter.h (glibtop_parameter): New structure. (GLIBTOP_PARAM_METHOD, GLIBTOP_PARAM_COMMAND): Removed. (GLIBTOP_PARAM_HOST, GLIBTOP_PARAM_PORT): Removed. (GLIBTOP_PARAM_REMOTE_USER, GLIBTOP_PARAM_PATH_RSH): Removed. (GLIBTOP_PARAM_NCPU, GLIBTOP_PARAM_OS_VERSION_CODE): Added. 2000-02-06 Martin Baulig * include/glibtop/ppp.h (glibtop_get_ppp): Removed the `lockfile' argument; we now use a configure check to determine the modem lockfile. * include/glibtop/error.h (GLIBTOP_ERROR_NEED_MODEM_LOCKFILE): Removed this now obsolete error constant again. * configure.in (--with-modem-lockfile): New configure parameter to manually specify the modem lockfile. (LIBGTOP_MODEM_LOCKFILE): Define this to be a printf-format string for the modem lockfile; takes the interface number as argument. 2000-02-05 Martin Baulig * include/glibtop/interfaces.h (glibtop_ipv6_scope): New enum for the IPv6 address scope. 2000-01-31 Yuan-Chung Cheng * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS. 2000-01-29 Martin Baulig * structures.def (glibtop_ifaddr): Added. 2000-01-24 Martin Baulig * include/glibtop/netinfo.h (glibtop_netinfo): `address' and `subnet' are now arrays of GLIBTOP_IFADDR_LEN u_int8_t values. (glibtop_get_netinfo): `transport' is now `u_int64_t' and not `unsigned' to make it work with `GLIBTOP_TRANSPORT_ALL'. * include/glibtop/limits.h (GLIBTOP_IFADDR_LEN): New constant. This is the length of a network interface address in bytes. 2000-01-24 Martin Baulig * libgtop-sysdeps.m4 (GNOME_LIBGTOP_TYPES_PRIVATE): New macro. This is the same than `GNOME_LIBGTOP_TYPES' but also checks for `u_int8_t' and `int8_t' and it doesn't force people to put this in their acconfig.h. * configure.in: Use GNOME_LIBGTOP_TYPES_PRIVATE instead of GNOME_LIBGTOP_TYPES. 2000-01-23 Martin Baulig * lib/sysdeps-init-kernel.c: Load the "glibtop-backend-kernel" before "glibtop-backend-command" and "glibtop-backend-sysdeps". * libgtop-sysdeps.m4: "kernel" is now a backend and no longer a sysdeps port; we compile the normal "linux" sysdeps dir when we have it. * backends/Makefile.am: Only compile `server' and `sysdeps' directories if appropriate. 2000-01-22 Martin Baulig * include/glibtop/backend.h (_glibtop_backend_module): Added `extra_libs'. * configure.in (LIBGTOP_LIBS): Removed `-lgtop_sysdeps'. This is gmodule loaded from the backend open function. * lib/init.c (glibtop_init_s): Don't call glibtop_open_s () here. * init-backend.c: Added support for a "ExtraLibs" section in the backend description file. 2000-01-22 Martin Baulig * include/glibtop/ppp.h (glibtop_get_ppp): Added `use_isdn' and `lockfile' arguments. When `use_isdn' is TRUE, we return ISDN statistics, otherwise `lockfile' is expected to be the modem lockfile and we return PPP statistics for that Modem. Note that for Modem statistics, you need to set both `device' and `lockfile' for some sysdeps ports; so if you have more than one PPP connection active and want to get statistics on the second one you need to set `device' to 1 and `lockfile' to the correct modem lockfile. * include/glibtop/error.h (GLIBTOP_ERROR_NEED_MODEM_LOCKFILE): New error constant; this is returned when you call glibtop_get_ppp () without a modem lockfile and the current sysdeps port requires it. 2000-01-18 Martin Baulig * lib/sysdeps-init-osf1.c: New file. Added sysdeps initialization code from DEC OSF/1. 2000-01-16 Martin Baulig We now use `@LIBGTOP_PACKAGE@' as the translation domain so installed `libgtop-1.1.mo' files won't conflict with the ones from LibGTop 1.0 and you can keep both versions installed. * po/Makefile.in.in.in: New file. This is a modified version of the usual `Makefile.in.in' which is created by gettextize; we copy this over `Makefile.in.in' in autogen.sh after gettextize'ing. * autogen.sh: Copy `po/Makefile.in.in.in' over `po/Makefile.in.in' after running `macros/autogen.sh'. * configure.in (LIBGTOP_PACKAGE): AC_SUBST and AC_DEFINE this. * include/glibtop/global.h (_): Use `LIBGTOP_PACKAGE' as our translation domain. 2000-01-16 Martin Baulig * LIBGTOP-VERSION (LIBGTOP_VERSION_SUFFIX): Added this so you can have your tarballs called `libgtop-1.x.y-snap.tar.gz' or whatever. This only affects the `VERSION' variable and thus how the resulting tarball will be called, but not `LIBGTOP_VERSION_CODE' etc. * Makefile.am: Make `aclocal.m4' also depend on `LIBGTOP-VERSION' when in maintainer-mode. 2000-01-15 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.1.5, binary age 0, interface age 0 and increase LIBGTOP_SERVER_VERSION to 53. 2000-01-14 Martin Baulig Released LibGTop 1.1.4 "Earthquake". 1999-01-13 Yuri Syrota * configure.in: Added Ukrainian (uk) to ALL_LINGUAS 2000-01-13 Martin Baulig * include/glibtop/compat_10.h: Add compatibility #defines for `GLIBTOP_XCPU_TOTAL', `GLIBTOP_XCPU_USER', `GLIBTOP_XCPU_NICE', `GLIBTOP_XCPU_SYS', `GLIBTOP_XCPU_IDLE' and `GLIBTOP_XCPU_FLAGS' * LIBGTOP-VERSION: Set version number to 1.1.4, binary age 0, interface age 0 and increased LIBGTOP_SERVER_VERSION to 52. 2000-01-13 Martin Baulig * lib/sysdeps-init-freebsd.c: New file. * lib/sysdeps-init-kernel.c: New file. * lib/sysdeps-init-linux.c: New file. * lib/sysdeps-init-solaris.c: New file. * lib/sysdeps-init-stub-suid.c: New file. * lib/sysdeps-init-stub.c: New file. * lib/open.c (glibtop_open_l): Call glibtop_init_backend () and _glibtop_open_sysdeps () here. * lib/init.c (glibtop_init_s): Call `_glibtop_open_sysdeps'. * include/glibtop/open.h (_glibtop_open_sysdeps): Declare this when we are _IN_LIBGTOP. * configure.in (sysdeps_name): Define and AC_SUBST this. (sysdeps_init_file): Define and AC_SUBST this to `sysdeps-init-${sysdeps_name}.c'. * libgtop-sysdeps.m4 (GNOME_LIBGTOP_SYSDEPS): Define and AC_SUBST `libgtop_sysdeps_name'. 2000-01-12 Martin Baulig * include/glibtop/errors.h (GLIBTOP_ERROR_NO_BACKEND_OPENED): New error constant. * lib/lib.pl (glibtop_get__l): Don't dump core when there is no backend opened, but return GLIBTOP_ERROR_NO_BACKEND_OPENED. * include/glibtop/backend.h (glibtop_backend): Added `_priv_module' pointer (type glibtop_backend_module). Made the `info' field const since this now points to gmodule loaded memory (glibtop_backend_entry): Made the `info' field const since it points to gmodule loaded memory. * lib/close.c (glibtop_close_r): Close all currently opened backends. 2000-01-12 Martin Baulig * include/glibtop/backend.h (glibtop_backend_entry): New type. (glibtop_backend_module): New private type. * lib/backend.c (glibtop_register_backend): This now takes a `glibtop_backend_entry' argument, not a `glibtop_backend_info' one. (glibtop_backend_by_id): Return a `glibtop_backend_entry' type, not a `glibtop_backend_info' one. (glibtop_backend_by_name): Likewise. * lib/init-backends.c: If we have libxml, read all `.backend' files in $(LIBGTOP_BACKEND_DIR), XML parse them and register them via `glibtop_backend_register'. This builds a list of all currently supported backends without actually loading them into memory. * lib/open-backend.c (glibtop_open_backend_l): GModule load the backend if it's not already in memory. 2000-01-12 Martin Baulig * lib/init.c (glibtop_init_s): Comment out `_glibtop_init_hook_s'. * configure.in: We now require libxml. (LIBGTOP_LIBS): Remove all backend libraries. (LIBGTOP_EXTRA_LIBS): Add $(LIBGTOP_XML_LIB) here. * configure.in: Don't check for -lXau any longer. * configure.in (LIBGTOP_BACKEND_DIR): Define this to be `$(datadir)/libgtop/backends' and AC_SUBST it. * libgtopConf.sh.in (LIBGTOP_BACKEND_DIR): Added. 2000-01-12 Martin Baulig * xml.m4: New file to check for libxml. * acconfig.h (HAVE_LIBXML): Define this if we have libxml. * configure.in: Call `LIBGTOP_XML_HOOK' from `xml.m4' and add libxml libraries to `LIBGTOP_EXTRA_LIBS' when found. 2000-01-12 Martin Baulig * lib/sysdeps.c (_glibtop_init_hook_s): This has been moved into the sysdeps backend. * configure.in (LIBGTOP_LIBS): Added `-lgtop_backend_common'. * lib/init-backends.c (glibtop_init_backends): Initialize `glibtop_backend_common' backend. * backends/common/: New directory. 2000-01-10 Martin Baulig * src/daemon/: Removed everything in this directory. This has been obsoleted by the new server code in backends/server. 2000-01-09 Martin Baulig * include/glibtop/global.h: Unconditionally #include . 2000-01-02 Martin Baulig * include/glibtop/errors.h (GLIBTOP_ERROR_DEMARSHAL_ERROR): New error constant. * src/Makefile.am: Disable compilation of the `daemon' directory. * include/glibtop/command.h: Removed. * include/glibtop/version.h: Removed. 2000-01-02 Martin Baulig * include/glibtop/call-vector.pl: All functions in the `glibtop_call_vector' now take an additional `glibtop_backend *' argument. 2000-01-01 Martin Baulig * backends/: New directory. * backends/server/: New directory. * backends/sysdeps/: New directory. * include/glibtop/backend.h: New file. * include/glibtop/call-vector.h.in: New file. Template file for `call-vector.h'. * include/glibtop/call-vector.pl: New file. Creates 'call-vector.h' from `call-vector.h.in'. * include/glibtop/errors.h (GLIBTOP_ERROR_NO_SUCH_BACKEND): New error constant. (GLIBTOP_ERROR_NOT_IMPLEMENTED): New error constant. * include/glibtop/limits.h (GLIBTOP_BACKEND_NAME_LEN): New constant. * glibtop-server-private.h (glibtop_server_private): Added `GSList *backend_list' and removed `input', `output', `socket' and `pid'. * lib/command.c: Removed. Moved to `backends/server/'. * lib/read.c: Removed. Moved to `backends/server/'. * lib/read_data.c: Removed. Moved to `backends/server/'. * lib/write.c: Removed. Moved to `backends/server/'. * include/glibtop/read.h: Removed. * include/glibtop/read_data.h: Removed. * include/glibtop/write.h: Removed. 1999-12-26 Martin Baulig * libgtop-sysdeps.m4 (LIBGTOP_CHECK_SYSDEPS_DIR): New macro; moved check for the sysdeps directory here. (--with-sysdeps-dir): New hacker mode command line option to manually override the sysdeps dir. Use of this option is highly deprecated; I only added it to be able to do `stub_suid' hackings on my GNU/Linux machine. 1999-12-23 Martin Baulig Removed all remote communication support from LibGTop. * include/glibtop/gnuserv.h: Removed. * sysdeps/common/gnuslib.c: Removed. * src/daemon/Makefile.am: Don't build the `libgtop_daemon' binary any longer. * src/daemon/server_config.pl: Removed. * src/daemon/server_config.h.in: Removed. * src/daemon/server_config.h: Removed. 1999-12-22 Martin Baulig * lib/errors.c (glibtop_get_errno_l): New global function to return `server->glibtop_errno'. (glibtop_clear_errno_l): New global function to return `server->glibtop_errno' and set it back to 0. * include/glibtop/errors.h (GLIBTOP_ERROR_SERVER_COMM_FAILURE): New error constant. (GLIBTOP_ERROR_NO_SUCH_PROCESS): New error constant. (GLIBTOP_ERROR_NO_KERNEL_SUPPORT): New error constant. (GLIBTOP_ERROR_INCOMPATIBLE_KERNEL): New error constant. * lib/lib.pl: For functions with a `retval' return type, set `server->glibtop_errno' to the error code on error or to zero on success. * glibtop.h (glibtop): Added `glibtop_errno' field. 1999-12-19 Martin Baulig * include/glibtop/glib-arrays.h: New file. * lib/glib-arrays.c: New file. (glibtop_get_proclist_as_array_l): New function. (glibtop_get_proc_args_as_array_l): New function. (glibtop_get_proc_map_as_array_l): New function. (glibtop_get_mountlist_as_array_l): New function. 1999-12-19 Martin Baulig * glibtop-server-private.h: New file. This is a private header file which defines `struct _glibtop_server_private'. * glibtop.h (glibtop): Added `glibtop_server_private *_priv' field and moved some private fields there. 1999-12-12 Martin Baulig * include/glibtop/procargs.h (glibtop_proc_args): Removed. (glibtop_get_proc_args_*): This now takes a `glibtop_array' parameter instead of a `glibtop_proc_args one and returns a `char **'. 1999-12-13 Martin Baulig * configure.in (LIBGTOP_LIBS): Put `-lgtop' after `-lgtop_common'. 1999-12-19 Martin Baulig * include/glibtop/errors.h: New file. We define `GLIBTOP_ERROR_*' error constants here. * lib/errors.c: New file. (glibtop_error_strings): Array of error messages. (glibtop_get_error_string_l): Get error message. * include/glibtop/parameter.h: Added `GLIBTOP_PARAM_REMOTE_USER' and `GLIBTOP_PARAM_PATH_RSH'. * lib/parameter.c (glibtop_get_parameter_l): Changed return value from `size_t' to `ssize_t' and let it return an error constant. (glibtop_get_parameter_size_l): New function. (glibtop_set_parameter_l): Changed return value from `void' to `int' and let it return an error constant on error. * structures.def (glibtop_sysdeps): Added. 1999-12-12 Martin Baulig All functions which return an array now take a `glibtop_array *array' parameter instead of a `glibtop_ *buf' one. For compatibility, we typedef the corresponding `glibtop_'s to `glibtop_array' in . This has the advantage that scripting languages like Guile with an array implementation which stores the length of an array in the array don't need the `glibtop_array' parameter at all any longer. We'll also add convenient functions which return GPtrArray's here. * include/glibtop/proclist.h (glibtop_proclist): Removed. (glibtop_get_proclist_*): This now takes a `glibtop_array' parameter instead of a `glibtop_proclist' one. * include/glibtop/procmap.h (glibtop_proc_map): Removed. (glibtop_get_proc_map_*): This now takes a `glibtop_array' parameter instead of a `glibtop_proc_map' one. * include/glibtop/mountlist.h (glibtop_mountlist): Removed. (glibtop_get_mountlist_*): This now takes a `glibtop_array' parameter instead of a `glibtop_mountlist' one. * include/glibtop/interfaces.h (glibtop_interface_names): Removed. (glibtop_get_interface_names_*): This now takes a `glibtop_array' parameter instead of a `glibtop_interface_name' one. * include/glibtop/compat_10.h: New file. Contains some typedefs and #defines to keep compatibility until the big restructurement is completely done. 1999-12-12 Martin Baulig * include/glibtop/array.h: New file. 1999-12-11 Martin Baulig This is a larger source-incompatible commit, but it'll make it easier to write automatically generated code (for instance for scripting languages). Renamed all constants for the flags field to match the field names from the features.def and structures.def where this was not already the case. * include/glibtop/cpu.h: s/GLIBTOP_XCPU_/GLIBTOP_CPU_XCPU_/g. * include/glibtop/shm_limits.h: s/GLIBTOP_IPC_/GLIBTOP_SHM_LIMITS_/g. * include/glibtop/sem_limits.h: s/GLIBTOP_IPC_/GLIBTOP_SEM_LIMITS_/g. * include/glibtop/msg_limits.h: s/GLIBTOP_IPC_/GLIBTOP_MSG_LIMITS_/g. 1999-12-11 Martin Baulig * features.def: Use `string' instead of `str' as type name. 1999-12-05 Martin Baulig Moved all Guile code to the libgtop-bindings module. * sysdeps/guile/*: Removed. * sysdeps/guile/names/*: Removed. * libgtopConf.sh.in: Removed all guile variables. * configure.in: Don't check for guile any longer. 1999-12-05 Martin Baulig * lib/structures.pl: New script to create `structures.h' which will be used in language bindings code. 1999-12-05 Martin Baulig * features.def: Use `pointer()' as return value for functions returning an array of scalar values (such as `unsigned' etc.). * features.def: Use `array()' as return value for functions returning an array of structures. 1999-12-05 Martin Baulig * includes/glibtop/interfaces.h (glibtop_get_interface_names): Return array of `glibtop_interface' structures. (glibtop_interface): New structure. 1999-12-05 Martin Baulig * include/glibtop/limits.h (GLIBTOP_INTERFACE_LEN): New #define. (GLIBTOP_UNLIMITED): #define this to be `(~(u_int64_t)0)'. * glibtop.h (glibtop): Added `refcount' field. * lib/init.c (glibtop_server_ref, glibtop_server_unref): New functions to deal with refcounts. * structures.def: New file. This is used by the language bindings code to get the definitions of some of LibGTop's structures. 1999-11-28 Martin Baulig * include/glibtop/netload.h (glibtop_get_netload): Added `transport' and `protocol' argument to specify transport method and protocol. * include/glibtop/netinfo.h (glibtop_get_netinfo): Added `transport' argument to specify the transport method. 1999-11-28 Martin Baulig * include/glibtop/netinfo.h (glibtop_netinfo): Added `transport' field for the transport method. 1999-11-28 Martin Baulig Split netload into netload and netinfo. * include/glibtop/netinfo.h: New file. * include/glibtop/netload.h (glibtop_netload): Moved `if_flags', `mtu', `subnet' and `address' into the new `glibtop_netinfo'. * include/glibtop/sysdeps.h (GLIBTOP_SYSDEPS_NETINFO): Added. (glibtop_sysdeps): Added `netinfo. * include/glibtop/union.h (glibtop_union): Added `netinfo. * include/glibtop/command.h (GLIBTOP_CMND_NETINFO): Added. 1999-11-28 Martin Baulig * include/glibtop/interfaces.h (glibtop_get_interface_names): Added `instance' argument. 1999-11-28 Martin Baulig * lib/lib.pl: We now have a new, more extensible client/server communication model. Include `$(top_srcdir)/scripts/c_types.pl' here. 1999-11-21 Martin Baulig Added new feature to get a list of network interface names. * features.def: Added `interface_names' feature. * include/glibtop/interfaces.h: New file. * include/glibtop/sysdeps.h (GLIBTOP_SYSDEPS_INTERFACE_NAMES): Added. (glibtop_sysdeps): Added `interface_names'. * include/glibtop/union.h (glibtop_union): Added `interface_names'. * include/glibtop/command.h (GLIBTOP_CMND_INTERFACE_NAMES): Added. 1999-11-21 Martin Baulig * include/glibtop/sysdeps.h (glibtop_init_func_t): Use `int' as return type, not `void'. * include/glibtop/proclist.h (GLIBTOP_KERN_PROC_PPID): On a suggestion from Sebastian Fischmeister added a way to return all children of a given process. 1999-11-02 Jesus Bravo Alvarez * configure.in: Added Galician (gl) to ALL_LINGUAS 1999-10-24 Martin Baulig * features.def: Use `retval' for the default retval. * include/glibtop/command.h (glibtop_command_h): Added `int *retval_ptr' parameter to return the retval from the sysdeps functions. * include/glibtop/*.h (glibtop_get_*, glibtop_init*): Changed the return value of all `glibtop_get__* ()' and all `glibtop_init__* ()' functions from void to int. * features.def: Reflect changes of the return values. * sysdeps/*/*.c: Reflect changes of the return values. 1999-10-24 Martin Baulig * acconfig.h (LIBGTOP_USE_GLIB_MALLOC): Added. * configure.in (--enable-glib-malloc): New configure parameter to use glib's malloc functions. * sysdeps/common/ChangeLog: New file. 1999-10-24 Martin Baulig The LibGTop examples have been moved into their own top-level module libgtop-examples. * examples/*: Removed. * configure.in: Removed all checks for the examples. * libgtop-sysdeps.m4: Removed --with-libgtop-examples parameter. * Makefile.am: Removed examples from the subdir list. 1999-10-24 Martin Baulig * libgtop-sysdeps.m4: Check for on *BSD* systems. 1999-10-19 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.1.3, binary age 0, interface age 0 and increased LIBGTOP_SERVER_VERSION to 51. This implies that we can now break as much compatibility as we want. 1999-10-19 Martin Baulig Released LibGTop 1.1.2 "Hardangervidda". 1999-10-18 Martin Baulig * RELNOTES-1.1.x: New file. We also track all changes since 1.0.x here. * NEWS: We start maintaining a NEWS file now :) * NEWS.old: Removed obsolete file. * TODO: Nuked it. We may need this file later ... 1999-10-17 Martin Baulig * configure.in (DL_LIB): Check for dlopen() and AC_SUBST this. 1999-10-17 Martin Baulig * configure.in: Fixed typedef syntax for glibtop-config.h. Thanks to Drazen Kacar for pointing this out. 1999-10-16 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.1.2, binary age 2, interface age 2. 1999-09-29 Martin Baulig * configure.in (libgtop_top_builddir): AC_SUBST this. 1999-09-27 Rodrigo Stulzer Lopes * configure.in: Added "pt_BR" to ALL_LINGUAS. 1999-09-22 Kjartan Maraas * configure.in: Added "da" to ALL_LINGUAS. 1999-09-19 Martin Baulig * libgtopConf.sh.in: Added MODULE_VERSION on Miguel's request (set it to "libgtop-@LIBGTOP_VERSION@"). 1999-09-18 Pablo Saratxaga * configure.in, po/pl.po: copied pl.po from stable CVS tree 1999-09-17 Martin Baulig * configure.in: Make it work if we have GNOME and the user gave use --without-gnome (fixes bug #1735). 1999-07-29 Martin Baulig * include/glibtop/error.h: Use G_GNUC_UNUSED. * configure.in (ENABLE_STATIC, ENABLE_SHARED): New automake conditionals. 1999-07-27 Martin Baulig * configure.in (LT_VERSION_INFO): Add `-release ${LT_RELEASE}'. This way you can have both 1.0.x and 1.1.x libraries under the same ${prefix}. 1999-07-27 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.1.1 binary age 1, interface age 1. 1999-07-11 Tomas Ogren * configure.in: Added sv to ALL_LINGUAS 1999-07-11 Tomas Ogren * sysdeps/names/procmem.c: Fixed a tyop 1999-06-22 Martin Baulig * configure.in: Some versions of Solaris require -lelf for -lkvm; added appropriate check for this situation. 1999-05-28 Martin Baulig * include/glibtop/sysdeps.h: Remove the `GLIBTOP_SYSDEPS_FEATURES' and `GLIBTOP_SYSDEPS_POINTER_SIZE' constants and let numbering start at zero for `GLIBTOP_SYSDEPS_CPU'. 1999-05-28 Martin Baulig * glibtop.h (GLIBTOP_MOUNTENTRY_LEN): Move this * include/glibtop/limits.h: here. 1999-05-26 Martin Baulig * configure.in (INCLUDES): Define `LIBGTOP_VERSION_CODE' here so we can use version conditionals in the sysdeps code. 1999-05-25 Martin Baulig * libgtop-sysdeps.m4: Make the I4B check work for NetBSD. 1999-05-15 Martin Baulig * libgtop-sysdeps.m4: Remove the `--enable-hacker-mode' requirement for the BSDI, Solaris and Digital Unix ports. 1999-05-13 Martin Baulig * libgtop-sysdeps.m4 (GLIBTOP_SOLARIS_RELEASE): Define this on Solaris; we use version codes like 270 for SunOS 5.7 and 251 for SunOS 2.5.1. 1999-05-12 Martin Baulig * glibtop-config.h: This is a new generated file which will be included from . We define things like `u_int64_t' and LIBGTOP_*_VERSION here so we can compile LibGTop applications with `libgtop-config --cflags`. * configure.in: Create glibtop-config.h. (GLIBTOP_*_INCS): Added `-I $(pkglibdir)/include'. * libgtop-config.h.in: Added `--cflags', `--libs' and `--extra-libs' parameter so you can now use LibGTop even in no-autoconf apps. * Makefile.am: Install `glibtop-config.h' in `$(pkglibdir)/include'. 1999-05-09 Drazen Kacar * configure.in, acconfig.h: Added checks for and 1999-05-09 Martin Baulig * doc: One should ship the documentation of a package together with the tarball, so I added this back. 1999-05-08 Martin Baulig * include/glibtop/limits.h (GLIBTOP_MAX_GROUPS): Define this here. * include/glibtop/procuid.h (GLIBTOP_MAX_GROUPS): Moved to limits.h. * features.def: We can use constants from here. 1999-05-08 Martin Baulig * libgtop-sysdeps.m4: Use the setgid sys server for Solaris. 1999-05-06 Martin Baulig * include/glibtop/sysdeps.h (glibtop_sysdeps): Added `pointer_size' which is the number of bits of a `void *'. 1999-05-03 Martin Baulig Set version number to 1.1.0. Also made a `LIBGTOP_STABLE_1_0' branch in CVS while development will go on here in the HEAD. * LIBGTOP-VERSION: Set version number to 1.1.0 binary age 0, interface age 0. Set LIBGTOP_SERVER_VERSION to 50. 1999-04-18 Tuomas J. Lukka * Add missing comma in sysdeps/names/proctime.c 1999-04-18 Tuomas J. Lukka * Add missing comma in sysdeps/names/cpu.c 1999-04-18 Martin Baulig Thanks to Drazen Kacar for pointing out that not all processors must be running all the time under Solaris, so we need to have some flag to find out which processors are running. * (glibtop_cpu): Added `xcpu_flags' bitmask of running processors. * (glibtop_proc_time): Added `xcpu_flags'. 1999-04-18 Martin Baulig * include/glibtop/limits.h: New file. (GLIBTOP_NCPU): Define this here and increase it to 64. 1999-03-30 Martin Baulig Added some new features. * (glibtop_uptime): Added `boot_time', boot time in seconds since the epoch. * (glibtop_proc_state): Changed `state' from char to unsigned. `uid' and `gid' are effective uid and gid; added comment. Added `ruid' and `rgid' for guaranteed-to-be-correct real uid/gid. For SMP systems: added `has_cpu', `processor' and `last_processor'. * (glibtop_proc_uid): Added suid, sgid, fsuid, fsgid, ngroups, groups. * (glibtop_proc_segment): Added start_data, end_data, start_brk, end_brk, start_mmap, arg_start, arg_end, env_start, env_end. * include/glibtop/procstate.h: Define some constants for the `state' field of glibtop_proc_state. * include/glibtop/prockernel.h: Define some constants for the `k_flags' field of glibtop_proc_kernel. 1999-03-24 Martin Baulig * configure.in: Check for getloadavg () and swapctl () for Solaris. 1999-03-23 Martin Baulig * glibtop.h (glibtop): Added `wanted'. Applications can set the features they are interested in here. This way we don't waste CPU getting expensive data that aren't really needed. * LIBGTOP-VERSION: This breaks backward compatibility and also added new functions; set binary age and interface age to 0. 1999-03-21 Martin Baulig Added a new sysctl () interface to the Linux Kernel. * kernel/sysctl: Imported. * libgtop-sysdeps.m4: If `--enable-hacker-mode' is given, check for my new sysctl () interface. 1999-03-20 Martin Baulig Removed all traces of my old table () Linux kernel hack. * kernel: Removed. * sysdeps/kernel: Removed. * libgtop-sysdeps.m4: Don't check for table (); it does not exist any longer. 1999-03-19 Martin Baulig This is *untested* - please read "sysdeps/freebsd/ChangeLog" ! * libgtop-sysdeps.m4: Use the `freebsd' sysdeps directory for BSDI as well if the `--enable-hacker-mode' parameter was given. 1999-03-18 Martin Baulig * LIBGTOP-VERSION: Set version number to 1.0.2 binary age 1, intergace age 1. 1999-03-17 Martin Baulig Imported first version of my Solaris port. * configure.in: Check for `kstat_open' in `-lkstat'. * libgtop-sysdeps.m4: Recognize the `solaris' sysdeps directory when the `--enable-hacker-mode' parameter was given. 1999-03-01 Martin Baulig Released LibGTop 1.0.1. * LIBGTOP-VERSION: Set version number to 1.0.1 binary age 0, interface age 0. 1999-03-01 Martin Baulig * configure.in (LIBGTOP_LIBS): Move `-lgtop_common' last to make it work with static-only libs. Thanks to Roderik Muit for pointing this out. (PERL): First check for `perl5', then for `perl'. Thanks again to Roderik Muit. 1999-02-24 Martin Baulig Released LibGTop 1.0.0. * LIBGTOP-VERSION: Set version number to 1.0.0 binary age 0, interface age 0. * configure.in: Require GLIB >= 1.2.0. 1999-02-23 Martin Baulig Released LibGTop 0.100.0. Make the copyright of LibGTop be the GNU General Public License. * LIBGTOP-VERSION: Set version number to 0.100.0 binary age 0, interface age 0. * copyright.txt: Set the year to 1998-99 and pretty-format it a little bit. Same in all C source and header files. 1999-02-21 Martin Baulig * configure.in (LIBGTOP_*_INCS): Define `HAVE_GLIBTOP_MACHINE_H' if appropriate. 1999-02-19 Martin Baulig Released LibGTop 0.99.9. * LIBGTOP-VERSION: Set version number to 0.99.9 binary age 0, interface age 0. * include/glibtop/error.h: Don't include . * sysdeps/common/error.c: Use `int' not `gint'. * misc/porting-libgtop.txt: Added a few instructions on how to port LibGTop to Solaris. * Replace all __BEGIN_DELCS with LIBGTOP_BEGIN_DECLS and all __END_DECLS with LIBGTOP_END_DECLS; remove all __P macros and use real function prototypes. 1999-02-18 Martin Baulig * include/glibtop/*.h: Use glib-like function prototypes instead of "extern __P((args))". * sysdeps/common/error.h: Replaced inline with static. 1999-02-18 Martin Baulig * */*.awk: Replaced all awk scripts with perl scripts since it is more likely that people have a working perl interpreter than GNU awk on their system. 1999-02-18 Martin Baulig * sysdeps/common/error.c (glibtop_error_r, glibtop_warn_r): Define them as G_INLINE_FUNC in if possible. (glibtop_error_io_r, glibtop_warn_io_r): Likewise. (glibtop_error_vr, glibtop_warn_vr): New functions taking a va_list. (glibtop_error_io_vr, glibtop_warn_io_vr): New functions taking an errno an a va_list. 1999-02-17 Martin Baulig Released LibGTop 0.99.8. 1999-02-16 Martin Baulig * examples/Makefile.am, lib/Makefile.am, src/daemon/Makefile.am, sysdeps/common/Makefile.am, sysdeps/guile/Makefile.am, sysdeps/guile/names/Makefile.am, sysdeps/kernel/Makefile.am, sysdeps/linux/Makefile.am, sysdeps/names/Makefile.am, sysdeps/osf1/Makefile.am, sysdeps/stub/Makefile.am, sysdeps/stub_suid/Makefile.am, sysdeps/sun4/Makefile.am: Initialize INCLUDES to `@INCLUDES@' to make it clear that it is set in configure.in. It is ok to add things there, but you must not remove the `@INCLUDES@'. 1999-02-15 Jeff Garzik * examples/Makefile.am, lib/Makefile.am, src/daemon/Makefile.am, sysdeps/common/Makefile.am, sysdeps/guile/Makefile.am, sysdeps/guile/names/Makefile.am, sysdeps/kernel/Makefile.am, sysdeps/linux/Makefile.am, sysdeps/names/Makefile.am, sysdeps/osf1/Makefile.am, sysdeps/stub/Makefile.am, sysdeps/stub_suid/Makefile.am, sysdeps/sun4/Makefile.am: Removed hardcoded gcc arguments from CFLAGS. * include/glibtop/error.h: Added FIXME comment about varargs macros breaking Sun cc compilation. 1999-02-12 Martin Baulig Thanks to Frederic Devernay for pointing out that we need to define __BEGIN_DECLS and __END_DECLS when not using GNOME. * configure.in: Define `WITHOUT_GNOME' if appropriate. * include/glibtop/global.h: Define __BEGIN_DECLS and __END_DECLS when WITHOUT_GNOME not when _IN_LIBGTOP. 1999-02-12 Martin Baulig * include/glibtop/global.h: Applied patch from Frederic Devernay; __BEGIN_DECLS and __END_DECLS are only defined inside _IN_LIBGTOP. 1999-02-10 Martin Baulig * configure.in (program_invocation_name): Check whether we need to declare this; some libc5 systems define that symbol but do not declare it in any header file. 1999-02-10 Martin Baulig * libgtop.spec.in, libgtop.spec: Replaced libgtop.spec with with libgtop.spec.in, so libgtop.spec is now a generated file. 1999-02-05 Martin Baulig * include/glibtop/global.h: Enclose some of the stuff in this file in `#ifdef _IN_LIBGTOP'. 1999-02-04 Martin Baulig * include/glibtop/global.h (_): Use dgettext (), not gettext (). 1999-01-23 Martin Baulig * libgtopConf.sh.in (LIBGTOP_DATADIR): New variable. 1999-01-06 Martin Baulig * libgtop-sysdeps.m4: Always enable SMP support for Linux. 1999-01-03 Martin Baulig Released LibGTop 0.99.2. 1999-01-05 Martin Baulig * libgtop.spec: Always build SMP support; binary packages should contain all possible features. * configure.in: LibGTop will now require GLIB >= 1.1.12. 1999-01-05 Martin Baulig * configure.in: Make it abort if the `dc' utility is not installed. 1999-01-03 Martin Baulig Released LibGTop 0.99.1. 1998-12-25 Martin Baulig * configure.in (LIBGTOP_INCS): Define `HAVE_LIBGTOP_SMP' if SMP support was enabled. 1998-12-22 Yukihiro Nakai * configure.in (ALL_LINGUAS): Added `ja'. 1998-12-18 Martin Baulig * Makefile.am: Applied patch from Edward Jason Riedy to use '#' as separator in sed commands. 1998-12-15 Martin Baulig Released LibGTop 0.99.0 which is a feature-freezed version for GNOME 1.0. 1998-12-09 Martin Baulig * configure.in: We need to define LIBSUPPORT and SUPPORTINCS under all circumstances as it is in gnome-libs. * include/glibtop/procargs.h (glibtop_get_proc_args): Make the return value a `char *' instead of a `const char *'. 1998-12-09 Martin Baulig * LIBGTOP-VERSION: Set version number to 0.29.1. 1998-12-09 Martin Baulig * libgtop-sysdeps.m4: Moved here from the macros directory, formerly known as `macros/gnome-libgtop-sysdeps.m4'. (--enable-hacker-mode): New command line parameter to configure, enables building of unstable sysdeps directories. (LIBGTOP_HACKER_TESTS): New macro to check for unsafe things when hacker mode was enabled. 1998-12-06 Martin Baulig * configure.in: Make it abort if GNOME cannot be found and the --without-gnome parameter was not given. 1998-12-03 Martin Baulig * LIBGTOP-VERSION (LIBGTOP_VERSION_CODE): Pipe the expression through `dc' so we get a real number. 1998-12-03 Martin Baulig LibGTop now requires gettext >= 0.10.35. * intl: Removed &intl CVS alias. 1998-11-27 Martin Baulig * LIBGTOP-VERSION: Set version number to 0.29.0. * TODO: Add things that need to be done before Dec 15. This is basically a feature freeze for the C language part of LibGTop except for things that are marked with (***) in the TODO. 1998-11-20 Martin Baulig * sysdeps/common/mountlist.c: Applied a patch from Kenneth Stailey to make it work on OpenBSD. 1998-11-18 Martin Baulig * lib/open.c (glibtop_open_l): We need to set argv[0] in call to execl () to avoid a core dump in _init () on FreeBSD 3.0. 1998-11-11 Martin Baulig * include/glibtop/gnuserv.h (MCOOKIE_SCREEN): Don't define this any longer, we now use the port the daemon is listening on instead of a fixed screen. 1998-11-11 Martin Baulig * configure.in (--enable-debug): Define LIBGTOP_ENABLE_DEBUG if this parameter is given. (--enable-fatal-warnings): New parameter to make all warnings fatal; define `LIBGTOP_FATAL_WARNINGS' if given. * sysdeps/common/error.c (glibtop_error_r): Use abort () instead of exit () if LIBGTOP_ENABLE_DEBUG. (glibtop_error_io_r): Likewise. (glibtop_warn_r): Call abort () if LIBGTOP_FATAL_WARNINGS. (glibtop_warn_io_r): Likewise. [NOTE: To get a core dump of the libgtop_server, you need to remove all suid/sgid bits and invoke it as a priviledged user.] 1998-11-08 Raja R Harinath * Makefile.am (support): Don't build if not BUILD_GNOME_SUPPORT. 1998-11-02 Martin Baulig * include/glibtop/parameter.h: Added `GLIBTOP_PARAM_REQUIRED'. * lib/parameter.c (glibtop_set_parameter_l): It's no longer allowed to set GLIBTOP_PARAM_FEATURES. (glibtop_get_parameter_l): You can use `GLIBTOP_PARAM_REQUIRED' to read server->required and ... (glibtop_set_parameter_l): ... set it here. 1998-10-26 Martin Baulig Added `Network Load' feature (netload). * include/glibtop/netload.h: New file. * features.def: Added new feature `netload'. 1998-10-26 Martin Baulig Added `Command Line Parameters' feature (proc_args). * include/glibtop/proc_args.h: New file. * features.def: Added new feature `proc_args'. * lib/lib.awk: New type `unsigned' for the features.def which is `unsigned'. 1998-10-25 Martin Baulig Added PPP/ISDN support. * include/glibtop/ppp.h: New file. * features.def: Added new feature `ppp'. * acconfig.h (HAVE_I4B): Defined if we have the I4B package. (HAVE_I4B_ACCT): Defined if we have ISDN statistics with I4B. * misc: New directory. * misc/i4b_acct.txt: Read this file to get ISDN statistics on BSD. * lib/lib.awk: New type `ushort' for the features.def which is `unsigned short'. 1998-10-20 Martin Baulig * include/glibtop/proc_signal.h: Use a 2-element-array of type `u_int64_t' for all signal masks instead of just scalar numbers. This avoids problems on systems with more than 64 signals. If there is any operating system out there with even more than 128 signals, we can simply increase the number of array elements here. [NOTE for people porting libgtop: Please use all 64 bits of the `u_int64_t' and not just 32 - the signal number (as it is used in calls to kill () ...) should be a bit-index into this field; if a process ignores for instance signal 64, it has the 0-bit of sigcatch[1] set, if it ignores 63, this is the 63-bit of sigcatch[0] and so on ... The mapping between signal numbers and their names is done via the glibtop_sys_siglist [] field which should be declared in sysdeps/@sysdeps_dir@/siglist.c - see linux for an example. ] * features.def: It's now safe to put things like `loadavg[3]' here - the awk skripts should correctly threat this as an array. 1998-10-12 Martin Baulig * configure.in (GNOME_COMPILE_WARNINGS): Let the user enable compiler warnings. (--with-libgtop-guile): Make the default to build the guile interface if guile can be found. * Makefile.am (confexec_DATA): Install `feature.def' as `libgtop-features.def'. * libgtop.spec: Added `%{prefix}/lib/*.def' to the file list. 1998-10-11 Martin Baulig * configure.in: Don't create `guile/Makefile'. * Makefile.am (DIST_SUBDIRS): Removed. (SUBDIRS): Removed `guile'. * include/glibtop/*.h: Removed external delarations of all `glibtop_guile_*' functions that were formerly defined in sysdeps/guile/guile.c and sysdeps/guile/names/guile-names.c. 1998-10-11 Martin Baulig * sysdeps/guile/ChangeLog: New file. * LIBGTOP-VERSION: Set version number to 0.26.3. * libgtop.spec: Likewise. * Makefile.am (confexec_DATA): Added `features.def'. * libgtop-config.in: Added `--features-def-file' parameter to get pathname of installed `features.def' file. * perl: Removed everything in this subdirectory. This was only experimental. The real perl bindings for LibGTop are in the libgtop-bindings module. 1998-10-11 Martin Baulig * src/inodedb/Makefile.am: Removed @libs_xauth@ and -lgdbm from the _LDADD variables since libtool automatically gets the dependencies. * src/daemon/Makefile.am: Likewise. * examples/Makefile.am: Likewise. 1998-10-10 Martin Baulig * configure (LIBGTOP_EXTRA_LIBS): Added `GLIB_LIBS'. * perl/ChangeLog: New file. 1998-10-07 Martin Baulig * configure.in (ALL_LINGUAS): Added `de'. 1998-10-03 Martin Baulig * include/glibtop/global.h: Only include system header files if we are `_IN_LIBGTOP'. (G_GNUC_NORETURN, G_GNUC_CONST, G_GNUC_UNUSED): Added those definitions if we are `_IN_LIBGTOP'. 1998-09-29 Sung-Hyun Nam * configure.in (ALL_LINGUAS): add `ko' * po/ko.po: new file. 1998-09-27 Martin Baulig * configure.in: Make it really *require* GLIB >= 1.1.3. 1998-09-27 Raja R Harinath * configure.in: Move check for `-lresolv', `-lsocket' and `-lnsl' after X11 checks. 1998-09-27 Martin Baulig * configure.in: Do not even check for guile if it is disabled. 1998-09-12 Martin Baulig * include/glibtop/sysinfo.h: New file. This is used in guname to fetch as many information about the system as possible like detailed information about hardware etc. * configure.in (AM_PATH_GLIB): LibGTop now requires glib. 1998-09-09 Martin Baulig * include/glibtop/proctime.h (glibtop_proc_time): Added `xcpu_utime' and `xcpu_stime'. * sysdeps/linux/ChangeLog: New file. * glibtop.h (glibtop): Added `ncpu'. This is zero for single processor systems and the number of CPUs otherwise. * include/glibtop/cpu.h (glibtop_cpu): Added `xcpu_total', `xcpu_user', `xcpu_nice', `xcpu_sys' and `xcpu_idle'. (GLIBTOP_NCPU): #define this to 4. 1998-09-08 Martin Baulig * configure.in: Make the default to disable guile. 1998-08-30 Martin Baulig * LIBGTOP-VERSION (LIBGTOP_VERSION_CODE): Added. This is a numerical constant ("1.234.567" -> 1234567) to be used in C preprocessor conditionals. 1998-08-29 Martin Baulig * LIBGTOP-VERSION (LIBGTOP_INTERFACE_AGE, LIBGTOP_BINARY_AGE): Added. * configure.in (LIBGTOP_INTERFACE_AGE, LIBGTOP_BINARY_AGE): AC_SUBST. (LT_RELEASE, LT_CURRENT, LT_REVISION, LT_AGE): AC_SUBST. (LT_VERSION_INFO): Sets `-version-info' for libtool. * */Makefile.am: We now use the correct `-version-info' parameter for libtool. 1998-08-25 Martin Baulig * include/glibtop/command.h (glibtop_call): Third argument is now `const void *'. * include/glibtop/xmalloc.h (glibtop_free): Now taking a `const void *'. 1998-08-25 Martin Baulig * src/daemon/ChangeLog: New file. * sysdeps/sun4/ChangeLog: New file. * sysdeps/stub/ChangeLog: New file. * configure.in: Added check for `-lsocket'. (LIBGTOP_INCS): Added $(SUPPORTINCS). (INCLUDES): Added $(SUPPORTINCS). * acconfig.h: Added `NEED_DECLARATION_GETHOSTNAME', `NEED_DECLARATION_SETREUID', `NEED_DECLARATION_SETREGID' and `NEED_DECLARATION_GETPAGESIZE'. * includue/glibtop/global.h (): Include this. * lib/init.c (_init_server): Declared `static'. * lib/read_data.c: Added cast to `const void *' in calls to `recv' and `read' to avoid compiler warnings. * configure.in (INCLUDES): No longer using installed header files. 1998-08-23 Martin Baulig * features.def (mountlist): Using `int(fs_usage)'. 1998-08-21 Martin Baulig * ANNOUNCE-0.25: Released LibGTop 0.25 stable. 1998-08-18 Martin Baulig * LIBGTOP-VERSION: Set version number to 0.25.0. There is now really a feature freeze until it's released, bug fixes only ... * include/glibtop/procmap (glibtop_map_entry): Added `flags' and `filename' fields. * LIBGTOP-VERSION: Added `LIBGTOP_MICRO_VERSION'. * libgtopConf.sh.in: Likewise. * libgtopConf.sh.in: Added `LIBGTOP_EXTRA_LIBS'. * sysdeps/linux/procmap.c: Added implementation. 1998-08-17 Martin Baulig * include/glibtop/procmap (glibtop_map_entry): Added `offset' and `perm' fields. * src/inodedb: New directory. * src/inodedb/README: New file - read it to know what this is about. * configure.in (--with-libgtop-inodedb): New `configure' parameter. * include/glibtop/inodedb.h: New file. * sysdeps/common/inodedb.c: New file. 1998-08-17 Martin Baulig * LIBGTOP-VERSION: Released libgtop-0.25pre1. With this release I made what Linus calles a ``feature freeze'' until 0.25 is out. A Tarball and RPMS can be found at my site: `ftp://ftp.home-of-linux.org/pub/'. 1998-08-17 Martin Baulig * libgtop-conf.in: New file. 1998-08-16 Martin Baulig * include/glibtop/loadavg.h (glibtop_loadavg): Added new fields `nr_running', `nr_tasks', `last_pid'. * features.def (loadavg): Added new fields `nr_running', `nr_tasks', `last_pid'. 1998-08-12 Martin Baulig * include/glibtop/procsegment.h (glibtop_proc_segment): Using `text_rss', `shlib_rss', `data_rss' and `dirty_size' instead of `tsr', `lrs', `drs' and `dt'. New field `stack_rss'. * sysdeps/linux/procmem.c: Memory sizes now correctly in bytes. * sysdeps/linux/procsegment.c: Dito. * sysdeps/kernel/procsegment.c: Stack pages are reported via `stack_rss' and no longer count towards `data_rss' * kernel/table.h (table_proc_segment): Added `srs' field. * kernel/table21/module.c (TBL_PROC_SEGMENT): Added kernel support for this. * sysdeps/{linux, kernel, stub}/procmap.c: New files. 1998-08-11 Martin Baulig * guile/features.awk: New file. * guile/make-docbook.scm: Improved automatical generation of the documentation file `reference.sgml'. * guile/reference.sgml: This file is automatically generated, but many people have problems with it, so we add it to CVS. 1998-08-10 Martin Baulig * include/glibtop/procmap.h (glibtop_proc_map): New file. * features.def: Added definition of `proc_map'. * include/glibtop/proctime.h (glibtop_proc_time): Added new fields `rtime' and `frequency'. 1998-08-09 Martin Baulig * include/glibtop/prockernel.h (glibtop_proc_kernel): Renamed `wchan' field to `nwchan'; added `wchan' which is of type `char [40]'. * features.def: Changed format of this file to support multiple arguments to be passed to a function. * include/glibtop/proclist.h: `glibtop_get_proclist' now takes two more arguments `method' and `param'. 1998-08-07 Martin Baulig * sysdeps/freebsd/ChangeLog: New file. * src/server: Removed. * src/daemon/{server, version}.c: New files. * src/daemon/Makefile.am: Added `libgtop_server'; this has been moved here from `src/server' since it shares some source code files with the `libgtop_daemon'. * LIBGTOP-VERSION: Added `LIBGTOP_SERVER_VERSION'. * src/daemon/gnuserv.c, lib/open.c: Improved version check between client and server. * include/glibtop/output.h: Removed. * sysdeps/stub_suid: New directory. This is mainly used as example for people porting libgtop to other systems. * sysdeps/common/sysdeps_suid.c: New file. Defines `glibtop_init_hook_p'. * sysdeps/osf1/*.c (glibtop_init__s): New functions. (glibtop_init__p): New functions. 1998-08-07 Martin Baulig * glibtop.h (_glibtop): New fields `error_method', `sysdeps' and `required'. I added an improved error handling: the client can tell the libraries which fields are absolutely required for each features and if it fails to set one of them, this will create an error which is handled depending upon the `error_method'. * include/glibtop/open.h: Define some constants for `error_method'. * lib/sysdeps.c (glibtop_get_sysdeps_r): No longer actually call any sysdeps function, it now simply copies `server->sysdeps'. (_glibtop_init_hook_s): Added. List of functions to be called during `glibtop_init_s' set to `glibtop_init__s'. * include/glibtop/sysdeps.h (): Removed. (glibtop_init_func_t): New typedef. (_glibtop_init_hook_s): Added. * sysdeps/linux/*.c (glibtop_init__s): New functions. (glibtop_get_proc_*): Zero is now a valid pid. * sysdeps/kernel/*.c (glibtop_init__s): New functions. (glibtop_get_proc_*): Zero is now a valid pid. 1998-08-06 Martin Baulig * configure.in (HAVE_SOCKETS, HAVE_SOCKADDR_SUN_LEN): New checks. * include/glibtop/*.h: Using `GLIBTOP_GUILE' instead of `HAVE_GUILE' so one should be able to use libgtop without guile in an application even if guile is installed. * sysdeps/common/mountlist.c: Fixed some `xstrdup' problems. * lib/open.c: Now correctly reading server features for `GLIBTOP_METHOD_PIPE'. * sysdeps/freebsd: New directory. 1998-08-01 Martin Baulig * include/glibtop/swap.h (glibtop_swap): Added `pagein' and `pageout'. * kernel/table20/table.h: Removed. * kernel/table21/table.h: Removed. * kernel/table.h: Added. Things are now binary compatible between both kernel versions. 1998-07-30 Martin Baulig * acconfig.h (u_int64_t, int64_t): Added. * lib/lib.awk: Using correct `(1 << GLIBTOP_SYSDEPS_)' in call to `glibtop_init_r'. * configure.in (GNOME_LIBGTOP_TYPES): New check. * include/glibtop/*.h: Using `u_int64_t' instead of `unsigned long' and `long' to avoid problems when client is on a 32bit system and the server on a 64bit system. * sysdeps/common/gnuslib.c: Using `0xffffffff' instead of -1 as error code for inet_addr () since on 64bit systems, `inet_addr (some_error) != (INET_ADDR) -1'. * configure.in: Only defining guile stuff if we really have guile. 1998-07-29 Martin Baulig * guile/ChangeLog: New file. * features.def: New format - now includes type of return value and parameters. * lib/lib.awk: Changed to use new `features.def'. * sysdeps/guile/guile.awk: Dito; * sysdeps/guile/names/guile-names.awk: Dito. * libgtopConf.sh.in: Added `LIBGTOP_NAMES_LIBS', `LIBGTOP_NAMES_INCS', `LIBGTOP_GUILE_NAMES_LIBS', `LIBGTOP_GUILE_NAMES_INCS', `LIBGTOP_MAJOR_VERSION', `LIBGTOP_MINOR_VERSION' `LIBGTOP_VERSION', `libgtop_sysdeps_dir'. * acinclude.m4 (AC_LC_SYSDEPS): Removed since this has been replaced with `GNOME_LIBGTOP_SYSDEPS' long ago. * LIBGTOP-VERSION: New file. * */Makefile.am (INCLUDES): Removed; now defined in `configure.in'. * sysdeps/names/mountlist.c: New file. * lib/{init, open}.c (GTOP_SERVER): Renamed to `LIBGTOP_SERVER'. * configure.in (INCLUDES): Added definition. (libgtop_want_names): Always true; `libgtop_names.la' is now always created since some other programs rely upon it - but have to use `LIBGTOP_NAMES_LIBS' and `LIBGTOP_NAMES_INCS' to use it in your application. (libgtop_want_guile_names): Always true; but you have to use `LIBGTOP_GUILE_NAMES_LIBS' and `LIBGTOP_GUILE_NAMES_INCS' to use it in your application. (LIBGTOP_LIBS): Removed `-lgtop_names' and `-lgtop_guile_names'. (LIBGTOP_NAMES_LIBS): New variable. Use it to link your application with the names interface. (LIBGTOP_NAMES_INCS): New variable. Also #defines `GLIBTOP_NAMES' which is now required if your application wants to use the names interface. (LIBGTOP_GUILE_NAMES_LIBS): New variable. Use it to link your application with the guile names interface. (LIBGTOP_GUILE_NAMES_INCS): New variable. Also #defines `GLIBTOP_NAMES' and `GLIBTOP_GUILE_NAMES' which are now required if your application wants to use the guile names interface. 1998-07-24 Martin Baulig * sysdeps/common/mountlist.c (glibtop_get_mountlist_s): Added `all_fs' parameter. * sysdeps/{kernel, linux}/*.c: Replaced `glibtop_init_r' with `glibtop_init_s'. * sysdeps/sun4/open.c (glibtop_init_p): Removed `program_name' parameter. * sysdeps/osf1/glibtop_suid.h: New file. * sysdeps/osf1/glibtop_server.h: Now correctly using `(1 << GLIBTOP_SYSDEPS_*)' instead of `GLIBTOP_SYSDEPS_*'. * sysdeps/osf1/open_suid.c (glibtop_init_p): New function. * sysdeps/osf1/proc*.c: Done some more work here. 1998-07-23 Martin Baulig * include/glibtop/procsignal.h (glibtop_proc_signal): Changed type for `signal', `blocked', `sigignore' and `sigcatch' to `unsigned long long'. 1998-07-22 Martin Baulig * include/glibtop/fsusage.h: New file. * features.def: Added new feature `fsusage'. * sysdeps/common/fsusage.c (glibtop_get_fsusage_s): New function. (get_fs_usage): Declared as `static'. * sysdeps/names/fsusage.c: New file. * include/glibtop/mountlist.h: New file. * features.def: Added new feature `mountlist'. * sysdeps/common/mountlist.c (glibtop_get_mountlist_s): New function. (read_filesystem_list): Declared as `static'. * sysdeps/common/Makefile.am (libgtop_common_la_SOURCES): Added `fsusage.[ch]' and `mountlist.[ch]'. * include/glibtop/signal.h: New file. * sysdeps/{kernel, linux, osf1, sun4, stub}/siglist.c: New files. 1998-07-22 Martin Baulig * lib/init.c (glibtop_init_s): Added this init function of the sysdeps directory `libgtop_sysdeps.la'. * lib/open.c (glibtop_open_l): Unconditionally calling `glibtop_init_s' after server initialization. * lib/lib.awk: Removed references to functions from `libgtop_sysdeps_suid.la' to avoid undefined symbols. * sysdeps/stub/open.c (glibtop_open_s): Renamed this function from `glibtop_open_r'. * sysdeps/stub/close.c (glibtop_close_s): Renamed this function from `glibtop_close_l'. * sysdeps/kernel/open.c (glibtop_open_s): Renamed this function from `glibtop_open_r'. * sysdeps/kernel/close.c (glibtop_close_s): Renamed this function from `glibtop_close_l'. * sysdeps/linux/open.c (glibtop_open_s): Renamed this function from `glibtop_open_r'. * sysdeps/linux/close.c (glibtop_close_s): Renamed this function from `glibtop_close_l'. * sysdeps/osf1/Makefile.am (lib_LTLIBRARIES): Added `libgtop_sysdeps_suid.la' for the suid server. * sysdeps/osf1/open_suid.c (glibtop_open_p): New file. Contains all stuff that was formerly in `open.c'. * sysdeps/osf1/open.c: Moved everything from here into the new file `open_suid.c'. * sysdeps/osf1/open.c (glibtop_open_s): New function. * sysdeps/osf1/close_suid.c (glibtop_close_p): New file. * sysdeps/osf1/close.c (glibtop_close_s): New function. * sysdeps/osf1/*.c: Using the new init, open and close functions. * sysdeps/sun4/Makefile.am (lib_LTLIBRARIES): Added `libgtop_sysdeps_suid.la' for the suid server. * sysdeps/sun4/nosuid.c (glibtop_open_s, glibtop_close_s): New file * sysdeps/sun4/*.c: All functions now have the `_p' suffix. * sysdeps/common/Makefile.am (lib_LTLIBRARIES): Added `libgtop_suid_common.la' which only contains stuff that is needed in the suid parts. * sysdeps/common/xmalloc.c: Using `glibtop_error_io_r' instead of `glibtop_error_r'. * sysdeps/{kernel, linux, osf1, sun4, stub}/init.c: Removed. `glibtop_init_s' has been moved into `lib/init.c' since it's the same in all the sysdeps directories. * src/server/main.c: It is now an error to request a feature that does not need the suid server. * src/proxy: Removed. 1998-07-21 Martin Baulig * doc/ChangeLog: New file. * sysdeps/kernel/*.c: Using `glibtop_error_io_r' instead of `glibtop_error_r'. * sysdeps/kernel/proclist.c: Now using the table () function, too. This means that currently the table () function can fetch all information for libgtop and you can even unmount /proc ! 1998-07-18 Martin Baulig * lib/{init, open}.c: Added `GLIBTOP_METHOD_PIPE' again. * src/server/main.c: Removed gettext stuff. 1998-07-17 Martin Baulig * sysdeps/common/sysdeps.c (glibtop_get_sysdeps_r): Using library functions with '_l' prefix instead of directly calling sysdeps code with '_r' prefix. This is necessary for client/server mode. * lib/lib.awk (glibtop_get_*): Now correctly using `(1 << GLIBTOP_SYSDEPS_*)' instead of `GLIBTOP_SYSDEPS_*'. * sysdeps/sun4/proclist.c (glibtop_get_proclist_p): Added implementation of that feature. * sysdeps/sun4/proc_{uid, state}.c: Now working quite well. * sysdeps/sun4/proc_{mem, time, signal, kernel, segment}.c: Added some basic implementation; this isn't really working yet. * sysdeps/linux/sem_limits.c: Applied patch from Albert K T Hui for glibc 2.1. 1998-07-15 Martin Baulig * sysdeps/sun4/loadavg.h: New file. Imported from top 3.4. * sysdeps/sun4/uptime.c (glibtop_get_uptime_p): Added implementation of that function using glibtop_get_cpu (). * sysdeps/sun4/loadavg.c (glibtop_get_loadavg_p): Added implementation of that feature. * sysdeps/sun4/{shm_limits.c, msg_limits.c, shm_limits.c}: Added implementation of this features. 1998-07-14 Martin Baulig * src/daemon/server_config.h.in: Added some comments. * src/daemon/server_config.pl: New file. This is a script you can use to create `server_config.h'. It will query you for some configuration options. * configure.in (AC_PROG_AWK): Replaced this test with explicit test for `gawk' and `awk' since `mawk' doesn't work. 1998-07-14 Martin Baulig * src/daemon/gnuserv.c: Doing correct server initialization using `glibtop_set_parameter_l' and `glibtop_init_r'. * src/daemon/main.c: Removed call to `glibtop_init_r'. * lib/open.c (glibtop_open_l): We now call the open function of the sysdeps directory (glibtop_open_r) for server method `GLIBTOP_METHOD_DIRECT'. * sysdeps/{linux, sun4, stub}/open.c: No longer `memset' server to zero. * src/daemon/slave.c: New file. * src/daemon/*.c: Done some more work on the daemon. * sysdeps/common/gnuslib.c: Removed IPC stuff. * include/glibtop/gnuserv.h: Removed IPC stuff. * include/glibtop/command.h (glibtop_response_unit): Added typedef for `struct _glibtop_response_unit'. * lib/Makefile.am: Using `$(top_srcdir)/features.def' instead of `$(top_builddir)/features.def'. * sysdeps/guile/Makefile.am: Using `$(top_srcdir)/features.def' instead of `$(top_builddir)/features.def'. * sysdeps/guile/names/Makefile.am: Dito. * sysdeps/stub/*.c: changed suffix of all functions from '_s' to '_r'; see also ChangeLog entry from Jun 6. 1998-07-13 Martin Baulig * src/daemon/server_config.h: Removed from CVS. This is a config file which needs to be edited. * src/daemon/server_config.h.in: Added. This is just an example for `server_config.h'. 1998-07-13 Martin Baulig * glibtop.h: Fixed invocation of `glibtop_close_r'. * sysdeps/linux/procstate.c: Added missing `fclose'. * include/glibtop/gnuserv.h (UNIX_DOMAIN_SOCKETS): Defining. * include/glibtop/open.h (GLIBTOP_METHOD_UNIX): Added. * lib/init.c: Added new method `GLIBTOP_METHOD_UNIX'. * lib/open.c: Added support for Unix Domain Sockets. * lib/close.c: Now closing inet and unix connections. * lib/parameter.c (glibtop_set_parameter_l): You can now set the `method' and `features' fields. * src/daemon/server_config.h: New file. * src/daemon/{gnuserv.c, main.c}: More work on the server. 1998-07-10 Martin Baulig * src/Makefile.am (SUBDIRS): Removed `proxy'. This directory is considered obsolete and will be removed soon. 1998-07-06 Martin Baulig * sysdeps/common/mountlist.c: using functions from `xmalloc.c'. * sysdeps/common/error.c: all functions now accept NULL as `server' argument. * acconfig.h (AFS, MOUNTED_FREAD, MOUNTED_FREAD_FSTYP, MOUNTED_GETFSSTAT, MOUNTED_GETMNT, MOUNTED_GETMNTENT1, MOUNTED_GETMNTENT2, MOUNTED_GETMNTINFO, MOUNTED_LISTMNTENT, MOUNTED_VMOUNT, STAT_STATFS3_OSF1, STAT_READ_FILSYS, STAT_STATFS2_BSIZE, STAT_STATFS2_FSIZE, STAT_STATFS2_FS_DATA, STAT_STATFS4, STAT_STATVFS, STATFS_TRUNCATES_BLOCK_COUNTS): New macros. * configure.in: added GNOME_FILEUTILS_CHECKS. * sysdeps/common/{fsusage, mountlist}.[ch]: Imported from GNU Fileutils 3.16. * sysdeps/common/mountlist.c: using g_malloc, g_realloc and g_strdup. 1998-07-03 Martin baulig * macros/gnome-libgtop-sysdeps.m4: No longer use `glibtop_machine.h' for Linux. * sysdeps/linux/glibtop_machine.h: Removed. * sysdeps/guile/guile.awk: Using `scm_append' instead of `gh_append'. * sysdeps/guile/names/guile-names.awk: dito. * sysdeps/linux/*.c: Using code from stable branch again. * include/glibtop/parameter.h: New file. * lib/parameter.c: New file. * lib/{open, init}.c: Done some more work on server initialization 1998-06-21 Martin Baulig * perl/*: Added perl interface. * sysdeps/linux/cpu.c: Bug fix. * include/glibtop/global.h: Only including guile header files within libgtop. * configure.in (LIGBTOP_LIBS): Added `-lgtop'. * Makefile.am: Creating `perl/Makefile.PL' from `perl/Makefile.PL.in' and `perl/Libgtop.xs' using `perl/perl.awk'. 1998-06-18 Martin Baulig * sysdeps/linux/*.c: Reverted some stuff from 06-07-1998 since it was too buggy. * glibtop.h (_glibtop): New field `server_port'. * lib/xmalloc.c (glibtop_strdup_r): New function. * lib/gnuclient.c: Removed. * lib/{command, write, read}.c: Changed client <-> server interface to make less system calls. * src/daemon/main.c: Changed server side of interface. * include/glibtop/command.h (struct _glibtop_response): New structure to return data from the server to the client. 1998-06-14 Martin Baulig * glibtop.h (struct _glibtop): Added `socket' field. * include/glibtop/gnuserv.h: New file. Imported from xemacs 20.3. * sysdeps/common/gnuslib.c: New file. Imported from xemacs 20.3 * lib/gnuclient.c: New file. Imported from xemacs 20.3 * sysdeps/daemon/gnuserv.c: New file. Imported from xemacs 20.3 * sysdeps/daemon: New directory. * configure.in (LIBGTOP_LIBS, LIBGTOP_GUILE_LIBS): Added `$X_LIBS -lXau' when we have xauth. * acconfig.h (HAVE_XAUTH): New tag. * configure.in: Added check for `HAVE_XAUTH'. * sysdeps/common/error.c (glibtop_warn_r): New function - same as `glibtop_error_r', but doesn't call `exit'. (glibtop_error_io_r, glibtop_warn_io_r): New functions, display `strerror (errno)' together with message. * include/glibtop/global.h (TIME_WITH_SYS_TIME): including correct headers; (HAVE_UNISTD_H): Added conditional. Added `#include ' and `#include '. * acconfig.h (HAVE_LINUX_TABLE): New tag. * lib/lib.awk: New file. Creates `lib.c' depending upon `features.def'. * lib/.c: Removed. * sysdeps/guile/guile.awk: New file. Creates `guile.c' depending upon `features.def'. * sysdeps/guile/*.c: Removed. 1998-06-13 Martin Baulig * features.def: List of features for `guile-names.awk'. * sysdeps/guile/names/guile-names.awk: New file. Creates `guile-names.c' depending upon `features.def'. * sysdeps/guile/names/*.c: Removed. * kernel: New directory. Contains some kernel code to implement a new system call table () to fetch information directly from the Linux kernel. * sysdeps/kernel: New directory. Uses the table () function from the `kernel' directory to fetch things directly from the Linux kernel. * sysdeps/Makefile.am (DIST_SUBDIRS): Added `kernel'. * configure.in: Removed `build_CC' again. 1998-06-12 Martin Baulig * include/glibtop/sysdeps.h (glibtop_types_sysdeps): Forgot to change declaration on Jun 6. * sysdeps/names/sysdeps.c (glibtop_types_sysdeps): Using numeric constants from `types.h' instead of string constants; forgot to change this on Jun 6. Added information about new `features' field of `_glibtop_sysdeps'. * sysdeps/guile/names/*.c (glibtop_guile_types_*): Using `gh_ulong2scm' instead of `gh_str02scm'. * sysdeps/guile/proclist.c: Replaced call to `gh_append2 ()' with `gh_append ()'. * sysdeps/guile/names/*.c: dito. 1998-06-08 Martin Baulig * support: Added again. * Makefile.am (SUBDIRS): Added `support' again. * configure.in: First, we check for gnome. If it is not found, we run GNOME_SUPPORT_CHECKS; otherwise use `$GNOME_LIBDIR -lgnomesupport'. 1998-06-07 Martin Baulig * examples/ChangeLog: New file. * macros/gnome-libgtop-sysdeps.m4: Include `glibtop_machine.h' for Linux. * sysdeps/linux/glibtop_machine.h: New file. * sysdeps/linux/*.c: Performance optimizations. We now use `open' and `read' instead of `fopen' and `fscanf'. * *.[ch]: Using single underscore instead of two underscores for function prefixes (regexp: ``s,__([rspl])\b,_$1,g'') to avoid ambiguity with mangled C++ names. 1998-06-06 Martin Baulig * sysdeps/osf1/glibtop_server.h: New file. * sysdeps/osf1/*.c: renamed all functions implementing features that don't need to be suid to '__s'. * sysdeps/names/procdata.c: Removed that file. * include/glibtop/*.h (glibtop_types_*): Changed declaration. * glibtop.h: Added `#include '. * include/glibtop/types.h: New file - numeric constants for `glibtop_types_'. * sysdeps/names/*.c (glibtop_types_*): Using numeric constants from `types.h' instead of string constants. 1998-06-05 Martin Baulig * support: removed that directory. * configure.in: we check whether '-lgnomesupport' is included in $GNOME_LIBS and add it together with $GNOME_LIBDIR to LIBSUPPORT in this case. Gnome (gnome-libs) is now required to build libgtop, added short comment to configure.in how to revert this change. * Makefile.am: removed `support' subdir. 1998-06-03 Martin Baulig * libgtop.spec: New file. * Makefile.am (EXTRA_DIST): Added `autogen.sh' and `libgtop.spec'. * configure.in (LIBGTOP_INCS): is now identically to `LIBGTOP_GUILE_INCS'. * include/glibtop/global.h: only including intl headers while compiling libgtop. 1998-06-02 Federico Mena Quintero * src/server/main.c: #include 1998-06-02 Martin Baulig * lib/open.c (glibtop_open): renamed to `glibtop_open__l'. * sysdeps/linux/open.c (glibtop_open): renamed to `glibtop_open__r'. * include/glibtop/open.h (GLIBTOP_OPEN_NO_OVERRIDE): tells `glibtop_open' to use the default server and not to check the environment variables. * include/glibtop/sysdeps.h (_glibtop_sysdeps): renamed 'dummy' member to 'features'. * src/proxy/*: new directory - proxy server. * include/glibtop/command.h (GLIBTOP_CMND_SYSDEPS): added definition here. * src/server/main.c (GLIBTOP_CMND_SYSDEPS): new command to get glibtop_server_features. 1998-06-01 Martin Baulig * NEWS: added more detailed description of today's and yesterday's changes. * include/glibtop/*.h: to use the ChangeLog entry from May 28: '__l' is a function defined in the client part; '__s' is a function defined in the sysdeps part and '__p' is a function that needs special priviledges. '__r' is mapped either on '__p' or on '__s'. the function without suffix is mapped on '__l'. * sysdeps/common/sysdeps.c: now using '__r' functions, they are #defined either as the '__p' or the '__s' ones. * sysdeps/linux/*.c: changed call of 'glibtop_init__r', it now takes two additional arguments. * examples/{first.c, second.c}: now using 'glibtop_init' instead of 'glibtop_init__r'. * include/glibtop/sysdeps.h: added 'dummy' member so 'GLIBTOP_SYSDEPS_' now start with 1. * include/glibtop/*.h: we now #define 'glibtop_get_' as 'glibtop_get___l' and 'glibtop_get___r' either as the '__p' or the '__s' function. * lib/*.c: removed #if's - we now decide at runtime whether to use the server or to call the appropriate function for the sysdeps directory. 1998-05-28 Martin Baulig * src/server/main.c: we now use the '__p' functions, but only if the appropriate 'GLIBTOP_SUID_' has a non-zero value. * configure.in (@machine_incs@): always use `-I$(top_srcdir)/sysdeps/@sysdeps_dir@'; it's no longer conditional. * examples/Makefile.am: removed the '_linux' examples. * sysdeps/linux/*.c: renamed all functions implementing features to '__s'. * lib/*.c: renamed all functions implementing features to '__l'; we only emit code for those functions if the corresponding 'GLIBTOP_SUID_' has a positive value. * include/glibtop/*.h: added some new function suffixes: '__l' is a function defined in the client part; '__s' is a function defined in the sysdeps part and '__p' is a function that needs special priviledges. '__r' is mapped either on '__l' or on '__s'. * sysdeps/linux/glibtop_server.h: New file - defines system dependent constants 'GLIBTOP_SUID_' being either 'GLIBTOP_SYSDEPS_'+1 depending upon whether or not this feature requires using the server. * lib/sysdeps.c: removed that file; it is no longer needed. 1998-05-25 Martin Baulig * src/server/main.c: Fixed `broken pipe' error when server is running SUID; accidentally uses setreuid () instead of setregid (). 1998-05-24 Martin Baulig * sysdeps/sun4/{open.c, mem.c, glibtop_machine.h}: added memory statistics. * include/glibtop/mem.h (_glibtop_mem): added `locked' member to this structure for SunOS. 1998-05-23 Martin Baulig * sysdeps/sun4/{open.c, cpu.c}: Started porting. Getting CPU usage now working. Took a lot of code from top-3.4. * sysdeps/sun4/glibtop_machine.h: New file. System dependend header file for SunOS. * configure.in (CFLAGS): added -D_IN_LIBGTOP * */Makefile.am (INCLUDES): removed -I$(includedir). 1998-05-22 Martin Baulig * doc/{libgtop-ref.sgml, libgtop-ref.dsl}: New files. This is a reference manual that gets automatically build from make-docbook.scm. * guile/make-docbook.scm: New file. Uses the guile interface of libgtop to create docbook documentation for all functions. 1998-05-21 Martin Baulig * Makefile.am: 'gtopConf.sh' has been renamed to 'libgtopConf.sh'; variables in this script have changed. * lib/Makefile.am: uses '@LIBGTOP_SERVER@' instead of '@GTOP_SERVER@'. * configure.in: renamed variables for 'libgtopConf.sh.in'. * acconfig.h: added 'NEED_LIBGTOP'. * libgtopConf.sh.in: renamed from 'gtopConf.sh.in'; we now define 'LIBGTOP_LIBDIR', 'LIBGTOP_INCLUDEDIR', 'LIBGTOP_LIBS', 'LIBGTOP_INCS', 'LIBGTOP_GUILE_LIBS', 'LIBGTOP_GUILE_INCS', 'LIBGTOP_BINDIR', 'LIBGTOP_SERVER', 'libgtop_sysdeps_dir', 'libgtop_need_server', 'libgtop_use_machine_h', 'libgtop_guile_found', 'libgtop_want_names', 'libgtop_want_guile_names', 'libgtop_want_examples'. * gtopConf.sh.in: renamed to 'libgtopConf.sh.in'. * acinclude.m4 (AC_LC_SYSDEPS): rewrote that macro - moved some of the code to 'macros/gnome-libgtop-sysdeps.m4'; renamed variables: look at the ChangeLog entry for the new 'libgtopConf.sh.in' for details. * doc/gnome-hackers.sgml: added information about latest changes in 'acinclude.m4' and 'gtopConf.sh.in'. * Makefile.am: conditionally building 'examples' subdir, added 'copyright.txt' to EXTRA_DIST. * configure.in: added 'gtop_guile_found', 'gtop_want_names', 'gtop_want_guile_names' and 'gtop_want_examples' for use in 'gtopConf.sh.in'; added 'include' and 'include/glibtop' subdirs. * acconfig.h: added 'GLIBTOP_EXAMPLES'. * acinclude.m4 (AC_LC_SYSDEPS): define 'GLIBTOP_NAMES' when building libgtop and a new conditional 'GLIBTOP_NAMES'; added new parameter '--without-examples'; define 'GLIBTOP_EXAMPLES' and conditional 'GLIBTOP_EXAMPLES'. * gtopConf.sh.in: added 'GTOP_GUILE_FOUND', 'GTOP_WANT_NAMES', 'GTOP_WANT_GUILE_NAMES' and 'GTOP_WANT_EXAMPLES'. * include/glibtop/Makefile.am: new file - header file now get properly installed and go into the distribution. * include/Makefile.am: new file * sysdeps/guile/Makefile.am: added 'DIST_SUBDIRS' * sysdeps/Makefile.am: added 'DIST_SUBDIRS' * doc/gnome-hackers.sgml: new file - short intro on how to use libgtop in the gnome project; especially 'configure' and 'gtopConf.sh'. * doc/gnome-hackers.dsl: new file - sets output filename and directory for 'gnome-hackers.sgml'. * doc/libgtop.dsl: most stuff from this file has moved to 'dbtohtml.dsl', it now only overrides the output filename and directory. * doc/dbtohtml.dsl: new file - contains most that was formerly in 'libgtop.dsl'. * configure.in: 'GTOP_INCS' and 'GTOP_LIBS' now really point to the places where everything gets installed and no longer to the build directory, so that they can be used in 'gtopConf.sh'. * acinclude.m4 (AC_LC_SYSDEPS): added 'machine_incs' which is used in 'INCLUDES' in several 'Makefile.am's; fixed typo 'ac_cv_want_names'; added missing AC_SUBST of 'use_glibtop_machine_h'. 1998-05-20 Martin Baulig * NEWS: added more detailed description of today's changes. * examples/third.c: added required check for 'GLIBGTOP_GUILE_NAMES'. * sysdeps/Makefile.am: only build 'names' subdir when necessary. * sysdeps/guile/Makefile.am: only build 'names' subdir when necessary. * acinclude.m4 (AC_LC_SYSDEPS): added '--enable-libgtop-server' (default=auto), '--enable-libgtop-names' (default=yes) and '--enable-libgtop-guile' (default=yes); we now define 'GLIBTOP_NAMES' here. * acconfig.h: added 'GLIBTOP_NAMES' and 'GLIBTOP_GUILE_NAMES' * gtopConf.sh.in: added definition of 'GTOP_GUILE_LIBS' and 'GTOP_GUILE_INCS': 'GTOP_LIBS' and 'GTOP_INCS' now contains everything that is needed to link with libgtop. 'GTOP_GUILE_LIBS' and 'GTOP_GUILE_INCS' now contains everything that is needed to link with libgtop and its guile interface. When guile cannot be found on the system or building of the guile interface was disables, they are identical to 'GTOP_LIBS' and 'GTOP_INCS' [FIXME: Should I make them empty in this case?] * sysdeps/osf1/procuid.c (glibtop_get_proc_uid__r): added implementation for DEC OSF/1. * sysdeps/sun4/uptime.c: forgot to checkin * sysdeps/sun4/loadavg.c: forgot to checkin * sysdeps/osf1/uptime.c: forgot to checkin * sysdeps/osf1/loadavg.c: forgot to checkin 1998-05-19 Martin Baulig * sysdeps/stub/uptime.c: forgot this file all the time - stub for glibtop_uptime * sysdeps/stub/loadavg.c: forgot this file all the time - stub for glibtop_loadavg * NEWS: Libgtop is now in the GNOME CVS Repository. * po/Makefile.in.in: new file * ABOUT-NLS: new file 1998-05-17 Martin Baulig * NEWS: added some stuff from 'README.LATEST'. * README.LATEST: incorporated content of this file into 'NEWS'. * include/glibtop: added references to 'glibtop_types_* []' and 'glibtop_guile_types_*'. * sysdeps/guile/names: added implementations of 'glibtop_types_*' and 'glibtop_description_*'. * sysdeps/names: added 'glibtop_types_* []', changed 'glibtop_descriptions_* []'. 1998-05-11 Martin Baulig * sysdeps/linux: finished the remaining proc_* functions. * sysdeps/guile: all guile functions now return the 'flags' member as first element of the list. * include/glibtop/procstate.h (glibtop_proc_state): added 'uid' and 'gid' members; the library tries hard to set those values; it will never set the corresponding 'flags' value unless the values are correct. * examples/first.c: added some nice features. * examples/second.c: new file - dumps out all currently running processes. 1998-05-11 Martin Baulig * sysdeps/linux/cpu.c: added 'frequency' member to 'struct _glibtop_cpu'. * include/glibtop/cpu.h (glibtop_cpu): added 'frequency' member * sysdeps/guile/names/procdata.c: splitted into procstate.c, procuid.c, procmem.c, proctime.c, procsignal.c, prockernel.c and procsegment.c * sysdeps/guile/procdata.c: splitted into procstate.c, procuid.c, procmem.c, proctime.c, procsignal.c, prockernel.c and procsegment.c * lib/procdata.c: splitted into procstate.c, procuid.c, procmem.c, proctime.c, procsignal.c, prockernel.c and procsegment.c * include/glibtop/procdata.h: splitted into procstate.h, procuid.h, procmem.h, proctime.h, procsignal.h, prockernel.h and procsegment.h 1998-05-10 Martin Baulig * sysdeps/osf1: port to OSF1 has been made. 1998-05-07 Martin Baulig * sysdeps/guile/sysdeps.c: changes to reflect the new flags of procdata. * sysdeps/common/sysdeps.c: changes to reflect the new flags of procdata. * sysdeps/linux/procdata.c: 'flags' member is now 'unsigned long flags [2]'. When we give glibtop_get_procdata () a pid of zero, only the flags are returned. * sysdeps/linux: now using static constant instead of #define for sysdeps. * include/glibtop/procdata.h: flags is now 'unsigned long flags [2]'. * examples/first.c: output sysdeps 1998-05-03 Martin Baulig * ltconfig.diff: ugly hack: when cross compiling, we assume building shared libraries work. 1998-05-02 Martin Baulig * sysdeps/stub/init.c: new file - initializes global server. * sysdeps/linux/init.c: new file - initializes global server. * lib/init.c: new file - initializes global server. * glibtop.h: global changes to the interfaces, all functions except glibtop_open() and glibtop_close() that took a server argument have now a '__r' suffix; the original name is now a macro that uses glibtop_global_server. 1998-04-12 Martin Baulig * sysdeps/linux/open.c: we set server->os_version_code here, copied from gnome-utils/gtop/proc/version.c * sysdeps/linux/procdata.c: added implementation for this feature, mainly copied from gnome-utils/gtop/proc/readproc.c * glibtop.h: added os_version_code member to struct _glibtop * src/server/Makefile.am: moved here from src * src/server/version.c: moved here from src * src/server/output.c: moved here from src * src/server/main.c: moved here from src * src/mico/server.cc: new file - simple mico client * src/mico/client.cc: new file - simple mico client * src/mico/proclist.idl: new file - simple mico interface * src/version.c: moved to src/server * src/output.c: moved to src/server * src/main.c: moved to src/server 1998-04-11 Martin Baulig * doc/libgtop.sgml: added chapter on how to extend the library * sysdeps/names/procdata.c: new file - names for glibtop_procdata * sysdeps/linux/procdata.c: new file - copy from sysdeps/stub * sysdeps/stub/procdata.c: new file - stub for glibtop_procdata * sysdeps/guile/names/procdata.c: new file - guile names for glibtop_procdata * sysdeps/guile/procdata.c: new file - guile interface for glibtop_procdata * lib/procdata.c: new file - library function for glibtop_procdata * include/glibtop/procdata.h: new file - interface for glibtop_procdata - get detailed information about a process 1998-04-10 Martin Baulig * doc/libgtop.sgml: wrote some more documentation * NEWS: Added new directory sysdeps/guile/names. It is the guile interface to the gtop_names library found in sysdeps/names. Changed GLIBTOP_DESCRIPTIONS to GLIBTOP_NAMES and added GLIBTOP_GUILE_NAMES to the header files. * sysdeps/guile/names/boot.c: new file - added also cpu.c, mem.c, swap.c, uptime.c, loadavg.c, shm_limits.c, msg_limits.c, sem_limits.c, proclist.c and sysdeps.c to this directory. * sysdeps/guile/cpu.c: bugfixes * sysdeps/guile/proclist.c: bugfixes * sysdeps/names/sysdeps.c (glibtop_labels_sysdeps): more verbose now * examples/third.c: added gtop_guile_names library * doc/libgtop.sgml: documented guile interface * glibtop.h: changed GLIBTOP_DESCRIPTIONS to GLIBTOP_NAMES; added GLIBTOP_GUILE_NAMES when we have the gtop_guile_names library added in sysdeps/guile/names 1998-04-09 Martin Baulig * NEWS: Added new directories guile and names to sysdeps. In names are some string constants about the data stored in the structures. guile is a guile interface for the library. It is used in examples /third (which has been completely rewritten). The header files define things from names when GLIBTOP_DESCRIPTIONS if defined and/or from guile when HAVE_GUILE is defined. * sysdeps/names/cpu.c: new file, also added cpu.c, mem.c, swap.c, uptime.c loadavg.c, shm_limits.c, msg_limits.c, sem_limits.c, proclist.c and sysdeps.c to this directory * sysdeps/guile/boot.c: new file, also added cpu.c, mem.c, swap.c, uptime.c loadavg.c, shm_limits.c, msg_limits.c, sem_limits.c, proclist.c and sysdeps.c to this directory * sysdeps/common/sem_limits.c: moved to sysdeps/names * sysdeps/common/msg_limits.c: moved to sysdeps/names * sysdeps/common/sem_limits.c: moved to sysdeps/names * examples/third.c: completely rewritten - simple guile interpreter linked with libgtop_guile * examples/second.c: removed 1998-04-08 Martin Baulig * ANNOUNCE: new file * examples/third.scm: new file - sample guile file * examples/third.c: new file - guile wrapper for libgtop * examples/second.c: new file - simple guile test from guile-tut.info * README: new file * libgtop-mirror.sh: new file: mirror script for my web site * doc/dbtohtml.dsl: renamed to libgtop.dsl 1998-04-06 Martin Baulig * lib/command.c: some changes in the interface * src/main.c: some changes in the interface, we can now return some arbitrary data * lib/proclist.c: new file - library function for glibtop_proclist * sysdeps/linux/proclist.c: new file - implementation for glibtop_proclist * sysdeps/stub/proclist.c: new file - stub for glibtop_proclist * include/glibtop/proclist.h: new file - glibtop_proclist * include/glibtop/union.h: new file * lib/read_data.c: new file * include/glibtop/read_data.h: new file * sysdeps/common/xmalloc.c: new file - moved here from lib * sysdeps/common/error.c: new file - moved here from lib * lib/xmalloc.c: moved to sysdeps/common * lib/error.c: moved to sysdeps/common 1998-04-05 Martin Baulig * lib/shm_limits.c: new file - library function for glibtop_shm_limits * lib/msg_limits.c: new file - library function for glibtop_msg_limits * lib/sem_limits.c: new file - library function for glibtop_sem_limits * sysdeps/linux/shm_limits.c: new file - implementation for glibtop_shm_limits * sysdeps/linux/msg_limits.c: new file - implementation for glibtop_msg_limits * sysdeps/linux/sem_limits.c: new file - implementation for glibtop_sem_limits * sysdeps/stub/shm_limits.c: new file - stub for glibtop_shm_limits * sysdeps/stub/msg_limits.c: new file - stub for glibtop_msg_limits * sysdeps/stub/sem_limits.c: new file - stub for glibtop_sem_limits * sysdeps/common/shm_limits.c: new file - limit names * sysdeps/common/msg_limits.c: new file - limit names * sysdeps/common/sem_limits.c: new file - limit names * include/glibtop/shm_limits.h: new file - glibtop_shm_limits * include/glibtop/msg_limits.h: new file - glibtop_msg_limits * include/glibtop/sem_limits.h: new file - glibtop_sem_limits * sysdeps/common/sysdeps.c: moved here from sysdeps/stub * sysdeps/linux/sysdeps.c: moved to sysdeps/common * sysdeps/stub/sysdeps.c: moved to sysdeps/common * sysdeps/stub/ipc_limits.c: splitted info shm_limits.c, msg_limits.c and sem_limits.c * sysdeps/linux/ipc_limits.c: splitted into shm_limits.c, msg_limits.c and sem_limits.c * lib/ipc_limits.c: splitted into shm_limits.c, msg_limits.c and sem_limits.c * include/ipc_limits.h: splitted into shm_limits.h, msg_limits.h and sem_limits.s * lib/ipc_limits.c: new file - library function for glibtop_ipc_limits * sysdeps/linux/ipc_limits.c: new file - implementation for glibtop_ipc_limits * sysdeps/stub/ipc_limits.c: new file - stub for glibtop_ipc_limits * include/glibtop/ipc_limits.h: new file - glibtop_ipc_limits - sysv ipc limits * doc/libgtop.sgml: worked on documentation * lib/uptime.c: new file - library function for glibtop_uptime * lib/loadavg.c: new file - library function for glibtop_loadavg * lib/sysinfo.c: removed - splitted into uptime.c and loadavg.c * sysdeps/linux/uptime.c: new file - implementation for glibtop_uptime * sysdeps/linux/loadavg.c: new file - implementation for glibtop_loadavg * sysdeps/linux/sysinfo.c: removed - splitted into uptime.c and loadavg.c * sysdeps/stub/uptime.c: new file - stub for glibtop_uptime * sysdeps/stub/loadavg.c: new file - stub for glibtop_loadavg * sysdeps/stub/sysinfo.c: removed - splitted into uptime.c and loadavg.c * src/main.c: added GLIBTOP_CMND_UPTIME and GLIBTOP_CMND_LOADAVG implementation * include/glibtop/loadavg.h: new file - glibtop_loadavg * include/glibtop/uptime.h: new file - glibtop_uptime * include/glibtop/loadavg.h: removed - splitted into uptime.h and loadavg.h * src/main.c: added GLIBTOP_CMND_SYSDEPS implementation * lib/sysdeps.c: new file - library function for glibtop_sysdeps * sysdeps/linux/sysdeps.c: new file - copied from sysdeps/stub * sysdeps/stub/sysdeps.c: new file - implementation for glibtop_sysinfo - this is really the implementation and not just a stub * src/sysdeps.c: moved to sysdeps/stub - this file is now part of the library * lib/sysinfo.c: new file - library function for glibtop_sysinfo * sysdeps/linux/sysinfo.c: new file - linux version for glibtop_sysinfo * sysdeps/stub/sysinfo.c: new file - stub for glibtop_sysinfo * include/glibtop/sysinfo.h: new file - provides uptime, idle time and load averange. * po/libgtop.pot: removed file * sysdeps/linux/cpu.c: using long unsigned format * sysdeps/linux/mem.c: using long usigned format * sysdeps/linux/swap.c: using long unsigned format * examples/first.c: using long unsigned format * initial version.