diff --git a/devel/Makefile b/devel/Makefile index 5bebc359f0c7..3ae13c416792 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -435,6 +435,7 @@ SUBDIR += darts SUBDIR += dash.el SUBDIR += datadraw + SUBDIR += date SUBDIR += dbus SUBDIR += dbus-c++ SUBDIR += dbus-glib diff --git a/devel/date/Makefile b/devel/date/Makefile new file mode 100644 index 000000000000..e73fedfebab6 --- /dev/null +++ b/devel/date/Makefile @@ -0,0 +1,34 @@ +# $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 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 diff --git a/devel/date/distinfo b/devel/date/distinfo new file mode 100644 index 000000000000..a529545a2c19 --- /dev/null +++ b/devel/date/distinfo @@ -0,0 +1,3 @@ +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 diff --git a/devel/date/pkg-descr b/devel/date/pkg-descr new file mode 100644 index 000000000000..9f63c7c191d6 --- /dev/null +++ b/devel/date/pkg-descr @@ -0,0 +1,22 @@ +This is actually several separate C++11/C++14/C++17 libraries: +* "date.h" is a header-only library which builds upon . 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 . 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 diff --git a/devel/date/pkg-plist b/devel/date/pkg-plist new file mode 100644 index 000000000000..cad05ea465a6 --- /dev/null +++ b/devel/date/pkg-plist @@ -0,0 +1,11 @@ +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