diff --git a/Makefile b/Makefile index 6d9ee79a9..5735e8ea4 100644 --- a/Makefile +++ b/Makefile @@ -1,143 +1,5 @@ # Citus toplevel Makefile -EXTENSION = citus - -MODULE_big = citus - -OBJS = src/backend/distributed/shared_library_init.o \ - src/backend/distributed/commands/cluster.o \ - src/backend/distributed/commands/create_distributed_table.o \ - src/backend/distributed/commands/drop_distributed_table.o \ - src/backend/distributed/commands/extension.o \ - src/backend/distributed/commands/foreign_constraint.o \ - src/backend/distributed/commands/grant.o \ - src/backend/distributed/commands/index.o \ - src/backend/distributed/commands/multi_copy.o \ - src/backend/distributed/commands/policy.o \ - src/backend/distributed/commands/rename.o \ - src/backend/distributed/commands/schema.o \ - src/backend/distributed/commands/sequence.o \ - src/backend/distributed/commands/subscription.o \ - src/backend/distributed/commands/table.o \ - src/backend/distributed/commands/transmit.o \ - src/backend/distributed/commands/truncate.o \ - src/backend/distributed/commands/utility_hook.o \ - src/backend/distributed/commands/vacuum.o \ - src/backend/distributed/connection/connection_configuration.o \ - src/backend/distributed/connection/connection_management.o \ - src/backend/distributed/connection/placement_connection.o \ - src/backend/distributed/connection/remote_commands.o \ - src/backend/distributed/executor/citus_custom_scan.o \ - src/backend/distributed/executor/insert_select_executor.o \ - src/backend/distributed/executor/intermediate_results.o \ - src/backend/distributed/executor/multi_client_executor.o \ - src/backend/distributed/executor/multi_executor.o \ - src/backend/distributed/executor/multi_real_time_executor.o \ - src/backend/distributed/executor/multi_router_executor.o \ - src/backend/distributed/executor/multi_server_executor.o \ - src/backend/distributed/executor/multi_task_tracker_executor.o \ - src/backend/distributed/executor/query_stats.o \ - src/backend/distributed/executor/subplan_execution.o \ - src/backend/distributed/master/citus_create_restore_point.o \ - src/backend/distributed/master/master_citus_tools.o \ - src/backend/distributed/master/master_create_shards.o \ - src/backend/distributed/master/master_delete_protocol.o \ - src/backend/distributed/master/master_metadata_utility.o \ - src/backend/distributed/master/master_modify_multiple_shards.o \ - src/backend/distributed/master/master_node_protocol.o \ - src/backend/distributed/master/master_repair_shards.o \ - src/backend/distributed/master/master_split_shards.o \ - src/backend/distributed/master/master_stage_protocol.o \ - src/backend/distributed/master/master_truncate.o \ - src/backend/distributed/master/worker_node_manager.o \ - src/backend/distributed/metadata/metadata_sync.o \ - src/backend/distributed/planner/deparse_shard_query.o \ - src/backend/distributed/planner/distributed_planner.o \ - src/backend/distributed/planner/extended_op_node_utils.o \ - src/backend/distributed/planner/insert_select_planner.o \ - src/backend/distributed/planner/multi_explain.o \ - src/backend/distributed/planner/multi_join_order.o \ - src/backend/distributed/planner/multi_logical_optimizer.o \ - src/backend/distributed/planner/multi_logical_planner.o \ - src/backend/distributed/planner/multi_master_planner.o \ - src/backend/distributed/planner/multi_physical_planner.o \ - src/backend/distributed/planner/query_colocation_checker.o \ - src/backend/distributed/planner/query_pushdown_planning.o \ - src/backend/distributed/planner/multi_router_planner.o \ - src/backend/distributed/planner/postgres_planning_functions.o \ - src/backend/distributed/planner/recursive_planning.o \ - src/backend/distributed/planner/relation_restriction_equivalence.o \ - src/backend/distributed/planner/shard_pruning.o \ - src/backend/distributed/progress/multi_progress.o \ - src/backend/distributed/relay/relay_event_utility.o \ - src/backend/distributed/test/colocation_utils.o \ - src/backend/distributed/test/create_shards.o \ - src/backend/distributed/test/deparse_shard_query.o \ - src/backend/distributed/test/distributed_deadlock_detection.o \ - src/backend/distributed/test/distribution_metadata.o \ - src/backend/distributed/test/fake_fdw.o \ - src/backend/distributed/test/foreign_key_relationship_query.o \ - src/backend/distributed/test/metadata_sync.o \ - src/backend/distributed/test/partitioning_utils.o \ - src/backend/distributed/test/progress_utils.o \ - src/backend/distributed/test/prune_shard_list.o \ - src/backend/distributed/test/relation_access_tracking.o \ - src/backend/distributed/test/run_from_same_connection.o \ - src/backend/distributed/test/sequential_execution.o \ - src/backend/distributed/transaction/backend_data.o \ - src/backend/distributed/transaction/citus_dist_stat_activity.o \ - src/backend/distributed/transaction/distributed_deadlock_detection.o \ - src/backend/distributed/transaction/lock_graph.o \ - src/backend/distributed/transaction/multi_shard_transaction.o \ - src/backend/distributed/transaction/relation_access_tracking.o \ - src/backend/distributed/transaction/remote_transaction.o \ - src/backend/distributed/transaction/transaction_management.o \ - src/backend/distributed/transaction/transaction_recovery.o \ - src/backend/distributed/transaction/worker_transaction.o \ - src/backend/distributed/utils/citus_clauses.o \ - src/backend/distributed/utils/citus_copyfuncs.o \ - src/backend/distributed/utils/citus_nodefuncs.o \ - src/backend/distributed/utils/citus_outfuncs.o \ - src/backend/distributed/utils/citus_readfuncs.o \ - src/backend/distributed/utils/citus_ruleutils.o \ - src/backend/distributed/utils/citus_version.o \ - src/backend/distributed/utils/colocation_utils.o \ - src/backend/distributed/utils/distribution_column.o \ - src/backend/distributed/utils/enable_ssl.o \ - src/backend/distributed/utils/errormessage.o \ - src/backend/distributed/utils/foreign_key_relationship.o \ - src/backend/distributed/utils/function_utils.o \ - src/backend/distributed/utils/hash_helpers.o \ - src/backend/distributed/utils/listutils.o \ - src/backend/distributed/utils/maintenanced.o \ - src/backend/distributed/utils/metadata_cache.o \ - src/backend/distributed/utils/multi_partitioning_utils.o \ - src/backend/distributed/utils/multi_resowner.o \ - src/backend/distributed/utils/node_metadata.o \ - src/backend/distributed/utils/reference_table_utils.o \ - src/backend/distributed/utils/resource_lock.o \ - src/backend/distributed/utils/ruleutils_10.o \ - src/backend/distributed/utils/ruleutils_96.o \ - src/backend/distributed/utils/shardinterval_utils.o \ - src/backend/distributed/utils/statistics_collection.o \ - src/backend/distributed/worker/worker_shard_visibility.o \ - src/backend/distributed/worker/task_tracker.o \ - src/backend/distributed/worker/task_tracker_protocol.o \ - src/backend/distributed/worker/worker_data_fetch_protocol.o \ - src/backend/distributed/worker/worker_drop_protocol.o \ - src/backend/distributed/worker/worker_file_access_protocol.o \ - src/backend/distributed/worker/worker_merge_protocol.o \ - src/backend/distributed/worker/worker_partition_protocol.o \ - src/backend/distributed/worker/worker_sql_task_protocol.o \ - src/backend/distributed/worker/worker_truncate_trigger_protocol.o \ - $(WIN32RES) - -EXTENSION= -MODULE_big= -OBJS= - -# the above is so that builds can work on Windows, the below is for all other platforms - citus_subdir = . citus_top_builddir = . diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 409e617a9..000000000 --- a/appveyor.yml +++ /dev/null @@ -1,89 +0,0 @@ -# Notes: -# - Minimal appveyor.yml file is an empty file. All sections are optional. -# - Indent each level of configuration with 2 spaces. Do not use tabs! -# - All section names are case-sensitive. -# - Section names should be unique on each level. -# - Full sample file at: https://www.appveyor.com/docs/appveyor-yml/ - -#---------------------------------# -# general configuration # -#---------------------------------# - -version: 1.0.{build}-{branch} - -# Maximum number of concurrent jobs for the project -max_jobs: 1 - -#---------------------------------# -# environment configuration # -#---------------------------------# - -cache: - - C:\tools\vcpkg\installed\ - - C:\tools\vcpkg\packages\ - -# Build worker image (VM template) -image: Visual Studio 2017 - -# save the cache even if the build fails -environment: - VCPKG_DIR: C:\tools\vcpkg - APPVEYOR_SAVE_CACHE_ON_ERROR: true - -# scripts that are called at very beginning, before repo cloning -init: - - git config --global core.autocrlf input - -# clone directory -clone_folder: c:\projects\citus - -# doesn't checkout the entire history, uses github API to download a zip of the repo -shallow_clone: true # default is "false" - -# scripts which run after cloning repository -install: - # add flex/bison to path - - set PATH=%PATH%;C:\msys64\usr\bin - - flex --version - - bison --version - # make postgres think we're a contrib module - - git clone -b REL_10_STABLE https://github.com/postgres/postgres C:\projects\postgres - - git -C C:\projects\postgres apply C:\projects\citus\windows\Mkvcbuild.pm.patch - # only build Citus, don't build the other contrib modules - - git -C C:\projects\postgres apply C:\projects\citus\windows\Mkvcbuild-minimize.patch - - rmdir /s /q C:\projects\postgres\contrib - - mkdir C:\projects\postgres\contrib - - xcopy /i /e C:\projects\citus C:\projects\postgres\contrib\citus - - '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat"' - # we need this for usage reporting - - vcpkg install curl:x64-windows & exit 0 - -#---------------------------------# -# build configuration # -#---------------------------------# - -platform: x64 -configuration: - - Release - -build_script: - - ps: cd C:\projects\postgres\src\tools\msvc - - build RELEASE - -#---------------------------------# -# tests configuration # -#---------------------------------# -before_test: - - ps: cd C:\projects\postgres\src\tools\msvc - - install C:\projects\pgsql - - cd C:\projects\postgres\contrib\citus\src\backend\distributed - - copy citus--*.sql C:\projects\pgsql\share\extension\ - - perl install.pl C:\projects\pgsql - -test_script: - - ps: cd C:\projects\postgres\contrib\citus\src\test\regress - - perl pg_regress_multi.pl --bindir=C:\projects\pgsql\bin --load-extension=citus -- --schedule=multi_schedule - -on_failure: - - ps: cd C:\projects\postgres\contrib\citus\src\test\regress - - type regression.diffs diff --git a/citus.control b/citus.control deleted file mode 100644 index 7e2d565c8..000000000 --- a/citus.control +++ /dev/null @@ -1,6 +0,0 @@ -# Citus extension -comment = 'Citus distributed database' -default_version = '8.1-1' -module_pathname = '$libdir/citus' -relocatable = false -schema = pg_catalog diff --git a/src/backend/distributed/install.pl b/src/backend/distributed/install.pl deleted file mode 100755 index 63dcdaab0..000000000 --- a/src/backend/distributed/install.pl +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env perl - -# Generates all the .sql files and puts them into the requested directory - -use strict; -use warnings; - -use File::Copy "copy"; -use File::Spec::Functions "catdir"; - -my $EXTENSION = "citus"; - -my $argcount = @ARGV; -die "need a single argument saying where to install the sql files\n" if ($argcount != 1); - -my $prefix = $ARGV[0]; -die "install destination must exist!\n" unless (-e $prefix); -my $dest = catdir($prefix, "share/postgresql/extension"); -unless (-e $dest) -{ - $dest = catdir($prefix, "share/extension"); -} -die "install destination must be a postgres installation!\n" unless (-e $dest); - -# 1) check that we're installing into the real postgres installation - -print "installing into $prefix\n"; - -# 2) parse Makefile's EXTVERSIONS to get the list of version pairs - -die "could not find Makefile" unless (-e 'Makefile'); -my $lines; -{ - open(MAKEFILE, "Makefile") or die "cannot open Makefile\n"; - local $/ = undef; # remove the record separator just for this scope - $lines = ; # read all the lines at once into a single variable - close(MAKEFILE); -} - -my $versions; -if ($lines =~ /^EXTVERSIONS = ((?:[0-9. \t-]+(?:\\\n)?)*)/ms) -{ - $versions = $1; -} -else -{ - die "could not find EXTVERSIONS\n"; -} - -$versions =~ s/\\\n//g; # remove all newlines -$versions =~ s/\t/ /g; # also all tabs -$versions =~ s/\s+/ /g; # and, finally, all doubled whitespace -print "found list of versions: $versions\n"; - -# 3) generate all the sql files - -my @versions = split(' ', $versions); -my @files = ("$EXTENSION--5.0.sql"); - -die "could not find $EXTENSION.sql" unless (-e "$EXTENSION.sql"); -copy("$EXTENSION.sql", "$EXTENSION--5.0.sql"); - -while (scalar @versions > 1) -{ - my $version = $versions[0]; - my $next = $versions[1]; - - my $thisFile = "$EXTENSION--$version.sql"; - my $updateFile = "$EXTENSION--$version--$next.sql"; - my $nextFile = "$EXTENSION--$next.sql"; - - print "creating $nextFile\n"; - - copy($thisFile, $nextFile); - - open(NEXT, ">>", $nextFile) or die "could not open $nextFile"; - open(UPDATE, "<", $updateFile) or die "could not open $updateFile"; - while(my $line = ){ - print NEXT $line; - } - close(UPDATE); - close(NEXT); - - push @files, $nextFile; - push @files, $updateFile; - shift @versions; -} - -print "copying .sql files into $dest\n"; - -# 4) copy the sql files into the right place! -while(my $file = shift(@files)) -{ - my $fullDest = catdir($dest, $file); - copy($file, $fullDest); -} diff --git a/src/test/regress/pg_regress_multi.pl b/src/test/regress/pg_regress_multi.pl index 98533d7a7..c9846675d 100755 --- a/src/test/regress/pg_regress_multi.pl +++ b/src/test/regress/pg_regress_multi.pl @@ -116,11 +116,7 @@ if (defined $libdir) $ENV{LD_LIBRARY_PATH} = "$libdir:".($ENV{LD_LIBRARY_PATH} || ''); $ENV{DYLD_LIBRARY_PATH} = "$libdir:".($ENV{DYLD_LIBRARY_PATH} || ''); $ENV{LIBPATH} = "$libdir:".($ENV{LIBPATH} || ''); - if ($usingWindows) { - $ENV{PATH} = "$libdir;".($ENV{PATH} || ''); - } else { - $ENV{PATH} = "$libdir:".($ENV{PATH} || ''); - } + $ENV{PATH} = "$libdir:".($ENV{PATH} || ''); } # Put $bindir to the end of PATH. We want to prefer system binaries by @@ -128,13 +124,10 @@ if (defined $libdir) # want to find binaries if they're not in PATH. if (defined $bindir) { - if ($usingWindows) { - $ENV{PATH} = ($ENV{PATH} || '').";$bindir"; - } else { - $ENV{PATH} = ($ENV{PATH} || '').":$bindir"; - } + $ENV{PATH} = ($ENV{PATH} || '').":$bindir"; } + # Most people are used to unified diffs these days, rather than the # context diffs pg_regress defaults to. Change default to avoid # everyone having to (re-)learn how to change that setting. Also add @@ -460,21 +453,23 @@ if ($usingWindows) { print $fh "--variable=dev_null=\"/nul\" "; print $fh "--variable=temp_dir=\"%TEMP%\" "; + print $fh "--variable=psql=\"".catfile($bindir, "psql")."\" "; } else { print $fh "--variable=dev_null=\"/dev/null\" "; print $fh "--variable=temp_dir=\"/tmp/\" "; + print $fh "--variable=psql=\"psql\" "; } if ($usingWindows) { - print $fh " %*\n"; # pass on the commandline arguments + print $fh "%*\n"; # pass on the commandline arguments } else { - print $fh " \"\$@\"\n"; # pass on the commandline arguments + print $fh "\"\$@\"\n"; # pass on the commandline arguments } close $fh; @@ -525,12 +520,6 @@ else } } -if ($usingWindows) -{ - # takeown returns a failing result code no matter what happens, so skip the check - system("takeown /f data"); - system("icacls data /grant \%userdomain\%\\\%username\%:F"); -} # Routine to shutdown servers at failure/exit sub ShutdownServers() diff --git a/windows/Mkvcbuild-minimize.patch b/windows/Mkvcbuild-minimize.patch deleted file mode 100644 index 497cec145..000000000 --- a/windows/Mkvcbuild-minimize.patch +++ /dev/null @@ -1,254 +0,0 @@ -diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm -index 93f364a..d1b0968 100644 ---- a/src/tools/msvc/Mkvcbuild.pm -+++ b/src/tools/msvc/Mkvcbuild.pm -@@ -344,66 +344,66 @@ sub mkvcbuild - AddSimpleFrontend($d); - } - -- my $pgbasebackup = AddSimpleFrontend('pg_basebackup', 1); -- $pgbasebackup->AddFile('src/bin/pg_basebackup/pg_basebackup.c'); -- $pgbasebackup->AddLibrary('ws2_32.lib'); -- -- my $pgreceivewal = AddSimpleFrontend('pg_basebackup', 1); -- $pgreceivewal->{name} = 'pg_receivewal'; -- $pgreceivewal->AddFile('src/bin/pg_basebackup/pg_receivewal.c'); -- $pgreceivewal->AddLibrary('ws2_32.lib'); -- -- my $pgrecvlogical = AddSimpleFrontend('pg_basebackup', 1); -- $pgrecvlogical->{name} = 'pg_recvlogical'; -- $pgrecvlogical->AddFile('src/bin/pg_basebackup/pg_recvlogical.c'); -- $pgrecvlogical->AddLibrary('ws2_32.lib'); -- -- my $pgrewind = AddSimpleFrontend('pg_rewind', 1); -- $pgrewind->{name} = 'pg_rewind'; -- $pgrewind->AddFile('src/backend/access/transam/xlogreader.c'); -- $pgrewind->AddLibrary('ws2_32.lib'); -- $pgrewind->AddDefine('FRONTEND'); -- -- my $pgevent = $solution->AddProject('pgevent', 'dll', 'bin'); -- $pgevent->AddFiles('src/bin/pgevent', 'pgevent.c', 'pgmsgevent.rc'); -- $pgevent->AddResourceFile('src/bin/pgevent', 'Eventlog message formatter', -- 'win32'); -- $pgevent->RemoveFile('src/bin/pgevent/win32ver.rc'); -- $pgevent->UseDef('src/bin/pgevent/pgevent.def'); -- $pgevent->DisableLinkerWarnings('4104'); -- -- my $pgdump = AddSimpleFrontend('pg_dump', 1); -- $pgdump->AddIncludeDir('src/backend'); -- $pgdump->AddFile('src/bin/pg_dump/pg_dump.c'); -- $pgdump->AddFile('src/bin/pg_dump/common.c'); -- $pgdump->AddFile('src/bin/pg_dump/pg_dump_sort.c'); -- $pgdump->AddLibrary('ws2_32.lib'); -- -- my $pgdumpall = AddSimpleFrontend('pg_dump', 1); -- -- # pg_dumpall doesn't use the files in the Makefile's $(OBJS), unlike -- # pg_dump and pg_restore. -- # So remove their sources from the object, keeping the other setup that -- # AddSimpleFrontend() has done. -- my @nodumpall = grep { m!src/bin/pg_dump/.*\.c$! } -- keys %{ $pgdumpall->{files} }; -- delete @{ $pgdumpall->{files} }{@nodumpall}; -- $pgdumpall->{name} = 'pg_dumpall'; -- $pgdumpall->AddIncludeDir('src/backend'); -- $pgdumpall->AddFile('src/bin/pg_dump/pg_dumpall.c'); -- $pgdumpall->AddFile('src/bin/pg_dump/dumputils.c'); -- $pgdumpall->AddLibrary('ws2_32.lib'); -- -- my $pgrestore = AddSimpleFrontend('pg_dump', 1); -- $pgrestore->{name} = 'pg_restore'; -- $pgrestore->AddIncludeDir('src/backend'); -- $pgrestore->AddFile('src/bin/pg_dump/pg_restore.c'); -- $pgrestore->AddLibrary('ws2_32.lib'); -- -- my $zic = $solution->AddProject('zic', 'exe', 'utils'); -- $zic->AddFiles('src/timezone', 'zic.c'); -- $zic->AddDirResourceFile('src/timezone'); -- $zic->AddReference($libpgcommon, $libpgport); -+# my $pgbasebackup = AddSimpleFrontend('pg_basebackup', 1); -+# $pgbasebackup->AddFile('src/bin/pg_basebackup/pg_basebackup.c'); -+# $pgbasebackup->AddLibrary('ws2_32.lib'); -+# -+# my $pgreceivewal = AddSimpleFrontend('pg_basebackup', 1); -+# $pgreceivewal->{name} = 'pg_receivewal'; -+# $pgreceivewal->AddFile('src/bin/pg_basebackup/pg_receivewal.c'); -+# $pgreceivewal->AddLibrary('ws2_32.lib'); -+# -+# my $pgrecvlogical = AddSimpleFrontend('pg_basebackup', 1); -+# $pgrecvlogical->{name} = 'pg_recvlogical'; -+# $pgrecvlogical->AddFile('src/bin/pg_basebackup/pg_recvlogical.c'); -+# $pgrecvlogical->AddLibrary('ws2_32.lib'); -+# -+# my $pgrewind = AddSimpleFrontend('pg_rewind', 1); -+# $pgrewind->{name} = 'pg_rewind'; -+# $pgrewind->AddFile('src/backend/access/transam/xlogreader.c'); -+# $pgrewind->AddLibrary('ws2_32.lib'); -+# $pgrewind->AddDefine('FRONTEND'); -+# -+# my $pgevent = $solution->AddProject('pgevent', 'dll', 'bin'); -+# $pgevent->AddFiles('src/bin/pgevent', 'pgevent.c', 'pgmsgevent.rc'); -+# $pgevent->AddResourceFile('src/bin/pgevent', 'Eventlog message formatter', -+# 'win32'); -+# $pgevent->RemoveFile('src/bin/pgevent/win32ver.rc'); -+# $pgevent->UseDef('src/bin/pgevent/pgevent.def'); -+# $pgevent->DisableLinkerWarnings('4104'); -+# -+# my $pgdump = AddSimpleFrontend('pg_dump', 1); -+# $pgdump->AddIncludeDir('src/backend'); -+# $pgdump->AddFile('src/bin/pg_dump/pg_dump.c'); -+# $pgdump->AddFile('src/bin/pg_dump/common.c'); -+# $pgdump->AddFile('src/bin/pg_dump/pg_dump_sort.c'); -+# $pgdump->AddLibrary('ws2_32.lib'); -+# -+# my $pgdumpall = AddSimpleFrontend('pg_dump', 1); -+# -+# # pg_dumpall doesn't use the files in the Makefile's $(OBJS), unlike -+# # pg_dump and pg_restore. -+# # So remove their sources from the object, keeping the other setup that -+# # AddSimpleFrontend() has done. -+# my @nodumpall = grep { m!src/bin/pg_dump/.*\.c$! } -+# keys %{ $pgdumpall->{files} }; -+# delete @{ $pgdumpall->{files} }{@nodumpall}; -+# $pgdumpall->{name} = 'pg_dumpall'; -+# $pgdumpall->AddIncludeDir('src/backend'); -+# $pgdumpall->AddFile('src/bin/pg_dump/pg_dumpall.c'); -+# $pgdumpall->AddFile('src/bin/pg_dump/dumputils.c'); -+# $pgdumpall->AddLibrary('ws2_32.lib'); -+# -+# my $pgrestore = AddSimpleFrontend('pg_dump', 1); -+# $pgrestore->{name} = 'pg_restore'; -+# $pgrestore->AddIncludeDir('src/backend'); -+# $pgrestore->AddFile('src/bin/pg_dump/pg_restore.c'); -+# $pgrestore->AddLibrary('ws2_32.lib'); -+# -+# my $zic = $solution->AddProject('zic', 'exe', 'utils'); -+# $zic->AddFiles('src/timezone', 'zic.c'); -+# $zic->AddDirResourceFile('src/timezone'); -+# $zic->AddReference($libpgcommon, $libpgport); - - if (!$solution->{options}->{xml}) - { -@@ -422,39 +422,39 @@ sub mkvcbuild - - # AddProject() does not recognize the constructs used to populate OBJS in - # the pgcrypto Makefile, so it will discover no files. -- my $pgcrypto = -- $solution->AddProject('pgcrypto', 'dll', 'crypto', 'contrib/pgcrypto'); -- $pgcrypto->AddFiles( -- 'contrib/pgcrypto', 'pgcrypto.c', -- 'px.c', 'px-hmac.c', -- 'px-crypt.c', 'crypt-gensalt.c', -- 'crypt-blowfish.c', 'crypt-des.c', -- 'crypt-md5.c', 'mbuf.c', -- 'pgp.c', 'pgp-armor.c', -- 'pgp-cfb.c', 'pgp-compress.c', -- 'pgp-decrypt.c', 'pgp-encrypt.c', -- 'pgp-info.c', 'pgp-mpi.c', -- 'pgp-pubdec.c', 'pgp-pubenc.c', -- 'pgp-pubkey.c', 'pgp-s2k.c', -- 'pgp-pgsql.c'); -- if ($solution->{options}->{openssl}) -- { -- $pgcrypto->AddFiles('contrib/pgcrypto', 'openssl.c', -- 'pgp-mpi-openssl.c'); -- } -- else -- { -- $pgcrypto->AddFiles( -- 'contrib/pgcrypto', 'md5.c', -- 'sha1.c', 'internal.c', -- 'internal-sha2.c', 'blf.c', -- 'rijndael.c', 'pgp-mpi-internal.c', -- 'imath.c'); -- } -- $pgcrypto->AddReference($postgres); -- $pgcrypto->AddLibrary('ws2_32.lib'); -- my $mf = Project::read_file('contrib/pgcrypto/Makefile'); -- GenerateContribSqlFiles('pgcrypto', $mf); -+# my $pgcrypto = -+# $solution->AddProject('pgcrypto', 'dll', 'crypto', 'contrib/pgcrypto'); -+# $pgcrypto->AddFiles( -+# 'contrib/pgcrypto', 'pgcrypto.c', -+# 'px.c', 'px-hmac.c', -+# 'px-crypt.c', 'crypt-gensalt.c', -+# 'crypt-blowfish.c', 'crypt-des.c', -+# 'crypt-md5.c', 'mbuf.c', -+# 'pgp.c', 'pgp-armor.c', -+# 'pgp-cfb.c', 'pgp-compress.c', -+# 'pgp-decrypt.c', 'pgp-encrypt.c', -+# 'pgp-info.c', 'pgp-mpi.c', -+# 'pgp-pubdec.c', 'pgp-pubenc.c', -+# 'pgp-pubkey.c', 'pgp-s2k.c', -+# 'pgp-pgsql.c'); -+# if ($solution->{options}->{openssl}) -+# { -+# $pgcrypto->AddFiles('contrib/pgcrypto', 'openssl.c', -+# 'pgp-mpi-openssl.c'); -+# } -+# else -+# { -+# $pgcrypto->AddFiles( -+# 'contrib/pgcrypto', 'md5.c', -+# 'sha1.c', 'internal.c', -+# 'internal-sha2.c', 'blf.c', -+# 'rijndael.c', 'pgp-mpi-internal.c', -+# 'imath.c'); -+# } -+# $pgcrypto->AddReference($postgres); -+# $pgcrypto->AddLibrary('ws2_32.lib'); -+# my $mf = Project::read_file('contrib/pgcrypto/Makefile'); -+# GenerateContribSqlFiles('pgcrypto', $mf); - - foreach my $subdir ('contrib', 'src/test/modules') - { -@@ -472,7 +472,8 @@ sub mkvcbuild - # Build Perl and Python modules after contrib/ modules to satisfy some - # dependencies with transform contrib modules, like hstore_plpython - # ltree_plpython and hstore_plperl. -- if ($solution->{options}->{python}) -+# if ($solution->{options}->{python}) -+ if (0) - { - - # Attempt to get python version and location. -@@ -512,7 +513,8 @@ sub mkvcbuild - 'PLPYTHON_LIBNAME="plpython' . $pymajorver . '"'); - } - -- if ($solution->{options}->{perl}) -+# if ($solution->{options}->{perl}) -+ if (0) - { - my $plperlsrc = "src/pl/plperl/"; - my $plperl = -@@ -748,7 +750,7 @@ sub mkvcbuild - } - } - -- $mf = -+ my $mf = - Project::read_file('src/backend/utils/mb/conversion_procs/Makefile'); - $mf =~ s{\\\r?\n}{}g; - $mf =~ m{SUBDIRS\s*=\s*(.*)$}m -@@ -802,13 +804,13 @@ sub mkvcbuild - - # fix up pg_waldump once it's been set up - # files symlinked on Unix are copied on windows -- my $pg_waldump = AddSimpleFrontend('pg_waldump'); -- $pg_waldump->AddDefine('FRONTEND'); -- foreach my $xf (glob('src/backend/access/rmgrdesc/*desc.c')) -- { -- $pg_waldump->AddFile($xf); -- } -- $pg_waldump->AddFile('src/backend/access/transam/xlogreader.c'); -+# my $pg_waldump = AddSimpleFrontend('pg_waldump'); -+# $pg_waldump->AddDefine('FRONTEND'); -+# foreach my $xf (glob('src/backend/access/rmgrdesc/*desc.c')) -+# { -+# $pg_waldump->AddFile($xf); -+# } -+# $pg_waldump->AddFile('src/backend/access/transam/xlogreader.c'); - - $solution->Save(); - return $solution->{vcver}; diff --git a/windows/Mkvcbuild.pm.patch b/windows/Mkvcbuild.pm.patch deleted file mode 100644 index 580ae7398..000000000 --- a/windows/Mkvcbuild.pm.patch +++ /dev/null @@ -1,25 +0,0 @@ -commit 06672ddcdf3da7ba473b0907405133076dce8af2 -Author: Brian Cloutier -Date: Wed Nov 1 14:11:03 2017 -0700 - - Help postgres build the citus 'contrib' module - -diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm -index 4c2e12e..82f3ab1 100644 ---- a/src/tools/msvc/Mkvcbuild.pm -+++ b/src/tools/msvc/Mkvcbuild.pm -@@ -31,11 +31,11 @@ my $libpq; - - # Set of variables for modules in contrib/ and src/test/modules/ - my $contrib_defines = { 'refint' => 'REFINT_VERBOSE' }; --my @contrib_uselibpq = ('dblink', 'oid2name', 'postgres_fdw', 'vacuumlo'); -+my @contrib_uselibpq = ('citus', 'dblink', 'oid2name', 'postgres_fdw', 'vacuumlo'); - my @contrib_uselibpgport = ('oid2name', 'pg_standby', 'vacuumlo'); - my @contrib_uselibpgcommon = ('oid2name', 'pg_standby', 'vacuumlo'); --my $contrib_extralibs = undef; --my $contrib_extraincludes = { 'dblink' => ['src/backend'] }; -+my $contrib_extralibs = { 'citus' => ['ws2_32.lib']}; -+my $contrib_extraincludes = { 'dblink' => ['src/backend'], 'citus' => ['contrib/citus/src/include', 'contrib/citus/windows/include'] }; - my $contrib_extrasource = { - 'cube' => [ 'contrib/cube/cubescan.l', 'contrib/cube/cubeparse.y' ], - 'seg' => [ 'contrib/seg/segscan.l', 'contrib/seg/segparse.y' ], }; diff --git a/windows/include/citus_version.h b/windows/include/citus_version.h deleted file mode 100644 index 01e97ad9e..000000000 --- a/windows/include/citus_version.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Citus full name as a string */ -#define CITUS_NAME "Citus" - -/* Citus edition as a string */ -#define CITUS_EDITION "community" - -/* Extension version expected by this Citus build */ -#define CITUS_EXTENSIONVERSION "8.0-1" - -/* Citus major version as a string */ -#define CITUS_MAJORVERSION "8.0" - -/* Citus version as a string */ -#define CITUS_VERSION "8.0devel" - -/* Citus version as a number */ -#define CITUS_VERSION_NUM 80000 - -/* A string containing the version number, platform, and C compiler */ -#define CITUS_VERSION_STR "Citus 8.0devel on x86_64-windows, compiled by Visual Studio" - -/* Define to 1 if you have the `curl' library (-lcurl). */ -#define HAVE_LIBCURL 0 - -/* Base URL for statistics collection and update checks */ -#define REPORTS_BASE_URL "https://reports.citusdata.com"