Commit c11b4b61 authored by yuri's avatar yuri
Browse files

New port: devel/date: Date and time library based on the C++11/14/17 <chrono> header

parent 0d573e3c
......@@ -435,6 +435,7 @@
SUBDIR += darts
SUBDIR += dash.el
SUBDIR += datadraw
SUBDIR += date
SUBDIR += dbus
SUBDIR += dbus-c++
SUBDIR += dbus-glib
......
# $FreeBSD$
PORTNAME= date
DISTVERSIONPREFIX= v
DISTVERSION= 2.4.1-80
DISTVERSIONSUFFIX= -ged0368f
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
COMMENT= Date and time library based on the C++11/14/17 <chrono> header
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
RUN_DEPENDS= ${LOCALBASE}/include/boost/chrono/typeof/boost/chrono/chrono.hpp:devel/boost-libs
LIB_DEPENDS= libcurl.so:ftp/curl
TEST_DEPENDS= bash:shells/bash
USES= cmake compiler:c++17-lang
USE_GITHUB= yes
GH_ACCOUNT= HowardHinnant
USE_LDCONFIG= yes
CMAKE_ON= BUILD_SHARED_LIBS
CMAKE_OFF= ENABLE_DATE_TESTING
do-test:
@cd ${WRKSRC} && ${REINPLACE_CMD} 's|!/bin/bash|!${LOCALBASE}/bin/bash|' compile_fail.sh test_fail.sh
@cd ${BUILD_WRKSRC} && \
${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DENABLE_DATE_TESTING:BOOL=ON ${CMAKE_SOURCE_PATH} && \
${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \
${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} testit
.include <bsd.port.mk>
TIMESTAMP = 1558125722
SHA256 (HowardHinnant-date-v2.4.1-80-ged0368f_GH0.tar.gz) = 4b8f053e9ba717b66829ca0aa4df03eeed68996416bbef17353716cebdf09156
SIZE (HowardHinnant-date-v2.4.1-80-ged0368f_GH0.tar.gz) = 804032
This is actually several separate C++11/C++14/C++17 libraries:
* "date.h" is a header-only library which builds upon <chrono>. It adds some new
duration types, and new time_point types. It also adds "field" types such as
year_month_day which is a struct {year, month, day}. And it provides
convenient means to convert between the "field" types and the time_point
types.
* "tz.h" / "tz.cpp" are a timezone library built on top of the "date.h" library.
This timezone library is a complete parser of the IANA timezone database. It
provides for an easy way to access all of the data in this database, using the
types from "date.h" and <chrono>. The IANA database also includes data on leap
seconds, and this library provides utilities to compute with that information
as well.
* "iso_week.h" is a header-only library built on top of the "date.h" library
which implements the ISO week date calendar.
* "julian.h" is a header-only library built on top of the "date.h" library which
implements a proleptic Julian calendar which is fully interoperable with
everything above.
* "islamic.h" is a header-only library built on top of the "date.h" library
which implements a proleptic Islamic calendar which is fully interoperable
with everything above.
WWW: https://github.com/HowardHinnant/date
include/date/chrono_io.h
include/date/date.h
include/date/ios.h
include/date/islamic.h
include/date/iso_week.h
include/date/julian.h
include/date/ptz.h
include/date/tz.h
include/date/tz_private.h
lib/cmake/date/dateConfig.cmake
lib/libtz.so
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment