src/Makefile.in
src/README
src/main.ml
-src/opt_calendar1.ml
-src/opt_calendar2.ml
+src/opt_calendar.ml
src/opt_csv.ml
src/opt_xml.ml
src/top.ml
AC_CHECK_OCAML_PKG(gettext)
AC_CHECK_OCAML_PKG(xml-light)
AC_CHECK_OCAML_PKG(csv)
-
-dnl Need to check which version of calendar is installed.
AC_CHECK_OCAML_PKG(calendar)
-if test "x$OCAML_PKG_calendar" != "xno"; then
- AC_CHECK_OCAML_MODULE(is_calendar2,calendar,[CalendarLib.Date],[+$OCAML_PKG_calendar])
-fi
AC_SUBST(OCAML_PKG_unix)
AC_SUBST(OCAML_PKG_extlib)
AC_SUBST(OCAML_PKG_xml_light)
AC_SUBST(OCAML_PKG_csv)
AC_SUBST(OCAML_PKG_calendar)
-AC_SUBST(is_calendar2)
dnl Check for optional perldoc (for building manual pages).
AC_CHECK_PROG(HAVE_PERLDOC,perldoc,perldoc)
../src/main.ml
-../src/opt_calendar1.ml
-../src/opt_calendar2.ml
+../src/opt_calendar.ml
../src/opt_csv.ml
../src/opt_gettext.ml
../src/opt_xml.ml
main.cmo: top.cmi opt_gettext.cmo
main.cmx: top.cmx opt_gettext.cmx
-opt_calendar1.cmo: top.cmi opt_gettext.cmo
-opt_calendar1.cmx: top.cmx opt_gettext.cmx
-opt_calendar2.cmo: top.cmi opt_gettext.cmo
-opt_calendar2.cmx: top.cmx opt_gettext.cmx
+opt_calendar.cmo: top.cmi opt_gettext.cmo
+opt_calendar.cmx: top.cmx opt_gettext.cmx
opt_csv.cmo: top.cmi opt_gettext.cmo
opt_csv.cmx: top.cmx opt_gettext.cmx
opt_gettext.cmo:
OCAMLCPACKAGES += -package csv
endif
ifneq ($(OCAML_PKG_calendar),no)
-ifeq ($(is_calendar2),no)
-OBJS += opt_calendar1.cmo
+OBJS += opt_calendar.cmo
OCAMLCPACKAGES += -package calendar
-else
-OBJS += opt_calendar2.cmo
-OCAMLCPACKAGES += -package calendar
-endif
endif
OBJS += main.cmo
Any code which needs the optional ocaml-csv library goes
in here. This implements the --csv command line option.
- opt_calendar1.ml, opt_calendar2.ml
+ opt_calendar.ml
Any code which needs the optional ocaml-calendar library
- (v1 or v2) goes in here. This implements the --end-time
- command line option.
+ (v2) goes in here. This implements the --end-time command
+ line option.
main.ml
This is just a small bit of code to glue the modules together
- Top + Opt_xml? + Opt_csv? + Opt_calendar{1,2}?
+ Top + Opt_xml? + Opt_csv? + Opt_calendar?
The man-page is generated from the single file:
+++ /dev/null
-(* 'top'-like tool for libvirt domains.
- (C) Copyright 2007-2009 Richard W.M. Jones, Red Hat Inc.
- http://libvirt.org/
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- This file contains all code which requires ocaml-calendar < 2.0
-*)
-
-open Printf
-open ExtString
-
-open Opt_gettext.Gettext ;;
-
-Top.parse_date_time :=
-fun time ->
- let cal : Calendar.t =
- if String.starts_with time "+" then ( (* +something *)
- let period = String.sub time 1 (String.length time - 1) in
- let period =
- if String.contains period ':' then ( (* +HH:MM:SS *)
- let t = Printer.TimePrinter.from_string period in
- let hh = Time.hour t and mm = Time.minute t and ss = Time.second t in
- Calendar.Period.make 0 0 0 hh mm ss
- ) else (* +seconds *)
- Calendar.Period.second (int_of_string period) in
- (* Add it as an offset from the current time. *)
- Calendar.add (Calendar.now ()) period
- ) else (
- if String.contains time '-' then (* YYYY-MM-DD HH:MM:SS *)
- Printer.CalendarPrinter.from_string time
- else ( (* HH:MM:SS *)
- let time = Printer.TimePrinter.from_string time in
- Calendar.create (Date.today ()) time
- )
- ) in
-
- eprintf "end time: %s\n" (Printer.CalendarPrinter.to_string cal);
-
- (* Convert to a time_t. Note that we compare this against
- * Unix.gettimeofday in the main module, so this must be returned as
- * plain seconds from 1970 with no timezone adjustment. (RHBZ#637964)
- *)
- Calendar.to_unixfloat cal