Giter Club home page Giter Club logo

postgres_cmake's Introduction

trophy

postgres_cmake's People

Contributors

adunstan avatar alvherre avatar anarazel avatar bmomjian avatar darcyjcain avatar dbdbdb avatar deanrasheed avatar feodor avatar grunthos avatar gsstark avatar hlinnaka avatar itgacky avatar jconway avatar jeff-davis avatar kgrittn avatar kjurka avatar masaofujii avatar mhagander avatar michvhf avatar nmisch avatar petere avatar rhodiumtoad avatar robertmhaas avatar scrappy avatar sfrost avatar simonat2ndquadrant avatar stalkerg avatar tatsuo-ishii avatar tglsfdc avatar vadim4o avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

postgres_cmake's Issues

elif in cmake/RegressCheck.cmake

Hi!
Awesome work, thank you.
I'm not sure, but my cmake told me that you missed "se" in folowing line of RegressCheck.cmake
elif(CMAKE_SYSTEM_NAME STREQUAL "AIX")
Please, check that file.

Build VM for Windows

Please consider VM for windows build.
Currently Postgres build for windows is painful due to manual dependancies resolution.
You have to install apropriate MSVS, SDK, bison, flex, python, perl, etc etc.
Btw, in my expirience, bison and flex from MinGW won't do the trick. May be I'm just not lucky enough.

It would be wonderfull if you could start hacking just by downloading unactivated windows VM stuffed with free IDE (VC 2015 Community or we can try asking JetBrains for CLion) or without IDE at all.

If you wish I can provide you with Azure Hyper-V machine from my teacher MSDN Subscription from Ural Federal University.

Failure on OSX with OpenSSL

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
OPENSSL_INCLUDE_DIR (ADVANCED)
used as include directory in directory /Users/mpaquier/git/postgres/src/interfaces/libpq
used as include directory in directory /Users/mpaquier/git/postgres/contrib/pgcrypto

FWIW, I am using OpenSSL from brew, but I did not link to it using the first command of cmake in README.md.

Small doc about CMake.

I wrote small README.cmake but my English is really poor and we must improve that.
In this document we must write about basic features of CMake and main differences between CMake and autotools+gnumake.

@markir9 can you help me?

fdatasync not found in FreeBSD

Example:

-- Looking for fdatasync
-- Looking for fdatasync - not found
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:

MacOS build broken with OpenSSL

I am running cmake on macOS with the following options:

-DOPENSSL_ROOT_DIR=/usr/local/Cellar/openssl/1.0.2l
-DOPENSSL_INCLUDE_DIR=/usr/local/Cellar/openssl/1.0.2l/include
-DOPENSSL_LIBRARIES=/usr/local/Cellar/openssl/1.0.2l/lib
-DWITH_PERL=ON
-DWITH_LIBXML=ON
-DWITH_OPENSSL=ON

I am obviously trying to force cmake to see openssl inside my brew installation.

The output of cmake seems to indicate the correct libraries are detected:

...
--     Conclusion
-- Host tuple: Darwin-16.7.0
-- OpenSSL: TRUE version: 1.0.2l libs: /usr/local/Cellar/openssl/1.0.2l/lib/libssl.dylib;/usr/local/Cellar/openssl/1.0.2l/lib/libcrypto.dylib
-- Python: 
...

However I am getting the following error:

[  8%] Built target pgport
[  9%] Built target pgport_srv
[  9%] Building C object src/common/CMakeFiles/pgcommon.dir/scram-common.c.o
[  9%] Building C object src/common/CMakeFiles/pgcommon.dir/sha2_openssl.c.o
[  9%] Building C object src/common/CMakeFiles/pgcommon_srv.dir/scram-common.c.o
[ 10%] Built target ecpg
In file included from /Users/joe/Development/postgres_cmake/src/common/scram-common.c:27:
In file included from /Users/joe/Development/postgres_cmake/src/include/common/scram-common.h:16:
/Users/joe/Development/postgres_cmake/src/include/common/sha2.h:54:10: fatal error: 'openssl/sha.h' file not found
#include <openssl/sha.h>

