Index: head/databases/Makefile =================================================================== --- head/databases/Makefile (revision 468808) +++ head/databases/Makefile (revision 468809) @@ -1,1074 +1,1075 @@ # $FreeBSD$ # COMMENT = Databases and related software SUBDIR += R-cran-DBI SUBDIR += R-cran-RMySQL SUBDIR += R-cran-RPostgreSQL SUBDIR += R-cran-RSQLite SUBDIR += R-cran-RSQLite.extfuns SUBDIR += R-cran-sqldf SUBDIR += WWWdb SUBDIR += adabase SUBDIR += adminer SUBDIR += adodb SUBDIR += adodb5 SUBDIR += akonadi SUBDIR += akonadi-kde4 SUBDIR += animenfo-client SUBDIR += animenfo-client-gtk SUBDIR += apq SUBDIR += apq-mysql SUBDIR += apq-odbc SUBDIR += apq-pgsql SUBDIR += arangodb32 SUBDIR += arangodb33 SUBDIR += ateam_mysql_ldap_auth SUBDIR += autobackupmysql SUBDIR += bbdb SUBDIR += beansdb SUBDIR += buzhug SUBDIR += c3p0 SUBDIR += cassandra-cpp-driver SUBDIR += casstcl SUBDIR += cdb SUBDIR += cego SUBDIR += cegobridge SUBDIR += clickhouse SUBDIR += cockroach SUBDIR += couchdb SUBDIR += courier-authlib-mysql SUBDIR += courier-authlib-pgsql SUBDIR += courier-authlib-userdb SUBDIR += courier-authlib-usergdbm SUBDIR += cppdb SUBDIR += credis SUBDIR += dalmp SUBDIR += datamodeler SUBDIR += db SUBDIR += db48 SUBDIR += db5 SUBDIR += db6 SUBDIR += dbconnect SUBDIR += dbf SUBDIR += dbf2mysql SUBDIR += dbh SUBDIR += dbow SUBDIR += dbtool SUBDIR += dbview SUBDIR += elixir-calecto SUBDIR += elixir-db_connection SUBDIR += elixir-ecto SUBDIR += elixir-exredis SUBDIR += elixir-geo SUBDIR += elixir-mariaex SUBDIR += elixir-mongo SUBDIR += elixir-postgrex SUBDIR += elixir-timex_ecto SUBDIR += emma SUBDIR += erlang-couchbeam SUBDIR += erlang-epgsql SUBDIR += erlang-eredis SUBDIR += evolution-data-server SUBDIR += fastdb SUBDIR += firebird25-client SUBDIR += firebird25-server SUBDIR += flamerobin SUBDIR += fortytwo-bdb + SUBDIR += foundationdb SUBDIR += fpc-dblib SUBDIR += fpc-fpindexer SUBDIR += fpc-gdbm SUBDIR += fpc-ibase SUBDIR += fpc-mysql SUBDIR += fpc-odbc SUBDIR += fpc-oracle SUBDIR += fpc-postgres SUBDIR += fpc-pxlib SUBDIR += fpc-sqlite SUBDIR += freetds SUBDIR += freetds-devel SUBDIR += frontbase-jdbc SUBDIR += gadfly SUBDIR += galera SUBDIR += gdbm SUBDIR += geoserver-mysql-plugin SUBDIR += gigabase SUBDIR += gnats4 SUBDIR += gnatsweb4 SUBDIR += go-carbon SUBDIR += gomdb SUBDIR += gosqlite3 SUBDIR += gqlplus SUBDIR += grass7 SUBDIR += gtksql SUBDIR += hamsterdb SUBDIR += hashtypes SUBDIR += hbase SUBDIR += hiredis SUBDIR += hs-esqueleto SUBDIR += hs-hedis SUBDIR += hs-mysql SUBDIR += hs-persistent SUBDIR += hs-persistent-sqlite SUBDIR += hs-persistent-template SUBDIR += hsqldb SUBDIR += influxdb SUBDIR += innotop SUBDIR += iowow SUBDIR += ip4r SUBDIR += ipa_sdb SUBDIR += iplike SUBDIR += isql-viewer SUBDIR += jakarta-commons-dbutils SUBDIR += jasperreports SUBDIR += jdb SUBDIR += jdbc-oracle11g SUBDIR += jlog SUBDIR += jrobin SUBDIR += jrrd SUBDIR += kbibtex SUBDIR += kdb SUBDIR += kexi SUBDIR += kyotocabinet SUBDIR += kyototycoon SUBDIR += ldb SUBDIR += ldb12 SUBDIR += ldb13 SUBDIR += leo_center SUBDIR += leofs SUBDIR += leveldb SUBDIR += levigo SUBDIR += libcouchbase SUBDIR += libdbi SUBDIR += libdbi-drivers SUBDIR += libdrizzle SUBDIR += libdrizzle-redux SUBDIR += libgda5 SUBDIR += libgda5-bdb SUBDIR += libgda5-jdbc SUBDIR += libgda5-ldap SUBDIR += libgda5-mdb SUBDIR += libgda5-mysql SUBDIR += libgda5-postgresql SUBDIR += libgda5-ui SUBDIR += libgdamm5 SUBDIR += libhsclient SUBDIR += libiodbc SUBDIR += libmemcache SUBDIR += libmemcached SUBDIR += libmongo-client SUBDIR += libnvpair SUBDIR += libodbc++ SUBDIR += libpbl SUBDIR += libpqtypes SUBDIR += libsdb SUBDIR += libzdb SUBDIR += linux-c6-sqlite3 SUBDIR += linux-c7-sqlite3 SUBDIR += linux-oracle-instantclient-basic SUBDIR += linux-oracle-instantclient-sdk SUBDIR += linux-oracle-instantclient-sqlplus SUBDIR += liquibase SUBDIR += lmdb SUBDIR += lua-resty-redis SUBDIR += lua-xapian SUBDIR += luadbi SUBDIR += luasql-firebird SUBDIR += luasql-mysql SUBDIR += luasql-odbc SUBDIR += luasql-postgres SUBDIR += luasql-sqlite3 SUBDIR += mantis SUBDIR += mariadb-connector-c SUBDIR += mariadb-connector-odbc SUBDIR += mariadb100-client SUBDIR += mariadb100-server SUBDIR += mariadb101-client SUBDIR += mariadb101-server SUBDIR += mariadb102-client SUBDIR += mariadb102-server SUBDIR += mariadb55-client SUBDIR += mariadb55-server SUBDIR += mdbtools SUBDIR += mdcached SUBDIR += memcached SUBDIR += memcacheq SUBDIR += metakit SUBDIR += monetdb SUBDIR += mongodb SUBDIR += mongodb32 SUBDIR += mongodb32-tools SUBDIR += mongodb34 SUBDIR += mongodb34-rocks SUBDIR += mongodb34-tools SUBDIR += mongodb36 SUBDIR += mroonga SUBDIR += mrtg-mysql-load SUBDIR += mtools-mongodb SUBDIR += mtop SUBDIR += mydbf2mysql SUBDIR += mydumper SUBDIR += mysac SUBDIR += mysql++1 SUBDIR += mysql++3 SUBDIR += mysql-connector-c SUBDIR += mysql-connector-c++ SUBDIR += mysql-connector-java SUBDIR += mysql-connector-odbc SUBDIR += mysql-q4m SUBDIR += mysql-udf SUBDIR += mysql2odbc SUBDIR += mysql2pgsql SUBDIR += mysql55-client SUBDIR += mysql55-server SUBDIR += mysql56-client SUBDIR += mysql56-server SUBDIR += mysql57-client SUBDIR += mysql57-server SUBDIR += mysql80-client SUBDIR += mysql80-server SUBDIR += mysqlbackup SUBDIR += mysqlbigram SUBDIR += mysqldump-secure SUBDIR += mysqldumper SUBDIR += mysqlidxchk SUBDIR += mysqlreport SUBDIR += mysqlsla SUBDIR += mysqlsniffer SUBDIR += mysqltcl SUBDIR += mysqltuner SUBDIR += mysqlwsrep56-server SUBDIR += mysqlwsrep57-server SUBDIR += mytop SUBDIR += nagios-check_mongodb SUBDIR += nagios-check_postgres_replication SUBDIR += nagios-check_redis SUBDIR += namazu2 SUBDIR += neo4j SUBDIR += ntdb SUBDIR += ocaml-dbm SUBDIR += ocaml-mysql SUBDIR += ocaml-sqlite3 SUBDIR += openark-kit SUBDIR += opendbx SUBDIR += opentsdb SUBDIR += ora2pg SUBDIR += oracle8-client SUBDIR += p5-Amazon-SimpleDB SUBDIR += p5-Amon2-DBI SUBDIR += p5-AnyEvent-BDB SUBDIR += p5-AnyEvent-CouchDB SUBDIR += p5-AnyEvent-DBD-Pg SUBDIR += p5-AnyEvent-Memcached SUBDIR += p5-AnyEvent-Redis SUBDIR += p5-App-Sqitch SUBDIR += p5-AsciiDB-TagFile SUBDIR += p5-BDB SUBDIR += p5-BSON SUBDIR += p5-BerkeleyDB SUBDIR += p5-Bucardo SUBDIR += p5-CDB_File SUBDIR += p5-CDB_File-Generator SUBDIR += p5-CGI-Session-Driver-memcached SUBDIR += p5-Cache-BDB SUBDIR += p5-Cache-Memcached SUBDIR += p5-Cache-Memcached-Fast SUBDIR += p5-Cache-Memcached-Managed SUBDIR += p5-Cache-Memcached-XS SUBDIR += p5-Cache-Memcached-libmemcached SUBDIR += p5-Class-DBI SUBDIR += p5-Class-DBI-AbstractSearch SUBDIR += p5-Class-DBI-AsForm SUBDIR += p5-Class-DBI-AutoLoader SUBDIR += p5-Class-DBI-BaseDSN SUBDIR += p5-Class-DBI-DATA-Schema SUBDIR += p5-Class-DBI-DDL SUBDIR += p5-Class-DBI-FromCGI SUBDIR += p5-Class-DBI-LazyInflate SUBDIR += p5-Class-DBI-Loader SUBDIR += p5-Class-DBI-Loader-Relationship SUBDIR += p5-Class-DBI-Oracle SUBDIR += p5-Class-DBI-Pager SUBDIR += p5-Class-DBI-Pg SUBDIR += p5-Class-DBI-Plugin SUBDIR += p5-Class-DBI-Plugin-AbstractCount SUBDIR += p5-Class-DBI-Plugin-DeepAbstractSearch SUBDIR += p5-Class-DBI-Plugin-Iterator SUBDIR += p5-Class-DBI-Plugin-Pager SUBDIR += p5-Class-DBI-Plugin-RetrieveAll SUBDIR += p5-Class-DBI-Plugin-Senna SUBDIR += p5-Class-DBI-Plugin-Type SUBDIR += p5-Class-DBI-Replication SUBDIR += p5-Class-DBI-SAK SUBDIR += p5-Class-DBI-SQLite SUBDIR += p5-Class-DBI-Sweet SUBDIR += p5-Class-DBI-ToSax SUBDIR += p5-Class-DBI-Untaint SUBDIR += p5-Class-DBI-mysql SUBDIR += p5-Class-Inflate SUBDIR += p5-CouchDB-View SUBDIR += p5-DBD-AnyData SUBDIR += p5-DBD-CSV SUBDIR += p5-DBD-Excel SUBDIR += p5-DBD-Google SUBDIR += p5-DBD-InterBase SUBDIR += p5-DBD-LDAP SUBDIR += p5-DBD-Mock SUBDIR += p5-DBD-Multi SUBDIR += p5-DBD-ODBC SUBDIR += p5-DBD-Oracle SUBDIR += p5-DBD-Pg SUBDIR += p5-DBD-PgLite SUBDIR += p5-DBD-PgPP SUBDIR += p5-DBD-SQLite SUBDIR += p5-DBD-SQLite2 SUBDIR += p5-DBD-Sybase SUBDIR += p5-DBD-XBase SUBDIR += p5-DBD-cego SUBDIR += p5-DBD-mysql SUBDIR += p5-DBI SUBDIR += p5-DBI-Shell SUBDIR += p5-DBICx-Deploy SUBDIR += p5-DBICx-MapMaker SUBDIR += p5-DBICx-Sugar SUBDIR += p5-DBICx-TestDatabase SUBDIR += p5-DBICx-TxnInsert SUBDIR += p5-DBIWrapper SUBDIR += p5-DBIx-Abstract SUBDIR += p5-DBIx-Admin-CreateTable SUBDIR += p5-DBIx-Admin-DSNManager SUBDIR += p5-DBIx-Admin-TableInfo SUBDIR += p5-DBIx-AnyDBD SUBDIR += p5-DBIx-Browse SUBDIR += p5-DBIx-Class SUBDIR += p5-DBIx-Class-AsFdat SUBDIR += p5-DBIx-Class-BitField SUBDIR += p5-DBIx-Class-Candy SUBDIR += p5-DBIx-Class-Cursor-Cached SUBDIR += p5-DBIx-Class-CustomPrefetch SUBDIR += p5-DBIx-Class-DateTime-Epoch SUBDIR += p5-DBIx-Class-DeploymentHandler SUBDIR += p5-DBIx-Class-DigestColumns SUBDIR += p5-DBIx-Class-DynamicDefault SUBDIR += p5-DBIx-Class-DynamicSubclass SUBDIR += p5-DBIx-Class-EncodeColumns SUBDIR += p5-DBIx-Class-EncodedColumn SUBDIR += p5-DBIx-Class-Fixtures SUBDIR += p5-DBIx-Class-FrozenColumns SUBDIR += p5-DBIx-Class-Helpers SUBDIR += p5-DBIx-Class-InflateColumn-Authen-Passphrase SUBDIR += p5-DBIx-Class-InflateColumn-FS SUBDIR += p5-DBIx-Class-InflateColumn-IP SUBDIR += p5-DBIx-Class-IntrospectableM2M SUBDIR += p5-DBIx-Class-Loader SUBDIR += p5-DBIx-Class-Migration SUBDIR += p5-DBIx-Class-MooseColumns SUBDIR += p5-DBIx-Class-PassphraseColumn SUBDIR += p5-DBIx-Class-QueryLog SUBDIR += p5-DBIx-Class-QueryProfiler SUBDIR += p5-DBIx-Class-ResultSet-HashRef SUBDIR += p5-DBIx-Class-ResultSet-RecursiveUpdate SUBDIR += p5-DBIx-Class-Schema-Config SUBDIR += p5-DBIx-Class-Schema-Loader SUBDIR += p5-DBIx-Class-Schema-PopulateMore SUBDIR += p5-DBIx-Class-TimeStamp SUBDIR += p5-DBIx-Class-Tree SUBDIR += p5-DBIx-Class-Tree-NestedSet SUBDIR += p5-DBIx-Class-UUIDColumns SUBDIR += p5-DBIx-Class-VirtualColumns SUBDIR += p5-DBIx-Class-WebForm SUBDIR += p5-DBIx-Connector SUBDIR += p5-DBIx-ContextualFetch SUBDIR += p5-DBIx-Custom SUBDIR += p5-DBIx-DBHResolver SUBDIR += p5-DBIx-DBSchema SUBDIR += p5-DBIx-DataSource SUBDIR += p5-DBIx-Dump SUBDIR += p5-DBIx-Ease SUBDIR += p5-DBIx-HA SUBDIR += p5-DBIx-Handler SUBDIR += p5-DBIx-Inspector SUBDIR += p5-DBIx-Introspector SUBDIR += p5-DBIx-Lite SUBDIR += p5-DBIx-Log4perl SUBDIR += p5-DBIx-MySQLSequence SUBDIR += p5-DBIx-NoSQL SUBDIR += p5-DBIx-Password SUBDIR += p5-DBIx-Perlish SUBDIR += p5-DBIx-QueryLog SUBDIR += p5-DBIx-Recordset SUBDIR += p5-DBIx-RetryOverDisconnects SUBDIR += p5-DBIx-SQLEngine SUBDIR += p5-DBIx-SQLite-Simple SUBDIR += p5-DBIx-Safe SUBDIR += p5-DBIx-SearchBuilder SUBDIR += p5-DBIx-Sequence SUBDIR += p5-DBIx-Simple SUBDIR += p5-DBIx-Skinny SUBDIR += p5-DBIx-Skinny-InflateColumn-DateTime SUBDIR += p5-DBIx-Skinny-Mixin-DBHResolver SUBDIR += p5-DBIx-Skinny-Pager SUBDIR += p5-DBIx-Skinny-Schema-Loader SUBDIR += p5-DBIx-Sunny SUBDIR += p5-DBIx-TableHash SUBDIR += p5-DBIx-TransactionManager SUBDIR += p5-DBIx-Tree SUBDIR += p5-DBIx-VersionedDDL SUBDIR += p5-DBIx-Wrapper SUBDIR += p5-DBIx-XHTML_Table SUBDIR += p5-DBIx-XML_RDB SUBDIR += p5-DBM-Deep SUBDIR += p5-DMOZ-ParseRDF SUBDIR += p5-DR-Tarantool SUBDIR += p5-DWH_File SUBDIR += p5-Dancer-Plugin-DBIC SUBDIR += p5-Dancer-Plugin-Database SUBDIR += p5-Dancer-Plugin-Database-Core SUBDIR += p5-Dancer-Plugin-Redis SUBDIR += p5-Dancer-Session-Memcached SUBDIR += p5-Dancer2-Plugin-DBIC SUBDIR += p5-Dancer2-Plugin-Database SUBDIR += p5-Dancer2-Session-DBIC SUBDIR += p5-Data-Page SUBDIR += p5-Data-Pageset SUBDIR += p5-Exception-Class-DBI SUBDIR += p5-File-Locate SUBDIR += p5-GDBM SUBDIR += p5-Genezzo SUBDIR += p5-GitDDL SUBDIR += p5-GitDDL-Migrator SUBDIR += p5-GraphViz-DBI SUBDIR += p5-HTML-FormHandler-Model-DBIC SUBDIR += p5-Ima-DBI SUBDIR += p5-Interchange6-Schema SUBDIR += p5-Iterator-DBI SUBDIR += p5-Jifty-DBI SUBDIR += p5-KyotoCabinet SUBDIR += p5-LMDB_File SUBDIR += p5-MLDBM SUBDIR += p5-MLDBM-Sync SUBDIR += p5-MR-Tarantool SUBDIR += p5-Mango SUBDIR += p5-Memcached-libmemcached SUBDIR += p5-Metadata SUBDIR += p5-Mojo-Pg SUBDIR += p5-MongoDB SUBDIR += p5-MySQL-Diff SUBDIR += p5-Net-Async-CassandraCQL SUBDIR += p5-ORLite SUBDIR += p5-ORLite-Migrate SUBDIR += p5-Oryx SUBDIR += p5-POE-Component-DBIAgent SUBDIR += p5-POE-Component-EasyDBI SUBDIR += p5-POE-Component-LaDBI SUBDIR += p5-POE-Component-RRDTool SUBDIR += p5-Pg SUBDIR += p5-PostgreSQL-PLPerl-Call SUBDIR += p5-PostgreSQL-PLPerl-Trace SUBDIR += p5-Prophet SUBDIR += p5-Protocol-CassandraCQL SUBDIR += p5-RRD-Simple SUBDIR += p5-Redis SUBDIR += p5-Redis-hiredis SUBDIR += p5-RedisDB SUBDIR += p5-RedisDB-Parser SUBDIR += p5-Relations SUBDIR += p5-Relations-Query SUBDIR += p5-ResourcePool-Resource-DBI SUBDIR += p5-Rose-DB SUBDIR += p5-Rose-DB-Object SUBDIR += p5-Rose-DBx-Object-MoreHelpers SUBDIR += p5-Rose-DBx-Object-Renderer SUBDIR += p5-SQL-Abstract SUBDIR += p5-SQL-Abstract-Limit SUBDIR += p5-SQL-Abstract-More SUBDIR += p5-SQL-Abstract-Plugin-InsertMulti SUBDIR += p5-SQL-Interp SUBDIR += p5-SQL-Maker SUBDIR += p5-SQL-ReservedWords SUBDIR += p5-SQL-Statement SUBDIR += p5-SQL-Translator SUBDIR += p5-SQLite-Work SUBDIR += p5-Search-InvertedIndex SUBDIR += p5-Search-Namazu SUBDIR += p5-Search-Xapian10 SUBDIR += p5-Search-Xapian12 SUBDIR += p5-Store-CouchDB SUBDIR += p5-T2 SUBDIR += p5-Tangram SUBDIR += p5-Template-DBI SUBDIR += p5-Teng SUBDIR += p5-Test-Cukes SUBDIR += p5-Test-Database SUBDIR += p5-Test-DatabaseRow SUBDIR += p5-Test-Fixture-DBI SUBDIR += p5-Test-mysqld SUBDIR += p5-Test-postgresql SUBDIR += p5-Text-Query-SQL SUBDIR += p5-Text-xSV SUBDIR += p5-Tie-DBI SUBDIR += p5-Tie-LevelDB SUBDIR += p5-Time-Piece-MySQL SUBDIR += p5-TokyoCabinet SUBDIR += p5-Xapian SUBDIR += p5-mysql-genocide SUBDIR += p5-tokyotyrant SUBDIR += pear-DB SUBDIR += pear-DBA SUBDIR += pear-DBA_Relational SUBDIR += pear-DB_DataObject SUBDIR += pear-DB_DataObject_FormBuilder SUBDIR += pear-DB_Pager SUBDIR += pear-DB_QueryTool SUBDIR += pear-DB_Sqlite_Tools SUBDIR += pear-DB_Table SUBDIR += pear-DB_ldap SUBDIR += pear-DB_ldap2 SUBDIR += pear-DoctrineCommon SUBDIR += pear-DoctrineDBAL SUBDIR += pear-DoctrineORM SUBDIR += pear-Horde_Db SUBDIR += pear-Horde_HashTable SUBDIR += pear-Horde_Imsp SUBDIR += pear-Horde_Memcache SUBDIR += pear-Horde_Mongo SUBDIR += pear-MDB SUBDIR += pear-MDB2 SUBDIR += pear-MDB2_Driver_mysql SUBDIR += pear-MDB2_Driver_mysqli SUBDIR += pear-MDB2_Driver_pgsql SUBDIR += pear-MDB2_Schema SUBDIR += pear-MDB_QueryTool SUBDIR += pear-Structures_DataGrid_DataSource_Array SUBDIR += pear-Structures_DataGrid_DataSource_CSV SUBDIR += pear-Structures_DataGrid_DataSource_DB SUBDIR += pear-Structures_DataGrid_DataSource_DBQuery SUBDIR += pear-Structures_DataGrid_DataSource_DBTable SUBDIR += pear-Structures_DataGrid_DataSource_DataObject SUBDIR += pear-Structures_DataGrid_DataSource_MDB2 SUBDIR += pear-Structures_DataGrid_DataSource_PDO SUBDIR += pear-XML_Query2XML SUBDIR += pecl-cassandra SUBDIR += pecl-chdb SUBDIR += pecl-couchbase SUBDIR += pecl-dbase SUBDIR += pecl-drizzle SUBDIR += pecl-leveldb SUBDIR += pecl-memcache SUBDIR += pecl-memcached SUBDIR += pecl-memcached2 SUBDIR += pecl-mongo SUBDIR += pecl-mongodb SUBDIR += pecl-pdo_user SUBDIR += pecl-redis SUBDIR += pecl-redis3 SUBDIR += pecl-rrd SUBDIR += pecl-rrd1 SUBDIR += pecl-tokyo_tyrant SUBDIR += percona-pam-for-mysql SUBDIR += percona-toolkit SUBDIR += percona55-client SUBDIR += percona55-server SUBDIR += percona56-client SUBDIR += percona56-server SUBDIR += percona57-client SUBDIR += percona57-pam-for-mysql SUBDIR += percona57-server SUBDIR += pgFormatter SUBDIR += pg_activity SUBDIR += pg_citus SUBDIR += pg_dirtyread SUBDIR += pg_partman SUBDIR += pg_qualstats SUBDIR += pg_reorg SUBDIR += pg_repack SUBDIR += pg_stat_kcache SUBDIR += pgaccess SUBDIR += pgadmin3 SUBDIR += pgagent SUBDIR += pgbadger SUBDIR += pgbarman SUBDIR += pgbouncer SUBDIR += pgdbf SUBDIR += pgespresso SUBDIR += pgfouine SUBDIR += pgloader SUBDIR += pgloader3 SUBDIR += pglogical SUBDIR += pgmetrics SUBDIR += pgmodeler SUBDIR += pgpool SUBDIR += pgpool-II-33 SUBDIR += pgpool-II-35 SUBDIR += pgpool-II-36 SUBDIR += pgpool-II-37 SUBDIR += pgreplay SUBDIR += pgroonga SUBDIR += pgrouting SUBDIR += pgsanity SUBDIR += pgsphere SUBDIR += pgtcl SUBDIR += pgtop SUBDIR += pgtune SUBDIR += pguri SUBDIR += pgworksheet SUBDIR += php-mdcached SUBDIR += php-memcache SUBDIR += php-xapian SUBDIR += php5-pdo_cassandra SUBDIR += php5-tarantool SUBDIR += php56-dba SUBDIR += php56-interbase SUBDIR += php56-mssql SUBDIR += php56-mysql SUBDIR += php56-mysqli SUBDIR += php56-odbc SUBDIR += php56-pdo SUBDIR += php56-pdo_dblib SUBDIR += php56-pdo_firebird SUBDIR += php56-pdo_mysql SUBDIR += php56-pdo_odbc SUBDIR += php56-pdo_pgsql SUBDIR += php56-pdo_sqlite SUBDIR += php56-pgsql SUBDIR += php56-sqlite3 SUBDIR += php56-sybase_ct SUBDIR += php7-tarantool SUBDIR += php70-dba SUBDIR += php70-interbase SUBDIR += php70-mysqli SUBDIR += php70-odbc SUBDIR += php70-pdo SUBDIR += php70-pdo_dblib SUBDIR += php70-pdo_firebird SUBDIR += php70-pdo_mysql SUBDIR += php70-pdo_odbc SUBDIR += php70-pdo_pgsql SUBDIR += php70-pdo_sqlite SUBDIR += php70-pgsql SUBDIR += php70-sqlite3 SUBDIR += php71-dba SUBDIR += php71-interbase SUBDIR += php71-mysqli SUBDIR += php71-odbc SUBDIR += php71-pdo SUBDIR += php71-pdo_dblib SUBDIR += php71-pdo_firebird SUBDIR += php71-pdo_mysql SUBDIR += php71-pdo_odbc SUBDIR += php71-pdo_pgsql SUBDIR += php71-pdo_sqlite SUBDIR += php71-pgsql SUBDIR += php71-sqlite3 SUBDIR += php72-dba SUBDIR += php72-interbase SUBDIR += php72-mysqli SUBDIR += php72-odbc SUBDIR += php72-pdo SUBDIR += php72-pdo_dblib SUBDIR += php72-pdo_firebird SUBDIR += php72-pdo_mysql SUBDIR += php72-pdo_odbc SUBDIR += php72-pdo_pgsql SUBDIR += php72-pdo_sqlite SUBDIR += php72-pgsql SUBDIR += php72-sqlite3 SUBDIR += phpliteadmin SUBDIR += phpminiadmin SUBDIR += phpmyadmin SUBDIR += phppgadmin SUBDIR += pldebugger SUBDIR += plpgsql_check SUBDIR += pointcloud SUBDIR += postgis-jdbc SUBDIR += postgis20 SUBDIR += postgis21 SUBDIR += postgis22 SUBDIR += postgis23 SUBDIR += postgis24 SUBDIR += postgres-xl SUBDIR += postgresql-cstore_fdw SUBDIR += postgresql-jdbc SUBDIR += postgresql-libpgeasy SUBDIR += postgresql-libpqxx SUBDIR += postgresql-libpqxx3 SUBDIR += postgresql-libpqxx4 SUBDIR += postgresql-mysql_fdw SUBDIR += postgresql-odbc SUBDIR += postgresql-orafce SUBDIR += postgresql-plproxy SUBDIR += postgresql-plruby SUBDIR += postgresql-plv8js SUBDIR += postgresql-relay SUBDIR += postgresql-repmgr SUBDIR += postgresql-tds_fdw SUBDIR += postgresql-zhparser SUBDIR += postgresql10-client SUBDIR += postgresql10-contrib SUBDIR += postgresql10-docs SUBDIR += postgresql10-pgtcl SUBDIR += postgresql10-plperl SUBDIR += postgresql10-plpython SUBDIR += postgresql10-pltcl SUBDIR += postgresql10-server SUBDIR += postgresql93-client SUBDIR += postgresql93-contrib SUBDIR += postgresql93-docs SUBDIR += postgresql93-pgtcl SUBDIR += postgresql93-plperl SUBDIR += postgresql93-plpython SUBDIR += postgresql93-pltcl SUBDIR += postgresql93-server SUBDIR += postgresql94-client SUBDIR += postgresql94-contrib SUBDIR += postgresql94-docs SUBDIR += postgresql94-pgtcl SUBDIR += postgresql94-plperl SUBDIR += postgresql94-plpython SUBDIR += postgresql94-pltcl SUBDIR += postgresql94-server SUBDIR += postgresql95-client SUBDIR += postgresql95-contrib SUBDIR += postgresql95-docs SUBDIR += postgresql95-pgtcl SUBDIR += postgresql95-plperl SUBDIR += postgresql95-plpython SUBDIR += postgresql95-pltcl SUBDIR += postgresql95-server SUBDIR += postgresql96-client SUBDIR += postgresql96-contrib SUBDIR += postgresql96-docs SUBDIR += postgresql96-pgtcl SUBDIR += postgresql96-plperl SUBDIR += postgresql96-plpython SUBDIR += postgresql96-pltcl SUBDIR += postgresql96-server SUBDIR += powa-archivist SUBDIR += powa-web SUBDIR += powerarchitect SUBDIR += proftpd-mod_sql_mysql SUBDIR += proftpd-mod_sql_odbc SUBDIR += proftpd-mod_sql_postgres SUBDIR += proftpd-mod_sql_sqlite SUBDIR += proftpd-mod_sql_tds SUBDIR += pspg SUBDIR += puppetdb-terminus4 SUBDIR += puppetdb-terminus5 SUBDIR += puppetdb4 SUBDIR += puppetdb5 SUBDIR += pure-sql3 SUBDIR += puredb SUBDIR += pxlib SUBDIR += pxtools SUBDIR += py-Elixir SUBDIR += py-MySQLdb SUBDIR += py-MySQLdb55 SUBDIR += py-MySQLdb56 SUBDIR += py-PyGreSQL SUBDIR += py-Pyrseas SUBDIR += py-agate-sql SUBDIR += py-alembic SUBDIR += py-apsw SUBDIR += py-bsddb SUBDIR += py-bsddb3 SUBDIR += py-carbon SUBDIR += py-cdb SUBDIR += py-couchdb SUBDIR += py-cql SUBDIR += py-dbf SUBDIR += py-dbutils SUBDIR += py-django-transaction-hooks SUBDIR += py-fakeredis SUBDIR += py-fdb SUBDIR += py-firebirdsql SUBDIR += py-flask-sqlalchemy SUBDIR += py-forgetsql SUBDIR += py-gdbm SUBDIR += py-geoalchemy SUBDIR += py-geoalchemy2 SUBDIR += py-hiredis SUBDIR += py-htsql SUBDIR += py-htsql-mysql SUBDIR += py-htsql-pgsql SUBDIR += py-influxdb SUBDIR += py-kyotocabinet SUBDIR += py-leveldb SUBDIR += py-lmdb SUBDIR += py-marshmallow-sqlalchemy SUBDIR += py-motor SUBDIR += py-mycli SUBDIR += py-mysql-connector-python SUBDIR += py-mysql-connector-python2 SUBDIR += py-mysql2pgsql SUBDIR += py-mysqlclient SUBDIR += py-oops SUBDIR += py-oursql SUBDIR += py-peewee SUBDIR += py-pg8000 SUBDIR += py-pg_pqueue SUBDIR += py-pgcli SUBDIR += py-pglite SUBDIR += py-pgspecial SUBDIR += py-pgxnclient SUBDIR += py-pickledb SUBDIR += py-pickleshare SUBDIR += py-postgresql SUBDIR += py-psycogreen SUBDIR += py-psycopg2 SUBDIR += py-psycopg2cffi SUBDIR += py-pum SUBDIR += py-pyPgSQL SUBDIR += py-pyhs SUBDIR += py-pylibmc SUBDIR += py-pymssql SUBDIR += py-pymysql SUBDIR += py-pyodbc SUBDIR += py-pypuppetdb SUBDIR += py-pypuppetdb03 SUBDIR += py-pytc SUBDIR += py-python-arango SUBDIR += py-python-memcached SUBDIR += py-python-rrdtool SUBDIR += py-python-sql SUBDIR += py-python-swiftclient SUBDIR += py-qt4-sql SUBDIR += py-qt5-sql SUBDIR += py-queries SUBDIR += py-rb SUBDIR += py-redis SUBDIR += py-riak SUBDIR += py-rrdtool_lgpl SUBDIR += py-sispy SUBDIR += py-south SUBDIR += py-sqlalchemy-migrate SUBDIR += py-sqlalchemy10 SUBDIR += py-sqlalchemy11 SUBDIR += py-sqlalchemy12 SUBDIR += py-sqlite3 SUBDIR += py-sqlite3dbm SUBDIR += py-sqlobject SUBDIR += py-sqlparse SUBDIR += py-sqlparse01 SUBDIR += py-sqlparse020 SUBDIR += py-sqlrelay SUBDIR += py-swift SUBDIR += py-sybase SUBDIR += py-tarantool SUBDIR += py-umemcache SUBDIR += py-unqlite SUBDIR += py-varstack SUBDIR += py-whisper SUBDIR += py-xapian SUBDIR += py-zodbpickle SUBDIR += pydbx SUBDIR += pymongo SUBDIR += pypy-gdbm SUBDIR += pypy-sqlite3 SUBDIR += pyspatialite SUBDIR += qdbm SUBDIR += qdbm-plus SUBDIR += qof SUBDIR += qt4-ibase-plugin SUBDIR += qt4-mysql-plugin SUBDIR += qt4-odbc-plugin SUBDIR += qt4-pgsql-plugin SUBDIR += qt4-sql SUBDIR += qt4-sqlite-plugin SUBDIR += qt4-sqlite3-plugin SUBDIR += qt5-sql SUBDIR += qt5-sqldrivers-ibase SUBDIR += qt5-sqldrivers-mysql SUBDIR += qt5-sqldrivers-odbc SUBDIR += qt5-sqldrivers-pgsql SUBDIR += qt5-sqldrivers-sqlite2 SUBDIR += qt5-sqldrivers-sqlite3 SUBDIR += qt5-sqldrivers-tds SUBDIR += radix.v2 SUBDIR += rdb SUBDIR += rdfdb SUBDIR += recutils SUBDIR += redigo SUBDIR += redis SUBDIR += redis-devel SUBDIR += redisdesktopmanager SUBDIR += retcl SUBDIR += riak SUBDIR += riak2 SUBDIR += rocksdb SUBDIR += rocksdb-lite SUBDIR += rrdman SUBDIR += rrdmerge SUBDIR += rrdtool SUBDIR += rrdtool12 SUBDIR += ruby-bdb SUBDIR += ruby-gdbm SUBDIR += ruby-mysql SUBDIR += ruby-odbc SUBDIR += ruby-qdbm SUBDIR += ruby-tokyocabinet SUBDIR += ruby-xapian SUBDIR += rubygem-active_model_serializers SUBDIR += rubygem-active_record_query_trace SUBDIR += rubygem-activemodel-serializers-xml SUBDIR += rubygem-activemodel4 SUBDIR += rubygem-activemodel5 SUBDIR += rubygem-activemodel50 SUBDIR += rubygem-activerecord-import SUBDIR += rubygem-activerecord-jdbc-adapter SUBDIR += rubygem-activerecord-jdbcmysql-adapter SUBDIR += rubygem-activerecord-session_store SUBDIR += rubygem-activerecord4 SUBDIR += rubygem-activerecord5 SUBDIR += rubygem-activerecord50 SUBDIR += rubygem-after_commit_queue SUBDIR += rubygem-amalgalite SUBDIR += rubygem-arel SUBDIR += rubygem-arel-helpers SUBDIR += rubygem-arel6 SUBDIR += rubygem-arel7 SUBDIR += rubygem-arel8 SUBDIR += rubygem-awesome_nested_set SUBDIR += rubygem-bdb1 SUBDIR += rubygem-bigrecord SUBDIR += rubygem-couchrest SUBDIR += rubygem-data_objects SUBDIR += rubygem-datamapper SUBDIR += rubygem-dbd-mysql SUBDIR += rubygem-dbd-odbc SUBDIR += rubygem-dbd-pg SUBDIR += rubygem-dbd-sqlite3 SUBDIR += rubygem-dbf SUBDIR += rubygem-dbi SUBDIR += rubygem-dm-aggregates SUBDIR += rubygem-dm-chunked_query SUBDIR += rubygem-dm-constraints SUBDIR += rubygem-dm-core SUBDIR += rubygem-dm-do-adapter SUBDIR += rubygem-dm-migrations SUBDIR += rubygem-dm-mysql-adapter SUBDIR += rubygem-dm-observer SUBDIR += rubygem-dm-pager SUBDIR += rubygem-dm-paperclip SUBDIR += rubygem-dm-postgres-adapter SUBDIR += rubygem-dm-serializer SUBDIR += rubygem-dm-timestamps SUBDIR += rubygem-dm-transactions SUBDIR += rubygem-dm-types SUBDIR += rubygem-dm-validations SUBDIR += rubygem-do_mysql SUBDIR += rubygem-do_postgres SUBDIR += rubygem-do_sqlite3 SUBDIR += rubygem-em-redis-unified SUBDIR += rubygem-familia SUBDIR += rubygem-flipper-active_record SUBDIR += rubygem-flipper-active_record011 SUBDIR += rubygem-flipper-active_record013 SUBDIR += rubygem-globalid SUBDIR += rubygem-globalid-rails5 SUBDIR += rubygem-globalid-rails50 SUBDIR += rubygem-her SUBDIR += rubygem-hiredis SUBDIR += rubygem-jdbc-mysql SUBDIR += rubygem-leo_manager_client SUBDIR += rubygem-mario-redis-lock SUBDIR += rubygem-memcache SUBDIR += rubygem-memcache-client SUBDIR += rubygem-mysql SUBDIR += rubygem-mysql2 SUBDIR += rubygem-openid-redis-store SUBDIR += rubygem-paranoia SUBDIR += rubygem-peek-mysql2 SUBDIR += rubygem-peek-pg SUBDIR += rubygem-pg SUBDIR += rubygem-pg_array_parser SUBDIR += rubygem-pg0 SUBDIR += rubygem-pg018 SUBDIR += rubygem-pghero SUBDIR += rubygem-pghero-rails5 SUBDIR += rubygem-pghero-rails50 SUBDIR += rubygem-postgres_ext SUBDIR += rubygem-rbase SUBDIR += rubygem-redis SUBDIR += rubygem-redis-actionpack SUBDIR += rubygem-redis-actionpack-rails5 SUBDIR += rubygem-redis-actionpack-rails50 SUBDIR += rubygem-redis-namespace SUBDIR += rubygem-redis-namespace15 SUBDIR += rubygem-redis3 SUBDIR += rubygem-seed-fu SUBDIR += rubygem-sqlite3 SUBDIR += rubygem-sqlite3-ruby SUBDIR += rubygem-state_machines-activemodel SUBDIR += rubygem-state_machines-activerecord SUBDIR += rubygem-tarantool SUBDIR += sfcgal SUBDIR += sharedance SUBDIR += skytools SUBDIR += slony1v2 SUBDIR += soci SUBDIR += spatialite SUBDIR += spatialite-tools SUBDIR += spatialite_gui SUBDIR += speedtables SUBDIR += sql-workbench SUBDIR += sqlbuddy SUBDIR += sqlcached SUBDIR += sqlcipher SUBDIR += sqlclient SUBDIR += sqldeveloper SUBDIR += sqlite-ext-miscfuncs SUBDIR += sqlite-ext-pcre SUBDIR += sqlite-ext-regexp SUBDIR += sqlite-ext-spellfix SUBDIR += sqlite2 SUBDIR += sqlite3 SUBDIR += sqlitebrowser SUBDIR += sqliteconvert SUBDIR += sqliteman SUBDIR += sqlitemanager SUBDIR += sqliteodbc SUBDIR += sqliteodbc-sqlite2 SUBDIR += sqlitestudio SUBDIR += sqlrelay SUBDIR += sqsh SUBDIR += squirrel-sql SUBDIR += tablelog SUBDIR += tarantool SUBDIR += tarantool-c SUBDIR += tcl-Mysql SUBDIR += tcl-lmdb SUBDIR += tcl-sqlite3 SUBDIR += tdb SUBDIR += tdbc SUBDIR += tile38 SUBDIR += timescaledb SUBDIR += tinycdb SUBDIR += tokyocabinet SUBDIR += tokyotyrant SUBDIR += tora SUBDIR += tsearch_extras SUBDIR += tuning-primer SUBDIR += twemproxy SUBDIR += unixODBC SUBDIR += useracc SUBDIR += usql SUBDIR += vfront SUBDIR += virtualpg SUBDIR += virtuoso SUBDIR += vsqlite SUBDIR += wfb2sql SUBDIR += wmjsql SUBDIR += xapian-bindings SUBDIR += xapian-bindings12 SUBDIR += xapian-core SUBDIR += xapian-core10 SUBDIR += xapian-core12 SUBDIR += xtrabackup SUBDIR += zabbix22-libzbxpgsql SUBDIR += zabbix3-libzbxpgsql SUBDIR += zabbix32-libzbxpgsql SUBDIR += zabbix34-libzbxpgsql SUBDIR += zodb3 .include Index: head/databases/foundationdb/Makefile =================================================================== --- head/databases/foundationdb/Makefile (nonexistent) +++ head/databases/foundationdb/Makefile (revision 468809) @@ -0,0 +1,55 @@ +# Created by: vanilla@ +# $FreeBSD$ + +PORTNAME= foundationdb +PORTVERSION= 5.1.7 +CATEGORIES= databases + +MAINTAINER= vanilla@FreeBSD.org +COMMENT= Distributed, transactional key-value store + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +ONLY_FOR_ARCHS= amd64 +ONLY_FOR_ARCHS_REASON= not yet ported to anything other than amd64 + +BUILD_DEPENDS= bash:shells/bash +LIB_DEPENDS= libboost_system.so:devel/boost-libs \ + libeio.so:devel/libeio + +USES= gmake mono python:build shebangfix +USE_GITHUB= yes +GH_ACCOUNT= apple +USE_RC_SUBR= foundationdb +SHEBANG_FILES= build/link-wrapper.sh bindings/c/generate_asm.py +MAKE_ENV+= PYTHON=${PYTHON_CMD} + +USERS= ${PORTNAME} +GROUPS= ${PORTNAME} +DBDIR?= /var/db/foundationdb +LOGDIR?= /var/log/foundationdb + +PLIST_SUB+= DB_USER=${USERS} \ + DB_GROUP=${GROUPS} \ + DB_DIR=${DBDIR} \ + LOG_DIR=${LOGDIR} + +post-patch: + @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/foundationdb.conf + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/bin/fdbbackup ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/bin/fdbcli ${STAGEDIR}${PREFIX}/bin + ${LN} -sf ${PREFIX}/bin/fdbbackup ${STAGEDIR}${PREFIX}/bin/fdbrestore + ${INSTALL_PROGRAM} ${WRKSRC}/bin/fdbmonitor ${STAGEDIR}${PREFIX}/sbin + ${INSTALL_PROGRAM} ${WRKSRC}/bin/fdbserver ${STAGEDIR}${PREFIX}/sbin + @${MKDIR} ${STAGEDIR}${PREFIX}/lib/foundationdb + @${MKDIR} ${STAGEDIR}${PREFIX}/lib/foundationdb/backup_agent + ${LN} -sf ${PREFIX}/bin/fdbbackup ${STAGEDIR}${PREFIX}/lib/foundationdb/backup_agent/backup_agent + @${MKDIR} ${STAGEDIR}${PREFIX}/etc/foundationdb + ${INSTALL_DATA} ${WRKSRC}/foundationdb.conf ${STAGEDIR}${PREFIX}/etc/foundationdb/foundationdb.conf.sample + @${MKDIR} ${STAGEDIR}${DBDIR} + @${MKDIR} ${STAGEDIR}${LOGDIR} + +.include Property changes on: head/databases/foundationdb/Makefile ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/distinfo =================================================================== --- head/databases/foundationdb/distinfo (nonexistent) +++ head/databases/foundationdb/distinfo (revision 468809) @@ -0,0 +1,3 @@ +TIMESTAMP = 1524403792 +SHA256 (apple-foundationdb-5.1.7_GH0.tar.gz) = 6dd8b391527fc8070c9714117e0ed2ced50d993b20d64f3f2981bf9ef8734870 +SIZE (apple-foundationdb-5.1.7_GH0.tar.gz) = 3982458 Property changes on: head/databases/foundationdb/distinfo ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/foundationdb.in =================================================================== --- head/databases/foundationdb/files/foundationdb.in (nonexistent) +++ head/databases/foundationdb/files/foundationdb.in (revision 468809) @@ -0,0 +1,33 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: founationdb +# REQUIRE: LOGIN +# BEFORE: securelevel +# KEYWORD: shutdown + +# Add the following line to /etc/rc.conf to enable `foundationdb': +# +#foundationdb_enable="YES" +# +# Define config file here to run with different config file: +# +#foundationdb_config="xxxxx" +# + +. /etc/rc.subr + +name="foundationdb" +rcvar="${name}_enable" +trafficserver_enable=${trafficserver_enable:-"NO"} +command=/usr/local/sbin/fdbmonitor +pidfile="/var/run/fdbmonitor.pid" + +load_rc_config "$name" +: ${foundationdb_enable="NO"} +: ${foundationdb_config="%%PREFIX%%/etc/foundationdb/foundationdb.conf"} + +command_args="--conffile ${foundationdb_config} --lockfile ${pidfile} --daemonize" +run_rc_command $1 Property changes on: head/databases/foundationdb/files/foundationdb.in ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-FDBLibTLS_local.mk =================================================================== --- head/databases/foundationdb/files/patch-FDBLibTLS_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-FDBLibTLS_local.mk (revision 468809) @@ -0,0 +1,12 @@ +--- FDBLibTLS/local.mk.orig 2018-04-19 02:55:50 UTC ++++ FDBLibTLS/local.mk +@@ -1,6 +1,6 @@ +-FDBLibTLS_CFLAGS := -fPIC -I/usr/local/include -I$(BOOSTDIR) +-FDBLibTLS_STATIC_LIBS := -ltls -lssl -lcrypto +-FDBLibTLS_LDFLAGS := -L/usr/local/lib -static-libstdc++ -static-libgcc -lrt ++FDBLibTLS_CFLAGS := -fPIC -I/usr/local/include -I$(BOOSTDIR)/include ++FDBLibTLS_LIBS := -lssl -lcrypto ++FDBLibTLS_LDFLAGS := -lc++ + FDBLibTLS_LDFLAGS += -Wl,-soname,FDBLibTLS.so -Wl,--version-script=FDBLibTLS/FDBLibTLS.map + + # The plugin isn't a typical library, so it feels more sensible to have a copy Property changes on: head/databases/foundationdb/files/patch-FDBLibTLS_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-Makefile =================================================================== --- head/databases/foundationdb/files/patch-Makefile (nonexistent) +++ head/databases/foundationdb/files/patch-Makefile (revision 468809) @@ -0,0 +1,77 @@ +--- Makefile.orig 2018-04-19 02:55:50 UTC ++++ Makefile +@@ -6,6 +6,8 @@ TOPDIR := $(shell pwd) + + ifeq ($(ARCH),x86_64) + ARCH := x64 ++else ifeq ($(ARCH),amd64) ++ ARCH := x64 + else + $(error Not prepared to compile on $(ARCH)) + endif +@@ -15,7 +17,7 @@ ifeq ($(MONO),) + MONO := /usr/bin/mono + endif + +-MCS := $(shell which dmcs) ++MCS := $(shell which mcs) + ifeq ($(MCS),) + MCS := /usr/bin/dmcs + endif +@@ -40,6 +42,15 @@ ifeq ($(PLATFORM),Linux) + DLEXT := so + java_DLEXT := so + TARGET_LIBC_VERSION ?= 2.11 ++else ifeq ($(PLATFORM),FreeBSD) ++ PLATFORM := freebsd ++ ++ CFLAGS += -DPREFIX=\"$(PREFIX)\" -DCONFDIR=\"$(PREFIX)/etc/foundationdb\" ++ CXXFLAGS += -std=c++11 -stdlib=libc++ -Wno-undefined-var-template -Wno-unknown-warning-option -msse4.2 ++ ++ BOOSTDIR ?= $(PREFIX) ++ DLEXT := so ++ java_DLEXT := so + else ifeq ($(PLATFORM),Darwin) + PLATFORM := osx + +@@ -92,7 +103,7 @@ STATIC_LIBS := + VPATH += $(addprefix :,$(filter-out lib,$(patsubst -L%,%,$(filter -L%,$(LDFLAGS))))) + + CS_PROJECTS := flow/actorcompiler flow/coveragetool fdbclient/vexillographer +-CPP_PROJECTS := flow fdbrpc fdbclient fdbbackup fdbserver fdbcli bindings/c bindings/java fdbmonitor bindings/flow/tester bindings/flow FDBLibTLS ++CPP_PROJECTS := flow fdbrpc fdbclient fdbbackup fdbserver fdbcli bindings/c fdbmonitor bindings/flow/tester bindings/flow + OTHER_PROJECTS := bindings/python bindings/ruby bindings/go + + CS_MK_GENERATED := $(CS_PROJECTS:=/generated.mk) +@@ -101,7 +112,7 @@ CPP_MK_GENERATED := $(CPP_PROJECTS:=/gen + MK_GENERATED := $(CS_MK_GENERATED) $(CPP_MK_GENERATED) + + # build/valgrind.mk needs to be included before any _MK_GENERATED (which in turn includes local.mk) +-MK_INCLUDE := build/scver.mk build/valgrind.mk $(CS_MK_GENERATED) $(CPP_MK_GENERATED) $(OTHER_PROJECTS:=/include.mk) build/packages.mk ++MK_INCLUDE := $(CS_MK_GENERATED) $(CPP_MK_GENERATED) + + ALL_MAKEFILES := Makefile $(MK_INCLUDE) $(patsubst %/generated.mk,%/local.mk,$(MK_GENERATED)) + +@@ -111,7 +122,7 @@ TARGETS = + + default: fdbserver fdbbackup fdbcli fdb_c fdb_python fdb_python_sdist + +-all: $(CS_PROJECTS) $(CPP_PROJECTS) $(OTHER_PROJECTS) ++all: $(CS_PROJECTS) $(CPP_PROJECTS) + + # These are always defined and ready to use. Any target that uses them and needs them up to date + # should depend on versions.target +@@ -133,11 +144,11 @@ Makefiles: $(MK_GENERATED) + + $(CS_MK_GENERATED): build/csprojtom4.py build/csproj.mk Makefile + @echo "Creating $@" +- @python build/csprojtom4.py $(@D)/*.csproj | m4 -DGENDIR="$(@D)" -DGENNAME=`basename $(@D)/*.csproj .csproj` - build/csproj.mk > $(@D)/generated.mk ++ @$(PYTHON) build/csprojtom4.py $(@D)/*.csproj | m4 -DGENDIR="$(@D)" -DGENNAME=`basename $(@D)/*.csproj .csproj` - build/csproj.mk > $(@D)/generated.mk + + $(CPP_MK_GENERATED): build/vcxprojtom4.py build/vcxproj.mk Makefile + @echo "Creating $@" +- @python build/vcxprojtom4.py $(@D)/*.vcxproj | m4 -DGENDIR="$(@D)" -DGENNAME=`basename $(@D)/*.vcxproj .vcxproj` - build/vcxproj.mk > $(@D)/generated.mk ++ @$(PYTHON) build/vcxprojtom4.py $(@D)/*.vcxproj | m4 -DGENDIR="$(@D)" -DGENNAME=`basename $(@D)/*.vcxproj .vcxproj` - build/vcxproj.mk > $(@D)/generated.mk + + DEPSDIR := .deps + OBJDIR := .objs Property changes on: head/databases/foundationdb/files/patch-Makefile ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-build_link-wrapper.sh =================================================================== --- head/databases/foundationdb/files/patch-build_link-wrapper.sh (nonexistent) +++ head/databases/foundationdb/files/patch-build_link-wrapper.sh (revision 468809) @@ -0,0 +1,34 @@ +--- build/link-wrapper.sh.orig 2018-04-25 15:16:53 UTC ++++ build/link-wrapper.sh +@@ -8,6 +8,9 @@ case $1 in + + if [ "$1" = "DynamicLibrary" ]; then + OPTIONS="-shared" ++ if [ "$PLATFORM" = "freebsd" ]; then ++ OPTIONS="$OPTIONS -Wl,-z,noexecstack -Wl,-soname,$( basename $3 )" ++ fi + if [ "$PLATFORM" = "linux" ]; then + OPTIONS="$OPTIONS -Wl,-z,noexecstack -Wl,-soname,$( basename $3 )" + fi +@@ -43,6 +46,11 @@ case $1 in + case $1 in + Application) + case $PLATFORM in ++ freebsd) ++ objcopy --only-keep-debug $3 $3.debug ++ if [ -z "${NOSTRIP}" ]; then strip --strip-debug --strip-unneeded $3; fi ++ objcopy --add-gnu-debuglink=$3.debug $3 ++ ;; + linux) + objcopy --only-keep-debug $3 $3.debug + if [ -z "${NOSTRIP}" ]; then strip --strip-debug --strip-unneeded $3; fi +@@ -62,6 +70,9 @@ case $1 in + DynamicLibrary) + cp $3 $3-debug + case $PLATFORM in ++ freebsd) ++ if [ -z "${NOSTRIP}" ]; then strip --strip-all $3; fi ++ ;; + linux) + if [ -z "${NOSTRIP}" ]; then strip --strip-all $3; fi + ;; Property changes on: head/databases/foundationdb/files/patch-build_link-wrapper.sh ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbbackup_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbbackup_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbbackup_local.mk (revision 468809) @@ -0,0 +1,11 @@ +--- fdbbackup/local.mk.orig 2018-04-19 02:55:50 UTC ++++ fdbbackup/local.mk +@@ -34,6 +34,8 @@ ifeq ($(PLATFORM),linux) + # fdbbackup_STATIC_LIBS += -ltcmalloc -lunwind -lprofiler + else ifeq ($(PLATFORM),osx) + fdbbackup_LDFLAGS += -lc++ ++else ifeq ($(PLATFORM),freebsd) ++ fdbbackup_LDFLAGS += -lc++ -lm -lexecinfo -lpthread -leio + endif + + fdbbackup_GENERATED_SOURCES += versions.h Property changes on: head/databases/foundationdb/files/patch-fdbbackup_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbcli_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbcli_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbcli_local.mk (revision 468809) @@ -0,0 +1,20 @@ +--- fdbcli/local.mk.orig 2018-04-19 02:55:50 UTC ++++ fdbcli/local.mk +@@ -22,7 +22,7 @@ + + fdbcli_CFLAGS := $(fdbclient_CFLAGS) + fdbcli_LDFLAGS := $(fdbrpc_LDFLAGS) +-fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a -ldl ++fdbcli_LIBS := lib/libfdbclient.a lib/libfdbrpc.a lib/libflow.a + fdbcli_STATIC_LIBS := + + fdbcli_GENERATED_SOURCES += versions.h +@@ -32,6 +32,8 @@ ifeq ($(PLATFORM),linux) + fdbcli_LIBS += -lpthread -lrt + else ifeq ($(PLATFORM),osx) + fdbcli_LDFLAGS += -lc++ ++else ifeq ($(PLATFORM),freebsd) ++ fdbcli_LDFLAGS += -lc++ -lm -lpthread -leio -lexecinfo + endif + + test_fdbcli_status: fdbcli Property changes on: head/databases/foundationdb/files/patch-fdbcli_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbclient_MultiVersionAssignmentVars.h =================================================================== --- head/databases/foundationdb/files/patch-fdbclient_MultiVersionAssignmentVars.h (nonexistent) +++ head/databases/foundationdb/files/patch-fdbclient_MultiVersionAssignmentVars.h (revision 468809) @@ -0,0 +1,11 @@ +--- fdbclient/MultiVersionAssignmentVars.h.orig 2018-04-29 11:43:19 UTC ++++ fdbclient/MultiVersionAssignmentVars.h +@@ -135,7 +135,7 @@ public: + ~DLThreadSingleAssignmentVar() { + lock.assertNotEntered(); + if(f) { +- ASSERT(futureRefCount == 1); ++ ASSERT_ABORT(futureRefCount == 1); + api->futureDestroy(f); + } + } Property changes on: head/databases/foundationdb/files/patch-fdbclient_MultiVersionAssignmentVars.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbclient_NativeAPI.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbclient_NativeAPI.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbclient_NativeAPI.actor.cpp (revision 468809) @@ -0,0 +1,20 @@ +--- fdbclient/NativeAPI.actor.cpp.orig 2018-04-28 15:48:35 UTC ++++ fdbclient/NativeAPI.actor.cpp +@@ -93,7 +93,7 @@ LocationInfo::~LocationInfo() { + for( auto const& alternative : getAlternatives() ) + handles.push_back( alternative.v.getVersion.getEndpoint().token ); // must match above choice of UID + std::sort( handles.begin(), handles.end() ); +- ASSERT( handles.size() ); ++ ASSERT_ABORT( handles.size() ); + + auto it = cx->ssid_locationInfo.find( handles ); + if( it != cx->ssid_locationInfo.end() ) +@@ -540,7 +540,7 @@ DatabaseContext::~DatabaseContext() { + monitorMasterProxiesInfoChange.cancel(); + for(auto it = ssid_locationInfo.begin(); it != ssid_locationInfo.end(); it = ssid_locationInfo.erase(it)) + it->second->notifyContextDestroyed(); +- ASSERT( ssid_locationInfo.empty() ); ++ ASSERT_ABORT( ssid_locationInfo.empty() ); + locationCache.insert( allKeys, Reference() ); + } + Property changes on: head/databases/foundationdb/files/patch-fdbclient_NativeAPI.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbclient_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbclient_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbclient_local.mk (revision 468809) @@ -0,0 +1,11 @@ +--- fdbclient/local.mk.orig 2018-04-26 06:55:09 UTC ++++ fdbclient/local.mk +@@ -21,7 +21,7 @@ + # -*- mode: makefile; -*- + + fdbclient_CFLAGS := $(fdbrpc_CFLAGS) +- ++fdbclient_LIBS := -lm -lc++ -lpthread -lexecinfo -leio + fdbclient_GENERATED_SOURCES += fdbclient/FDBOptions.g.h + + fdbclient/FDBOptions.g.cpp: fdbclient/FDBOptions.g.h Property changes on: head/databases/foundationdb/files/patch-fdbclient_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp (revision 468809) @@ -0,0 +1,165 @@ +--- fdbmonitor/fdbmonitor.cpp.orig 2018-04-19 02:55:50 UTC ++++ fdbmonitor/fdbmonitor.cpp +@@ -35,6 +35,10 @@ + #include + #endif + ++#ifdef __FreeBSD__ ++#include ++#endif ++ + #ifdef __APPLE__ + #include + #include +@@ -72,7 +76,7 @@ + + #ifdef __linux__ + typedef fd_set* fdb_fd_set; +-#elif defined __APPLE__ ++#elif defined(__APPLE__) || defined(__FreeBSD__) + typedef int fdb_fd_set; + #endif + +@@ -83,7 +87,7 @@ void monitor_fd( fdb_fd_set list, int fd + FD_SET( fd, list ); + if ( fd > *maxfd ) + *maxfd = fd; +-#elif defined __APPLE__ ++#elif defined(__APPLE__) || defined(__FreeBSD__) + /* ignore maxfd */ + struct kevent ev; + EV_SET( &ev, fd, EVFILT_READ, EV_ADD, 0, 0, cmd ); +@@ -94,7 +98,7 @@ void monitor_fd( fdb_fd_set list, int fd + void unmonitor_fd( fdb_fd_set list, int fd ) { + #ifdef __linux__ + FD_CLR( fd, list ); +-#elif defined __APPLE__ ++#elif defined(__APPLE__) || defined(__FreeBSD__) + struct kevent ev; + EV_SET( &ev, fd, EVFILT_READ, EV_DELETE, 0, 0, NULL ); + kevent( list, &ev, 1, NULL, 0, NULL ); // FIXME: check? +@@ -188,7 +192,7 @@ const char* get_value_multi(const CSimpl + } + + double timer() { +-#if defined(__linux__) ++#if defined(__linux__) || defined(__FreeBSD__) + struct timespec ts; + clock_gettime(CLOCK_MONOTONIC, &ts); + return double(ts.tv_sec) + (ts.tv_nsec * 1e-9); +@@ -822,7 +826,7 @@ void read_child_output( Command* cmd, in + } + } + +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) + void watch_conf_dir( int kq, int* confd_fd, std::string confdir ) { + struct kevent ev; + std::string original = confdir; +@@ -839,7 +843,7 @@ void watch_conf_dir( int kq, int* confd_ + std::string child = confdir; + + /* Find the nearest existing ancestor */ +- while( (*confd_fd = open( confdir.c_str(), O_EVTONLY )) < 0 && errno == ENOENT ) { ++ while( (*confd_fd = open( confdir.c_str(), O_RDONLY )) < 0 && errno == ENOENT ) { + child = confdir; + confdir = parentDirectory(confdir); + } +@@ -876,7 +880,7 @@ void watch_conf_file( int kq, int* conff + } + + /* Open and watch */ +- *conff_fd = open( confpath, O_EVTONLY ); ++ *conff_fd = open( confpath, O_RDONLY ); + if ( *conff_fd >= 0 ) { + EV_SET( &ev, *conff_fd, EVFILT_VNODE, EV_ADD | EV_CLEAR, NOTE_WRITE | NOTE_ATTRIB, 0, NULL ); + kevent( kq, &ev, 1, NULL, 0, NULL ); +@@ -983,7 +987,7 @@ std::unordered_map additional_watch_paths; + +@@ -1065,7 +1069,7 @@ int main(int argc, char** argv) { + /* only linux needs this, but... */ + int maxfd = 0; + +-#ifdef __linux__ ++#if defined(__linux__) + fd_set rfds; + watched_fds = &rfds; + +@@ -1080,12 +1084,12 @@ int main(int argc, char** argv) { + CSimpleIniA* ini = NULL; + + if (daemonize) { +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wdeprecated-declarations" + #endif + if (daemon(0, 0)) { +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) + #pragma GCC diagnostic pop + #endif + log_err("daemon", errno, "Unable to daemonize"); +@@ -1138,12 +1142,12 @@ int main(int argc, char** argv) { + snprintf(pid_buf, sizeof(pid_buf), "%d\n", getpid()); + ssize_t ign = write(lockfile_fd, pid_buf, strlen(pid_buf)); + +-#ifdef __linux__ ++#if defined(__linux__) + /* attempt to do clean shutdown and remove lockfile when killed */ + signal(SIGHUP, signal_handler); + signal(SIGINT, signal_handler); + signal(SIGTERM, signal_handler); +-#elif defined(__APPLE__) ++#elif defined(__APPLE__) || defined(__FreeBSD__) + int kq = kqueue(); + if ( kq < 0 ) { + log_err( "kqueue", errno, "Unable to create kqueue" ); +@@ -1174,7 +1178,7 @@ int main(int argc, char** argv) { + + #endif + +-#ifdef __linux__ ++#if defined(__linux__) + signal(SIGCHLD, child_handler); + #endif + +@@ -1188,11 +1192,11 @@ int main(int argc, char** argv) { + /* normal will be restored in our main loop in the call to + pselect, but none blocks all signals while processing events */ + sigprocmask(SIG_SETMASK, &full_mask, &normal_mask); +-#elif defined(__APPLE__) ++#elif defined(__APPLE__) || defined(__FreeBSD__) + sigprocmask(0, NULL, &normal_mask); + #endif + +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) + struct stat st_buf; + struct timespec mtimespec; + +@@ -1251,7 +1255,7 @@ int main(int argc, char** argv) { + + load_conf(confpath.c_str(), uid, gid, &normal_mask, &rfds, &maxfd); + reload_additional_watches = false; +-#elif defined(__APPLE__) ++#elif defined(__APPLE__) || defined(__FreeBSD__) + load_conf( confpath.c_str(), uid, gid, &normal_mask, watched_fds, &maxfd ); + watch_conf_file( kq, &conff_fd, confpath.c_str() ); + watch_conf_dir( kq, &confd_fd, confdir ); +@@ -1289,7 +1293,7 @@ int main(int argc, char** argv) { + if(nfds == 0) { + reload = true; + } +-#elif defined(__APPLE__) ++#elif defined(__APPLE__) || defined(__FreeBSD__) + int nev = 0; + if(timeout < 0) { + nev = kevent( kq, NULL, 0, &ev, 1, NULL ); Property changes on: head/databases/foundationdb/files/patch-fdbmonitor_fdbmonitor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbmonitor_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbmonitor_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbmonitor_local.mk (revision 468809) @@ -0,0 +1,11 @@ +--- fdbmonitor/local.mk.orig 2018-04-26 01:54:14 UTC ++++ fdbmonitor/local.mk +@@ -27,6 +27,8 @@ ifeq ($(PLATFORM),linux) + fdbmonitor_LDFLAGS := -static-libstdc++ -static-libgcc -lrt + else ifeq ($(PLATFORM),osx) + fdbmonitor_LDFLAGS := -lc++ ++else ifeq ($(PLATFORM),freebsd) ++ fdbmonitor_LDFLAGS := -lc++ -lm + endif + + bin/fdbmonitor.debug: bin/fdbmonitor Property changes on: head/databases/foundationdb/files/patch-fdbmonitor_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.cpp (revision 468809) @@ -0,0 +1,20 @@ +--- fdbrpc/AsyncFileCached.actor.cpp.orig 2018-04-19 02:55:50 UTC ++++ fdbrpc/AsyncFileCached.actor.cpp +@@ -31,7 +31,7 @@ EvictablePage::~EvictablePage() { + if (pageCache->pageSize == 4096) + FastAllocator<4096>::release(data); + else +- aligned_free(data); ++ free(data); + } + if (index > -1) { + pageCache->pages[index] = pageCache->pages.back(); +@@ -233,7 +233,7 @@ Future AsyncFileCached::quiesce() + AsyncFileCached::~AsyncFileCached() { + while ( !pages.empty() ) { + auto ok = pages.begin()->second->evict(); +- ASSERT( ok ); ++ ASSERT_ABORT( ok ); + } + openFiles.erase( filename ); + } Property changes on: head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.h =================================================================== --- head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.h (nonexistent) +++ head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.h (revision 468809) @@ -0,0 +1,11 @@ +--- fdbrpc/AsyncFileCached.actor.h.orig 2018-04-28 14:44:18 UTC ++++ fdbrpc/AsyncFileCached.actor.h +@@ -450,7 +450,7 @@ struct AFCPage : public EvictablePage, p + + virtual ~AFCPage() { + clearDirty(); +- ASSERT( flushableIndex == -1 ); ++ ASSERT_ABORT( flushableIndex == -1 ); + } + + void setDirty() { Property changes on: head/databases/foundationdb/files/patch-fdbrpc_AsyncFileCached.actor.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbrpc_IAsyncFile.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbrpc_IAsyncFile.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbrpc_IAsyncFile.actor.cpp (revision 468809) @@ -0,0 +1,11 @@ +--- fdbrpc/IAsyncFile.actor.cpp.orig 2018-04-25 15:06:34 UTC ++++ fdbrpc/IAsyncFile.actor.cpp +@@ -42,7 +42,7 @@ ACTOR static Future zeroRangeHelpe + Void _ = wait( yield() ); + } + +- aligned_free(zeros); ++ free(zeros); + return Void(); + } + Property changes on: head/databases/foundationdb/files/patch-fdbrpc_IAsyncFile.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbrpc_Platform.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbrpc_Platform.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbrpc_Platform.cpp (revision 468809) @@ -0,0 +1,22 @@ +--- fdbrpc/Platform.cpp.orig 2018-04-19 02:55:50 UTC ++++ fdbrpc/Platform.cpp +@@ -87,7 +87,7 @@ int eraseDirectoryRecursive(std::string + __eraseDirectoryRecurseiveCount = 0; + #ifdef _WIN32 + system( ("rd /s /q \"" + dir + "\"").c_str() ); +-#elif defined(__linux__) || defined(__APPLE__) ++#elif defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) + int error = + nftw(dir.c_str(), + [](const char *fpath, const struct stat *sb, int typeflag, struct FTW *ftwbuf) -> int { +@@ -122,8 +122,8 @@ std::string getDefaultConfigPath() { + return _filepath + "\\foundationdb"; + #elif defined(__linux__) + return "/etc/foundationdb"; +-#elif defined(__APPLE__) +- return "/usr/local/etc/foundationdb"; ++#elif defined(__APPLE__) || defined(__FreeBSD__) ++ return CONFDIR; + #else + #error Port me! + #endif Property changes on: head/databases/foundationdb/files/patch-fdbrpc_Platform.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbrpc_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbrpc_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbrpc_local.mk (revision 468809) @@ -0,0 +1,17 @@ +--- fdbrpc/local.mk.orig 2018-04-19 02:55:50 UTC ++++ fdbrpc/local.mk +@@ -20,10 +20,11 @@ + + # -*- mode: makefile; -*- + +-fdbrpc_BUILD_SOURCES += fdbrpc/libeio/eio.c ++#fdbrpc_BUILD_SOURCES += fdbrpc/libeio/eio.c + +-fdbrpc_CFLAGS := -I$(BOOSTDIR) -I. -Ifdbrpc -Ifdbrpc/libeio -DUSE_UCONTEXT +-fdbrpc_LDFLAGS := ++fdbrpc_CFLAGS := -I$(BOOSTDIR)/include -I. -Ifdbrpc -Ifdbrpc/libeio -DUSE_UCONTEXT ++fdbrpc_LDFLAGS := -L$(BOOSTDIR)/lib ++fdbrpc_LIBS := -lm -lc++ -lpthread -leio + + ifeq ($(PLATFORM),osx) + fdbrpc_CFLAGS += -fasynchronous-unwind-tables -fno-omit-frame-pointer Property changes on: head/databases/foundationdb/files/patch-fdbrpc_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbserver_TLogServer.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbserver_TLogServer.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbserver_TLogServer.actor.cpp (revision 468809) @@ -0,0 +1,11 @@ +--- fdbserver/TLogServer.actor.cpp.orig 2018-04-28 15:41:40 UTC ++++ fdbserver/TLogServer.actor.cpp +@@ -425,7 +425,7 @@ struct LogData : NonCopyable, public Ref + tLogData->bytesDurable += bytesInput.getValue() - bytesDurable.getValue(); + TraceEvent("TLogBytesWhenRemoved", tli.id()).detail("sharedBytesInput", tLogData->bytesInput).detail("sharedBytesDurable", tLogData->bytesDurable).detail("localBytesInput", bytesInput.getValue()).detail("localBytesDurable", bytesDurable.getValue()); + +- ASSERT(tLogData->bytesDurable <= tLogData->bytesInput); ++ ASSERT_ABORT(tLogData->bytesDurable <= tLogData->bytesInput); + endRole(tli.id(), "TLog", "Error", true); + + if(!tLogData->terminated) { Property changes on: head/databases/foundationdb/files/patch-fdbserver_TLogServer.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbserver_VFSAsync.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbserver_VFSAsync.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbserver_VFSAsync.cpp (revision 468809) @@ -0,0 +1,11 @@ +--- fdbserver/VFSAsync.cpp.orig 2018-04-28 14:51:27 UTC ++++ fdbserver/VFSAsync.cpp +@@ -460,7 +460,7 @@ static int asyncDeviceCharacteristics(sq + //resulting in a locking error + auto itr = SharedMemoryInfo::table.find(filename); + if(itr != SharedMemoryInfo::table.end()) { +- ASSERT(itr->second.refcount == 0); ++ ASSERT_ABORT(itr->second.refcount == 0); + itr->second.cleanup(); + } + } Property changes on: head/databases/foundationdb/files/patch-fdbserver_VFSAsync.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp (revision 468809) @@ -0,0 +1,37 @@ +--- fdbserver/fdbserver.actor.cpp.orig 2018-04-19 02:55:50 UTC ++++ fdbserver/fdbserver.actor.cpp +@@ -59,7 +59,7 @@ + #define BOOST_DATE_TIME_NO_LIB + #include + +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + #include + #include + #ifdef ALLOC_INSTRUMENTATION +@@ -72,6 +72,7 @@ + #endif + + #include "flow/SimpleOpt.h" ++#include + + enum { + OPT_CONNFILE, OPT_SEEDCONNFILE, OPT_SEEDCONNSTRING, OPT_ROLE, OPT_LISTEN, OPT_PUBLICADDR, OPT_DATAFOLDER, OPT_LOGFOLDER, OPT_PARENTPID, OPT_NEWCONSOLE, OPT_NOBOX, OPT_TESTFILE, OPT_RESTARTING, OPT_RANDOMSEED, OPT_KEY, OPT_MEMLIMIT, OPT_STORAGEMEMLIMIT, OPT_MACHINEID, OPT_DCID, OPT_MACHINE_CLASS, OPT_BUGGIFY, OPT_VERSION, OPT_CRASHONERROR, OPT_HELP, OPT_NETWORKIMPL, OPT_NOBUFSTDOUT, OPT_BUFSTDOUTERR, OPT_TRACECLOCK, OPT_NUMTESTERS, OPT_DEVHELP, OPT_ROLLSIZE, OPT_MAXLOGS, OPT_MAXLOGSSIZE, OPT_KNOB, OPT_TESTSERVERS, OPT_TEST_ON_SERVERS, OPT_METRICSCONNFILE, OPT_METRICSPREFIX, +@@ -350,7 +351,7 @@ public: + throw platform_error(); + } + permission.set_permissions( &sa ); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__)) + // There is nothing to do here, since the default permissions are fine + #else + #error Port me! +@@ -360,7 +361,7 @@ public: + virtual ~WorldReadablePermissions() { + #ifdef _WIN32 + LocalFree( sa.lpSecurityDescriptor ); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__)) + // There is nothing to do here, since the default permissions are fine + #else + #error Port me! Property changes on: head/databases/foundationdb/files/patch-fdbserver_fdbserver.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbserver_local.mk =================================================================== --- head/databases/foundationdb/files/patch-fdbserver_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-fdbserver_local.mk (revision 468809) @@ -0,0 +1,11 @@ +--- fdbserver/local.mk.orig 2018-04-19 02:55:50 UTC ++++ fdbserver/local.mk +@@ -34,6 +34,8 @@ ifeq ($(PLATFORM),linux) + # fdbserver_STATIC_LIBS += -ltcmalloc -lunwind -lprofiler + else ifeq ($(PLATFORM),osx) + fdbserver_LDFLAGS += -lc++ ++else ifeq ($(PLATFORM),freebsd) ++ fdbserver_LDFLAGS += -lc++ -lm -lpthread -lexecinfo -leio + endif + + ifeq ($(WORKLOADS),false) Property changes on: head/databases/foundationdb/files/patch-fdbserver_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-fdbserver_worker.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-fdbserver_worker.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-fdbserver_worker.actor.cpp (revision 468809) @@ -0,0 +1,38 @@ +--- fdbserver/worker.actor.cpp.orig 2018-04-26 12:45:22 UTC ++++ fdbserver/worker.actor.cpp +@@ -39,7 +39,7 @@ + #include "fdbclient/ClientWorkerInterface.h" + #include "flow/Profiler.h" + +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + #ifdef USE_GPERFTOOLS + #include "gperftools/profiler.h" + #endif +@@ -267,7 +267,7 @@ ACTOR Future registrationClient( R + } + } + +-#if defined(__linux__) && defined(USE_GPERFTOOLS) ++#if (defined(__linux__) || defined(__FreeBSD__)) && defined(USE_GPERFTOOLS) + //A set of threads that should be profiled + std::set profiledThreads; + +@@ -279,7 +279,7 @@ int filter_in_thread(void *arg) { + + //Enables the calling thread to be profiled + void registerThreadForProfiling() { +-#if defined(__linux__) && defined(USE_GPERFTOOLS) ++#if (defined(__linux__) || defined(__FreeBSD__)) && defined(USE_GPERFTOOLS) + //Not sure if this is actually needed, but a call to backtrace was advised here: + //http://groups.google.com/group/google-perftools/browse_thread/thread/0dfd74532e038eb8/2686d9f24ac4365f?pli=1 + profiledThreads.insert(std::this_thread::get_id()); +@@ -293,7 +293,7 @@ void registerThreadForProfiling() { + void updateCpuProfiler(ProfilerRequest req) { + switch (req.type) { + case ProfilerRequest::Type::GPROF: +-#if defined(__linux__) && defined(USE_GPERFTOOLS) && !defined(VALGRIND) ++#if (defined(__linux__) || defined(__FreeBSD__)) && defined(USE_GPERFTOOLS) && !defined(VALGRIND) + switch (req.action) { + case ProfilerRequest::Action::ENABLE: { + const char *path = (const char*)req.outputFile.begin(); Property changes on: head/databases/foundationdb/files/patch-fdbserver_worker.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_Deque.h =================================================================== --- head/databases/foundationdb/files/patch-flow_Deque.h (nonexistent) +++ head/databases/foundationdb/files/patch-flow_Deque.h (revision 468809) @@ -0,0 +1,23 @@ +--- flow/Deque.h.orig 2018-04-22 14:36:29 UTC ++++ flow/Deque.h +@@ -166,7 +166,7 @@ private: + new (&newArr[i - begin]) T(std::move(arr[i&mask])); + arr[i&mask].~T(); + } +- aligned_free(arr); ++ free(arr); + arr = newArr; + end -= begin; + begin = 0; +@@ -177,8 +177,8 @@ private: + for (int i = begin; i != end; i++) + arr[i&mask].~T(); + if(arr) +- aligned_free(arr); ++ free(arr); + } + }; + +-#endif +\ No newline at end of file ++#endif Property changes on: head/databases/foundationdb/files/patch-flow_Deque.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_FastAlloc.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_FastAlloc.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_FastAlloc.cpp (revision 468809) @@ -0,0 +1,12 @@ +--- flow/FastAlloc.cpp.orig 2018-04-22 14:45:22 UTC ++++ flow/FastAlloc.cpp +@@ -51,6 +51,9 @@ + #elif defined(__APPLE__) + #pragma message "init_priority is not supported on this platform; will this be a problem?" + #define INIT_SEG ++#elif defined(__FreeBSD__) ++#pragma message "init_priority is not supported on this platform; will this be a problem?" ++#define INIT_SEG + #else + #error Where am I? + #endif Property changes on: head/databases/foundationdb/files/patch-flow_FastAlloc.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_IThreadPool.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_IThreadPool.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_IThreadPool.cpp (revision 468809) @@ -0,0 +1,11 @@ +--- flow/IThreadPool.cpp.orig 2018-04-28 14:40:31 UTC ++++ flow/IThreadPool.cpp +@@ -35,7 +35,7 @@ class ThreadPool : public IThreadPool, p + Event stopped; + static thread_local IThreadPoolReceiver* threadUserObject; + explicit Thread(ThreadPool *pool, IThreadPoolReceiver *userObject) : pool(pool), userObject(userObject) {} +- ~Thread() { ASSERT(!userObject); } ++ ~Thread() { ASSERT_ABORT(!userObject); } + + void run() { + deprioritizeThread(); Property changes on: head/databases/foundationdb/files/patch-flow_IThreadPool.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_Net2.actor.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_Net2.actor.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_Net2.actor.cpp (revision 468809) @@ -0,0 +1,21 @@ +--- flow/Net2.actor.cpp.orig 2018-04-19 02:55:50 UTC ++++ flow/Net2.actor.cpp +@@ -56,7 +56,7 @@ uint64_t compatibleProtocolVersionMask = + uint64_t minValidProtocolVersion = 0x0FDB00A200060001LL; + + +-#if defined(__linux__) ++#if defined(__linux__) || defined(__FreeBSD__) + #include + + volatile double net2liveness = 0; +@@ -403,8 +403,7 @@ private: + + void init() { + // Socket settings that have to be set after connect or accept succeeds +- boost::asio::socket_base::non_blocking_io nbio(true); +- socket.io_control(nbio); ++ socket.non_blocking(true); + socket.set_option(boost::asio::ip::tcp::no_delay(true)); + } + Property changes on: head/databases/foundationdb/files/patch-flow_Net2.actor.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_Platform.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_Platform.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_Platform.cpp (revision 468809) @@ -0,0 +1,304 @@ +--- flow/Platform.cpp.orig 2018-04-19 02:55:50 UTC ++++ flow/Platform.cpp +@@ -71,6 +71,7 @@ + + #include + #include ++#include + #include + #include + #include +@@ -119,6 +120,12 @@ + #include + #endif + ++#ifdef __FreeBSD__ ++#include ++#include ++#include ++#include ++#endif + #endif + + std::string removeWhitespace(const std::string &t) +@@ -198,7 +205,7 @@ double getProcessorTimeThread() { + throw platform_error(); + } + return FiletimeAsInt64(ftKernel) / double(1e7) + FiletimeAsInt64(ftUser) / double(1e7); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + return getProcessorTimeGeneric(RUSAGE_THREAD); + #elif defined(__APPLE__) + /* No RUSAGE_THREAD so we use the lower level interface */ +@@ -266,6 +273,14 @@ uint64_t getResidentMemoryUsage() { + throw platform_error(); + } + return info.resident_size; ++#elif defined(__FreeBSD__) ++ struct rusage rusage; ++ ++ if (getrusage(RUSAGE_SELF | RUSAGE_THREAD, &rusage) == 0) { ++ return rusage.ru_maxrss; ++ } ++ ++ return 0; + #else + #warning getMemoryUsage unimplemented on this platform + return 0; +@@ -304,7 +319,7 @@ uint64_t getMemoryUsage() { + } + return info.virtual_size; + #else +- #warning getMemoryUsage unimplemented on this platform ++ //#warning getMemoryUsage unimplemented on this platform + return 0; + #endif + } +@@ -427,6 +442,24 @@ void getMachineRAMInfo(MachineRAMInfo& m + memInfo.total = pagesize * (vm_stat.free_count + vm_stat.active_count + vm_stat.inactive_count + vm_stat.wire_count); + memInfo.available = pagesize * vm_stat.free_count; + memInfo.committed = memInfo.total - memInfo.available; ++#elif defined(__FreeBSD__) ++ size_t len; ++ int pagesize = getpagesize(), free_pages; ++ u_long total; ++ ++ len = sizeof(total); ++ if (sysctlbyname("hw.physmem", &total, &len, NULL, 0) == -1) ++ total = 0; ++ ++ total = total / 1024; ++ ++ len = sizeof(free_pages); ++ if((sysctlbyname("vm.stats.vm.v_free_count", &free_pages, &len, NULL, 0) == -1) || !len) ++ free_pages = 0; ++ ++ memInfo.total = total; ++ memInfo.available = (pagesize / 1024) * free_pages; ++ memInfo.committed = memInfo.total - memInfo.available; + #else + #warning getMachineRAMInfo unimplemented on this platform + #endif +@@ -435,7 +468,7 @@ void getMachineRAMInfo(MachineRAMInfo& m + void getDiskBytes(std::string const& directory, int64_t& free, int64_t& total) { + INJECT_FAULT( platform_error, "getDiskBytes" ); + #if defined(__unixish__) +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + struct statvfs buf; + if (statvfs(directory.c_str(), &buf)) { + TraceEvent(SevError, "GetDiskBytesStatvfsError").detail("Directory", directory).GetLastError(); +@@ -477,7 +510,7 @@ void getDiskBytes(std::string const& dir + #endif + } + +-#ifdef __unixish__ ++#if defined(__linux__) || defined(__APPLE__) + const char* getInterfaceName(uint32_t _ip) { + INJECT_FAULT( platform_error, "getInterfaceName" ); + static char iname[20]; +@@ -724,6 +757,30 @@ dev_t getDeviceId(std::string path) { + + #endif + ++#ifdef __FreeBSD__ ++void getNetworkTraffic(uint32_t ip, uint64_t& bytesSent, uint64_t& bytesReceived, ++ uint64_t& outSegs, uint64_t& retransSegs) { ++ bytesReceived = 0; ++ bytesSent = 0; ++ outSegs = 0; ++ retransSegs = 0; ++} ++ ++void getMachineLoad(uint64_t& idleTime, uint64_t& totalTime) { ++ idleTime = 0; ++ totalTime = 0; ++} ++ ++void getDiskStatistics(std::string const& directory, uint64_t& currentIOs, uint64_t& busyTicks, uint64_t& reads, uint64_t& writes, uint64_t& writeSectors, uint64_t& readSectors) { ++ currentIOs = 0; ++ busyTicks = 0; ++ writes = 0; ++ reads = 0; ++ writeSectors = 0; ++ readSectors = 0; ++} ++#endif ++ + #ifdef __APPLE__ + void getNetworkTraffic(uint32_t ip, uint64_t& bytesSent, uint64_t& bytesReceived, + uint64_t& outSegs, uint64_t& retransSegs) { +@@ -1247,7 +1304,7 @@ struct OffsetTimer { + return offset + count * secondsPerCount; + } + }; +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + #define DOUBLETIME(ts) (double(ts.tv_sec) + (ts.tv_nsec * 1e-9)) + #ifndef CLOCK_MONOTONIC_RAW + #define CLOCK_MONOTONIC_RAW 4 // Confirmed safe to do with glibc >= 2.11 and kernel >= 2.6.28. No promises with older glibc. Older kernel definitely breaks it. +@@ -1312,7 +1369,7 @@ double timer() { + GetSystemTimeAsFileTime(&fileTime); + static_assert( sizeof(fileTime) == sizeof(uint64_t), "FILETIME size wrong" ); + return (*(uint64_t*)&fileTime - FILETIME_C_EPOCH) * 100e-9; +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + struct timespec ts; + clock_gettime(CLOCK_REALTIME, &ts); + return double(ts.tv_sec) + (ts.tv_nsec * 1e-9); +@@ -1332,7 +1389,7 @@ uint64_t timer_int() { + GetSystemTimeAsFileTime(&fileTime); + static_assert( sizeof(fileTime) == sizeof(uint64_t), "FILETIME size wrong" ); + return (*(uint64_t*)&fileTime - FILETIME_C_EPOCH); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + struct timespec ts; + clock_gettime(CLOCK_REALTIME, &ts); + return uint64_t(ts.tv_sec) * 1e9 + ts.tv_nsec; +@@ -1481,7 +1538,7 @@ static void *allocateInternal(size_t len + flags |= MAP_HUGETLB; + + return mmap(NULL, length, PROT_READ|PROT_WRITE, flags, -1, 0); +-#elif defined(__APPLE__) ++#elif defined(__APPLE__) || defined(__FreeBSD__) + int flags = MAP_PRIVATE|MAP_ANON; + + return mmap(NULL, length, PROT_READ|PROT_WRITE, flags, -1, 0); +@@ -1555,6 +1612,11 @@ void setAffinity(int proc) { + CPU_ZERO(&set); + CPU_SET(proc, &set); + sched_setaffinity(0, sizeof(cpu_set_t), &set); ++#elif defined(__FreeBSD__) ++ cpuset_t set; ++ CPU_ZERO(&set); ++ CPU_SET(proc, &set); ++ cpuset_setaffinity(CPU_LEVEL_WHICH, CPU_WHICH_PID, -1, sizeof(set), &set); + #endif + } + +@@ -1615,7 +1677,7 @@ void renameFile( std::string const& from + //renamedFile(); + return; + } +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + if (!rename( fromPath.c_str(), toPath.c_str() )) { + //FIXME: We cannot inject faults after renaming the file, because we could end up with two asyncFileNonDurable open for the same file + //renamedFile(); +@@ -1733,7 +1795,7 @@ bool createDirectory( std::string const& + } + TraceEvent(SevError, "CreateDirectory").detail("Directory", directory).GetLastError(); + throw platform_error(); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + size_t sep = 0; + do { + sep = directory.find_first_of('/', sep + 1); +@@ -1774,7 +1836,7 @@ std::string abspath( std::string const& + if (*x == '/') + *x = CANONICAL_PATH_SEPARATOR; + return nameBuffer; +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + char result[PATH_MAX]; + auto r = realpath( filename.c_str(), result ); + if (!r) { +@@ -1839,7 +1901,7 @@ std::string getUserHomeDirectory() { + + #ifdef _WIN32 + #define FILE_ATTRIBUTE_DATA DWORD +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + #define FILE_ATTRIBUTE_DATA mode_t + #else + #error Port me! +@@ -1848,7 +1910,7 @@ std::string getUserHomeDirectory() { + bool acceptFile( FILE_ATTRIBUTE_DATA fileAttributes, std::string name, std::string extension ) { + #ifdef _WIN32 + return !(fileAttributes & FILE_ATTRIBUTE_DIRECTORY) && StringRef(name).endsWith(extension); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + return S_ISREG(fileAttributes) && StringRef(name).endsWith(extension); + #else + #error Port me! +@@ -1858,7 +1920,7 @@ bool acceptFile( FILE_ATTRIBUTE_DATA fil + bool acceptDirectory( FILE_ATTRIBUTE_DATA fileAttributes, std::string name, std::string extension ) { + #ifdef _WIN32 + return (fileAttributes & FILE_ATTRIBUTE_DIRECTORY) != 0; +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + return S_ISDIR(fileAttributes); + #else + #error Port me! +@@ -1894,7 +1956,7 @@ std::vector findFiles( std: + } + FindClose(h); + } +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + DIR *dip; + + if ((dip = opendir(directory.c_str())) != NULL) { +@@ -1958,7 +2020,7 @@ void findFilesRecursively(std::string pa + void threadSleep( double seconds ) { + #ifdef _WIN32 + Sleep( (DWORD)(seconds * 1e3) ); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + struct timespec req, rem; + + req.tv_sec = seconds; +@@ -1996,7 +2058,7 @@ void makeTemporary( const char* filename + THREAD_HANDLE startThread(void (*func) (void *), void *arg) { + return (void *)_beginthread(func, 0, arg); + } +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + THREAD_HANDLE startThread(void *(*func) (void *), void *arg) { + pthread_t t; + pthread_create(&t, NULL, func, arg); +@@ -2009,7 +2071,7 @@ THREAD_HANDLE startThread(void *(*func) + void waitThread(THREAD_HANDLE thread) { + #ifdef _WIN32 + WaitForSingleObject(thread, INFINITE); +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + pthread_join(thread, NULL); + #else + #error Port me! +@@ -2038,7 +2100,7 @@ int64_t fileSize(std::string const& file + return 0; + else + return file_status.st_size; +-#elif (defined(__linux__) || defined(__APPLE__)) ++#elif (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + struct stat file_status; + if(stat(filename.c_str(), &file_status) != 0) + return 0; +@@ -2181,6 +2243,8 @@ std::string getDefaultPluginPath( const + return format( "/usr/lib/foundationdb/plugins/%s.so", plugin_name ); + #elif defined(__APPLE__) + return format( "/usr/local/foundationdb/plugins/%s.dylib", plugin_name ); ++#elif defined(__FreeBSD__) ++ return format( "/usr/local/lib/foundationdb/plugins/%s.so", plugin_name ); + #else + #error Port me! + #endif +@@ -2430,7 +2494,7 @@ void* getImageOffset() { return NULL; } + #endif + + bool isLibraryLoaded(const char* lib_path) { +-#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) ++#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__FreeBSD__) + #error Port me! + #endif + +@@ -2446,7 +2510,7 @@ bool isLibraryLoaded(const char* lib_pat + } + + void* loadLibrary(const char* lib_path) { +-#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) ++#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__FreeBSD__) + #error Port me! + #endif + Property changes on: head/databases/foundationdb/files/patch-flow_Platform.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_Platform.h =================================================================== --- head/databases/foundationdb/files/patch-flow_Platform.h (nonexistent) +++ head/databases/foundationdb/files/patch-flow_Platform.h (revision 468809) @@ -0,0 +1,20 @@ +--- flow/Platform.h.orig 2018-04-22 14:30:05 UTC ++++ flow/Platform.h +@@ -22,7 +22,7 @@ + #define FLOW_PLATFORM_H + #pragma once + +-#if (defined(__linux__) || defined(__APPLE__)) ++#if (defined(__linux__) || defined(__APPLE__)) || defined(__FreeBSD__) + #define __unixish__ 1 + #endif + +@@ -183,6 +183,8 @@ THREAD_HANDLE startThread(void *(func) ( + #define DYNAMIC_LIB_EXT ".dll" + #elif defined(__linux) + #define DYNAMIC_LIB_EXT ".so" ++#elif defined(__FreeBSD__) ++#define DYNAMIC_LIB_EXT ".so" + #elif defined(__APPLE__) + #define DYNAMIC_LIB_EXT ".dylib" + #else Property changes on: head/databases/foundationdb/files/patch-flow_Platform.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_ThreadPrimitives.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_ThreadPrimitives.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_ThreadPrimitives.cpp (revision 468809) @@ -0,0 +1,38 @@ +--- flow/ThreadPrimitives.cpp.orig 2018-04-24 15:27:55 UTC ++++ flow/ThreadPrimitives.cpp +@@ -37,7 +37,7 @@ extern std::string format( const char *f + Event::Event() { + #ifdef _WIN32 + ev = CreateEvent(NULL, FALSE, FALSE, NULL); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + int result = sem_init(&sem, 0, 0); + if (result) + criticalError(FDB_EXIT_INIT_SEMAPHORE, "UnableToInitializeSemaphore", format("Could not initialize semaphore - %s", strerror(errno)).c_str()); +@@ -54,7 +54,7 @@ Event::Event() { + Event::~Event() { + #ifdef _WIN32 + CloseHandle(ev); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + sem_destroy(&sem); + #elif defined(__APPLE__) + semaphore_destroy(self, sem); +@@ -66,7 +66,7 @@ Event::~Event() { + void Event::set() { + #ifdef _WIN32 + SetEvent(ev); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + sem_post(&sem); + #elif defined(__APPLE__) + semaphore_signal(sem); +@@ -78,7 +78,7 @@ void Event::set() { + void Event::block() { + #ifdef _WIN32 + WaitForSingleObject(ev, INFINITE); +-#elif defined(__linux__) ++#elif defined(__linux__) || defined(__FreeBSD__) + int ret; + do { + ret = sem_wait(&sem); Property changes on: head/databases/foundationdb/files/patch-flow_ThreadPrimitives.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_ThreadPrimitives.h =================================================================== --- head/databases/foundationdb/files/patch-flow_ThreadPrimitives.h (nonexistent) +++ head/databases/foundationdb/files/patch-flow_ThreadPrimitives.h (revision 468809) @@ -0,0 +1,34 @@ +--- flow/ThreadPrimitives.h.orig 2018-04-22 14:33:39 UTC ++++ flow/ThreadPrimitives.h +@@ -25,7 +25,7 @@ + #include "Error.h" + #include "Trace.h" + +-#ifdef __linux__ ++#if defined(__linux__) || defined(__FreeBSD__) + #include + #endif + +@@ -63,11 +63,11 @@ public: + #endif + } + void leave() { +-#if defined(__linux__) ++#if defined(__linux__) || defined(__FreeBSD__) + __sync_synchronize(); + #endif + isLocked = 0; +-#if defined(__linux__) ++#if defined(__linux__) || defined(__FreeBSD__) + __sync_synchronize(); + #endif + #if VALGRIND +@@ -117,6 +117,8 @@ private: + void* ev; + #elif defined(__linux__) + sem_t sem; ++#elif defined(__FreeBSD__) ++ sem_t sem; + #elif defined(__APPLE__) + mach_port_t self; + semaphore_t sem; Property changes on: head/databases/foundationdb/files/patch-flow_ThreadPrimitives.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_libs_system_src_error__code.cpp =================================================================== --- head/databases/foundationdb/files/patch-flow_libs_system_src_error__code.cpp (nonexistent) +++ head/databases/foundationdb/files/patch-flow_libs_system_src_error__code.cpp (revision 468809) @@ -0,0 +1,60 @@ +--- flow/libs/system/src/error_code.cpp.orig 2018-04-19 02:55:50 UTC ++++ flow/libs/system/src/error_code.cpp +@@ -48,7 +48,7 @@ namespace + { + public: + generic_error_category(){} +- const char * name() const; ++ const char * name() const BOOST_SYSTEM_NOEXCEPT; + std::string message( int ev ) const; + }; + +@@ -56,14 +56,14 @@ namespace + { + public: + system_error_category(){} +- const char * name() const; ++ const char * name() const BOOST_SYSTEM_NOEXCEPT; + std::string message( int ev ) const; +- error_condition default_error_condition( int ev ) const; ++ error_condition default_error_condition( int ev ) const BOOST_SYSTEM_NOEXCEPT; + }; + + // generic_error_category implementation ---------------------------------// + +- const char * generic_error_category::name() const ++ const char * generic_error_category::name() const BOOST_SYSTEM_NOEXCEPT + { + return "generic"; + } +@@ -154,12 +154,12 @@ namespace + } + // system_error_category implementation --------------------------------// + +- const char * system_error_category::name() const ++ const char * system_error_category::name() const BOOST_SYSTEM_NOEXCEPT + { + return "system"; + } + +- error_condition system_error_category::default_error_condition( int ev ) const ++ error_condition system_error_category::default_error_condition( int ev ) const BOOST_SYSTEM_NOEXCEPT + { + switch ( ev ) + { +@@ -414,13 +414,13 @@ namespace boost + // address for comparison purposes + # endif + +- BOOST_SYSTEM_DECL const error_category & system_category() ++ BOOST_SYSTEM_DECL const error_category & system_category() BOOST_SYSTEM_NOEXCEPT + { + static const system_error_category system_category_const; + return system_category_const; + } + +- BOOST_SYSTEM_DECL const error_category & generic_category() ++ BOOST_SYSTEM_DECL const error_category & generic_category() BOOST_SYSTEM_NOEXCEPT + { + static const generic_error_category generic_category_const; + return generic_category_const; Property changes on: head/databases/foundationdb/files/patch-flow_libs_system_src_error__code.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-flow_local.mk =================================================================== --- head/databases/foundationdb/files/patch-flow_local.mk (nonexistent) +++ head/databases/foundationdb/files/patch-flow_local.mk (revision 468809) @@ -0,0 +1,14 @@ +--- flow/local.mk.orig 2018-04-19 02:55:50 UTC ++++ flow/local.mk +@@ -20,8 +20,9 @@ + + # -*- mode: makefile; -*- + +-flow_CFLAGS := -I$(BOOSTDIR) -I. -Iflow -DUSE_UCONTEXT +-flow_LDFLAGS := ++flow_CFLAGS := -I$(BOOSTDIR)/include -I. -Iflow -DUSE_UCONTEXT ++flow_LDFLAGS := -L$(BOOSTDIR)/lib ++flow_LIBS := -lm -lc++ -lpthread -leio -lexecinfo + + ifeq ($(PLATFORM),osx) + flow_CFLAGS += -fasynchronous-unwind-tables -fno-omit-frame-pointer Property changes on: head/databases/foundationdb/files/patch-flow_local.mk ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/files/patch-foundationdb.conf =================================================================== --- head/databases/foundationdb/files/patch-foundationdb.conf (nonexistent) +++ head/databases/foundationdb/files/patch-foundationdb.conf (revision 468809) @@ -0,0 +1,40 @@ +--- foundationdb.conf.orig 2018-04-27 06:33:40 UTC ++++ foundationdb.conf +@@ -0,0 +1,37 @@ ++## foundationdb.conf ++## ++## Configuration file for FoundationDB server processes ++## Full documentation is available at ++## https://foundationdb.com/documentation/configuration.html#foundationdb-conf ++ ++[fdbmonitor] ++user = foundationdb ++group = foundationdb ++ ++[general] ++restart_delay = 60 ++cluster_file = /usr/local/etc/foundationdb/fdb.cluster ++ ++## Default parameters for individual fdbserver processes ++[fdbserver] ++command = /usr/local/sbin/fdbserver ++public_address = auto:$ID ++listen_address = public ++datadir = /var/db/foundationdb/data/$ID ++logdir = /var/log/foundationdb ++logsize = 10MiB ++maxlogssize = 100MiB ++# machine_id = ++# datacenter_id = ++# class = ++# memory = 8GiB ++# storage_memory = 1GiB ++ ++## An individual fdbserver process with id 4500 ++## Parameters set here override defaults from the [fdbserver] section ++[fdbserver.4500] ++ ++[backup_agent] ++command = /usr/local/lib/foundationdb/backup_agent/backup_agent ++ ++[backup_agent.1] Property changes on: head/databases/foundationdb/files/patch-foundationdb.conf ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/pkg-descr =================================================================== --- head/databases/foundationdb/pkg-descr (nonexistent) +++ head/databases/foundationdb/pkg-descr (revision 468809) @@ -0,0 +1,3 @@ +A distributed, transactional key-value store. + +WWW: https://www.foundationdb.org/ Property changes on: head/databases/foundationdb/pkg-descr ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/databases/foundationdb/pkg-plist =================================================================== --- head/databases/foundationdb/pkg-plist (nonexistent) +++ head/databases/foundationdb/pkg-plist (revision 468809) @@ -0,0 +1,9 @@ +bin/fdbbackup +bin/fdbcli +bin/fdbrestore +@sample etc/foundationdb/foundationdb.conf.sample +lib/foundationdb/backup_agent/backup_agent +sbin/fdbmonitor +sbin/fdbserver +@dir(%%DB_USER%%,%%DB_GROUP%%,) %%DB_DIR%% +@dir(%%DB_USER%%,%%DB_GROUP%%,) %%LOG_DIR%% Property changes on: head/databases/foundationdb/pkg-plist ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +on \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property