I suspect this is an issues with cmake rather than what you've done with postgres. I'm not in any way familiar with cmake, however, so I thought I would ask here first.

make install-strip

Or, maybe "make install" can just always strip the binary's?
Or two steps, "make strip", "make install"?

Make installcheck does not use installed instance

It looks like 'make installcheck' does the same thing as 'make check' i.e creates a temporary instance and runs the regression tests. It should work same as the autotools build and connect to a prev created running instance.

build extension uuid-ossp failed.

In mac os x 10.13, I have already install brew install ossp-uuid.

add cmake option: -DWITH_UUID=e2fs Build got error

In file included from /Users/jiamo/postgres/postgres_cmake/contrib/uuid-ossp/uuid-ossp.c:34:
In file included from /usr/local/Cellar/ossp-uuid/1.6.2_2/include/ossp/uuid.h:38:
In file included from /usr/include/unistd.h:658:
/usr/include/gethostuuid.h:39:25: error: expected identifier
int gethostuuid(uuid_t, const struct timespec *) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_NA);
                        ^
In file included from /Users/jiamo/postgres/postgres_cmake/contrib/uuid-ossp/uuid-ossp.c:34:
/usr/local/Cellar/ossp-uuid/1.6.2_2/include/ossp/uuid.h:94:24: error: typedef redefinition with different types ('struct uuid_st' vs
      '__darwin_uuid_t' (aka 'unsigned char [16]'))
typedef struct uuid_st uuid_t;
                       ^
/usr/include/sys/_types/_uuid_t.h:31:25: note: previous definition is here
typedef __darwin_uuid_t uuid_t;
                        ^
In file included from /Users/jiamo/postgres/postgres_cmake/contrib/uuid-ossp/uuid-ossp.c:34:
/usr/local/Cellar/ossp-uuid/1.6.2_2/include/ossp/uuid.h:107:22: error: conflicting types for 'uuid_compare'
extern uuid_rc_t     uuid_compare  (const uuid_t  *_uuid, const uuid_t *_uuid2, int *_result);
                     ^
/usr/include/uuid/uuid.h:57:5: note: previous declaration is here
int uuid_compare(const uuid_t uu1, const uuid_t uu2);
    ^
3 errors generated.

I add debug in in FindLibUUID.cmake. message("show libuuid_found ${LIBUUID_FOUND} ${LIBUUID_LIBRARIES}") some pieces of cmake messsage is:

-- Checking for one of the modules 'uuid'
show libuuid_found 1 uuid

I try to build origin postgres.
./configure -with-uuid=e2fs works fine. got

checking uuid/uuid.h usability... yes
checking uuid/uuid.h presence... yes
checking for uuid/uuid.h... yes

While ./configure -with-uuid=ossp got

checking for ossp/uuid.h... no
checking uuid.h usability... no
checking uuid.h presence... no
checking for uuid.h... no
configure: error: header file <ossp/uuid.h> or <uuid.h> is required for OSSP UUID

While ./configure -with-uuid=bsd. got

checking for uuid_to_string... no
configure: error: BSD UUID functions are not present

So how can I do something to make cmake postgres build success?

Regress tests under MacOSX

Now enum test fail under MacOSX ElCapitan. Some things wrong in dynahash or plpgsql.
Crash in pl_comp.c plpgsql_HashTableLookup:

return hentry->function;

I think one hash gen twice for different keys.
Use case:

--
-- User functions, can't test perl/python etc here since may not be compiled.
--
CREATE FUNCTION echo_me(anyenum) RETURNS text AS $$
BEGIN
RETURN $1::text || 'omg';
END
$$ LANGUAGE plpgsql;
SELECT echo_me('red'::rainbow);
--
-- Concrete function should override generic one
--
CREATE FUNCTION echo_me(rainbow) RETURNS text AS $$
BEGIN
RETURN $1::text || 'wtf';
END
$$ LANGUAGE plpgsql;
SELECT echo_me('red'::rainbow);

I think echo_me(rainbow) not corrected overwrite echo_me(anyenum).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.