Thread: Test CMake build
Hello all. Please test build Postgres using cmake. If you are of course interested. Still not everything is ready but most of the work. Assembly instructions as does the repository is on github: https://github.com/stalkerg/postgres_cmake The compilation will be enough (tests even better). I need feedbacks so that create issues on github. Very interesting NetBSD, OpenBSD, Solaris. Thanks! -- Yury Zhuravlev
> On 10 Feb 2016, at 19:09, Yury Zhuravlev <u.zhuravlev@postgrespro.ru> wrote: > > Hello all. > Please test build Postgres using cmake. If you are of course interested. > Still not everything is ready but most of the work. Assembly instructions as does the repository is on github: > https://github.com/stalkerg/postgres_cmake > > The compilation will be enough (tests even better). I need feedbacks so that create issues on github. > Very interesting NetBSD, OpenBSD, Solaris. I was under the impression that the FreeBSD port already uses cmake? Alban Hertroys -- If you can't see the forest for the trees, cut the trees and you'll find there is no forest.
On 2/10/2016 12:09 PM, Yury Zhuravlev wrote: > Hello all. > Please test build Postgres using cmake. If you are of course interested. > Still not everything is ready but most of the work. Assembly > instructions as does the repository is on github: > https://github.com/stalkerg/postgres_cmake > > The compilation will be enough (tests even better). I need feedbacks so > that create issues on github. > Very interesting NetBSD, OpenBSD, Solaris. > Thanks! Slackware64, 14.1 -- The C compiler identification is GNU 4.9.2 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check if the system is big endian -- Searching 16 bit integer -- Looking for sys/types.h -- Looking for sys/types.h - found etc, etc, -- Performing Test AC_FUNC_ACCEPT -- Performing Test AC_FUNC_ACCEPT - Failed -- Performing Test AC_FUNC_ACCEPT -- Performing Test AC_FUNC_ACCEPT - Failed ...A TON of the above... -- Performing Test AC_FUNC_ACCEPT -- Performing Test AC_FUNC_ACCEPT - Failed ERRORcould not determine argument types -- Looking for accept function args - found , , , * -- Check alignment of double -- Check alignment of double - 8 -- Check alignment of int -- Check alignment of int - 4 -- Check alignment of long -- Check alignment of long - 8 -- Check alignment of long long int -- Check alignment of long long int - 8 -- Check alignment of short -- Check alignment of short - 2 -- Check size of int64 -- Check size of int64 - failed -- Check size of uint64 -- Check size of uint64 - failed -- Check size of int8 -- Check size of int8 - failed -- Check size of void * -- Check size of void * - failed -- Check size of long int -- Check size of long int - failed -- Check size of long -- Check size of long - failed -- Check size of size_t -- Check size of size_t - failed -- Check size of locale_t -- Check size of locale_t - failed -- Check size of long long int -- Check size of long long int - failed CMake Error at CMakeLists.txt:262 (message): Cannot find a working 64-bit integer type.
On 2/10/2016 2:45 PM, Andy Colson wrote: > On 2/10/2016 12:09 PM, Yury Zhuravlev wrote: >> Hello all. >> Please test build Postgres using cmake. If you are of course interested. >> Still not everything is ready but most of the work. Assembly >> instructions as does the repository is on github: >> https://github.com/stalkerg/postgres_cmake >> >> The compilation will be enough (tests even better). I need feedbacks so >> that create issues on github. >> Very interesting NetBSD, OpenBSD, Solaris. >> Thanks! > Slackware64, 14.1 > > > -- The C compiler identification is GNU 4.9.2 > -- Check for working C compiler: /usr/bin/cc > -- Check for working C compiler: /usr/bin/cc -- works This might be important: -- Looking for include file pwd.h -- Looking for include file pwd.h - found -- Found Readline: /usr/include -- Looking for include files stdio.h, readline.h -- Looking for include files stdio.h, readline.h - not found -- Looking for include files stdio.h, history.h -- Looking for include files stdio.h, history.h - not found -- Looking for include files stdio.h, readline/history.h -- Looking for include files stdio.h, readline/history.h - found -- Looking for include files stdio.h, readline/readline.h -- Looking for include files stdio.h, readline/readline.h - found -- Looking for include files stdio.h, editline/history.h -- Looking for include files stdio.h, editline/history.h - not found -- Looking for include files stdio.h, editline/readline.h -- Looking for include files stdio.h, editline/readline.h - not found > -- Check size of long long int - failed > CMake Error at CMakeLists.txt:262 (message): > Cannot find a working 64-bit integer type. > the end of CMakeFiles/CMakeError.log shows: Determining size of long long int failed with the following output: Change Dir: /home/andy/projects/postgres_cmake/build/CMakeFiles/CMakeTmp Run Build Command:/usr/bin/gmake "cmTryCompileExec301475258/fast" /usr/bin/gmake -f CMakeFiles/cmTryCompileExec301475258.dir/build.make CMakeFiles/cmTryCompileExec301475258.dir/build gmake[1]: Entering directory `/home/andy/projects/postgres_cmake/build/CMakeFiles/CMakeTmp' /usr/bin/cmake -E cmake_progress_report /home/andy/projects/postgres_cmake/build/CMakeFiles/CMakeTmp/CMakeFiles 1 Building C object CMakeFiles/cmTryCompileExec301475258.dir/HAVE_LONG_LONG_INT_64.c.o /usr/bin/cc -o CMakeFiles/cmTryCompileExec301475258.dir/HAVE_LONG_LONG_INT_64.c.o -c /home/andy/projects/postgres_cmake/build/CMakeFiles/CheckTypeSize/HAVE_LONG_LONG_INT_64.c Linking C executable cmTryCompileExec301475258 /usr/bin/cmake -E cmake_link_script CMakeFiles/cmTryCompileExec301475258.dir/link.txt --verbose=1 /usr/bin/cc CMakeFiles/cmTryCompileExec301475258.dir/HAVE_LONG_LONG_INT_64.c.o -o cmTryCompileExec301475258 -rdynamic -lreadline /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tputs' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tgoto' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tgetflag' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `UP' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tgetent' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tgetnum' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `PC' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `tgetstr' /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: undefined reference to `BC' collect2: error: ld returned 1 exit status gmake[1]: *** [cmTryCompileExec301475258] Error 1 gmake[1]: Leaving directory `/home/andy/projects/postgres_cmake/build/CMakeFiles/CMakeTmp' gmake: *** [cmTryCompileExec301475258/fast] Error 2
On 2/10/2016 2:50 PM, Andy Colson wrote: > On 2/10/2016 2:45 PM, Andy Colson wrote: >> On 2/10/2016 12:09 PM, Yury Zhuravlev wrote: >>> Hello all. >>> Please test build Postgres using cmake. If you are of course interested. >>> Still not everything is ready but most of the work. Assembly >>> instructions as does the repository is on github: >>> https://github.com/stalkerg/postgres_cmake >>> >>> The compilation will be enough (tests even better). I need feedbacks so >>> that create issues on github. >>> Very interesting NetBSD, OpenBSD, Solaris. >>> Thanks! >> Slackware64, 14.1 >> >> > /usr/lib64/gcc/x86_64-slackware-linux/4.9.2/../../../../lib64/libreadline.so: > undefined reference to `tputs' tputs is in ncurses? I did not see a: -- Looking for curses And it didnt try to link with it: /usr/bin/cc CMakeFiles/cmTryCompileExec301475258.dir/HAVE_LONG_LONG_INT_64.c.o -o cmTryCompileExec301475258 -rdynamic -lreadline -Andy
Alban Hertroys wrote: > I was under the impression that the FreeBSD port already uses cmake? I tested on a 32-bit FreeBSD. All tests passed. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Andy Colson wrote: > the end of CMakeFiles/CMakeError.log shows: Many thanks! I think I understand what the problem is. I will try to fix soon. I write as a corrected. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Yury Zhuravlev wrote: > I will try to fix soon. > I write as a corrected. You can try again. Thanks! -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
On 2/11/2016 9:49 AM, Yury Zhuravlev wrote: > Yury Zhuravlev wrote: >> I will try to fix soon. >> I write as a corrected. > > You can try again. Thanks! > That seems better: -- Found Readline: /usr/include -- Found Curses: /usr/lib64/libcurses.so Is this bad? -- Check size of int64 -- Check size of int64 - failed -- Check size of uint64 -- Check size of uint64 - failed -- Check size of int8 -- Check size of int8 - failed make -j2 running now... -Andy
On 2/11/2016 10:44 AM, Andy Colson wrote: > On 2/11/2016 9:49 AM, Yury Zhuravlev wrote: >> Yury Zhuravlev wrote: >>> I will try to fix soon. >>> I write as a corrected. >> >> You can try again. Thanks! >> > > That seems better: > > -- Found Readline: /usr/include > -- Found Curses: /usr/lib64/libcurses.so > > Is this bad? > -- Check size of int64 > -- Check size of int64 - failed > -- Check size of uint64 > -- Check size of uint64 - failed > -- Check size of int8 > -- Check size of int8 - failed > > make -j2 > running now... > > -Andy > > > make finished ok. I build slackware packages, so it needs to install into a temp spot, which kinda works: andy@mapper:~/projects/postgres_cmake/build$ mkdir /tmp/pg999 I used to use "make install-strip", is that not a thing anymore? andy@mapper:~/projects/postgres_cmake/build$ make install-strip DESTDIR=/tmp/pg999 make: *** No rule to make target `install-strip'. Stop. Ok, we'll install, but into a tmp folder: andy@mapper:~/projects/postgres_cmake/build$ make install DESTDIR=/tmp/pg999 [ 0%] Built target gen_errorcodes [ 3%] Built target port [ 5%] Built target port_srv <SNIP> [100%] Built target refint [100%] Built target timetravel Install the project... -- Install configuration: "" -- Installing: /tmp/pg999/usr/local/pg99/lib/libpq.so -- Installing: /tmp/pg999/usr/local/pg99/bin/initdb <Ok .. looks good> -- Removed runtime path from "/tmp/pg999/usr/local/pg99/bin/initdb" <Not sure what that means, but ok> <now we hit a problem> -- Installing: /tmp/pg999/usr/local/pg99/share/timezonesets/Default -- Installing: /tmp/pg999/usr/local/pg99/share/timezonesets/Australia -- Installing: /tmp/pg999/usr/local/pg99/share/timezonesets/India /home/andy/projects/postgres_cmake/build/src/timezone//zic: Cannot create directory /usr/local/pg99: Permission denied -- Installing: /tmp/pg999/usr/local/pg99/lib/plpgsql.so -- Installing: /tmp/pg999/usr/local/pg99/share/extension/plpgsql.control -- Installing: /tmp/pg999/usr/local/pg99/share/extension/plpgsql--1.0.sql -- Installing: /tmp/pg999/usr/local/pg99/share/extension/plpgsql--unpackaged--1.0.sql I start with: cmake .. -DCMAKE_INSTALL_PREFIX="/usr/local/pg99" I'm not building/installing as root, so cannot actually write to /usr/local/pg99 I dunno what version we are building, and dont want to replace anything currently installed, so I went for pg99. andy@mapper:~/projects/postgres_cmake/build$ make installcheck Scanning dependencies of target tablespace-setup [ 0%] Built target tablespace-setup [ 0%] Built target gen_errorcodes [ 42%] Built target port [ 85%] Built target pq [100%] Built target pgcommon [100%] Built target pg_regress Scanning dependencies of target installcheck ============== creating temporary instance ============== ============== initializing database system ============== pg_regress: initdb failed Examine /home/andy/projects/postgres_cmake/src/test/regress/log/initdb.log for the reason. Command was: "/usr/local/pg99/bin/initdb" -D "/home/andy/projects/postgres_cmake/src/test/regress/tmp_check/data" --noclean --nosync --no-locale > "/home/andy/projects/postgres_cmake/src/test/regress/log/initdb.log" 2>&1 make[3]: *** [src/test/regress/CMakeFiles/installcheck] Error 2 make[2]: *** [src/test/regress/CMakeFiles/installcheck.dir/all] Error 2 make[1]: *** [src/test/regress/CMakeFiles/installcheck.dir/rule] Error 2 make: *** [installcheck] Error 2 andy@mapper:~/projects/postgres_cmake/build$ cat /home/andy/projects/postgres_cmake/src/test/regress/log/initdb.log sh: /usr/local/pg99/bin/initdb: No such file or directory Yeah, that makes sense, its not actually there yet. Is the installcheck important to you? I can do the install if you like. -Andy
On 2/10/2016 12:09 PM, Yury Zhuravlev wrote: > Hello all. > Please test build Postgres using cmake. If you are of course interested. > Still not everything is ready but most of the work. Assembly > instructions as does the repository is on github: > https://github.com/stalkerg/postgres_cmake > > The compilation will be enough (tests even better). I need feedbacks so > that create issues on github. > Very interesting NetBSD, OpenBSD, Solaris. > Thanks! On a side note, how hard would it be to print a small summary of options after the cmake step? Its not important, but is pretty nice. mapserver, for example, shows this: -- * Summary of configured options for this build -- * Mandatory components -- * png: /usr/lib64/libpng.so -- * jpeg: /usr/lib64/libjpeg.so -- * freetype: /usr/lib64/libfreetype.so -- * Optional components -- * GDAL: /usr/local/lib/libgdal.so -- * OGR: /usr/local/lib/libgdal.so -- * GD: disabled -- * GIF: /usr/lib64/libgif.so -- * MYSQL: disabled -- * FRIBIDI: /usr/lib64/libfribidi.so -- * GIF: /usr/lib64/libgif.so -- * CAIRO: /usr/lib64/libcairo.so -- * SVGCAIRO: disabled -- * RSVG: disabled -- * CURL: disabled -- * PROJ: /usr/lib64/libproj.so -- * LIBXML2: /usr/lib64/libxml2.so -- * POSTGIS: /usr/local/pg93/lib/libpq.so -- * GEOS: /usr/lib64/libgeos_c.so -- * FastCGI: /usr/lib64/libfcgi.so -- * Oracle Spatial: disabled -- * SDE: disabled -- * Exempi XMP: disabled -- * Optional features -- * WMS SERVER: ENABLED -- * WFS SERVER: ENABLED -- * WCS SERVER: ENABLED -- * SOS SERVER: disabled -- * WMS CLIENT: disabled -- * WFS CLIENT: disabled -- * ICONV: ENABLED -- * Thread-safety support: disabled -- * KML output: disabled -- * Z+M point coordinate support: disabled -- * XML Mapfile support: disabled -- * Mapscripts -- * Python: disabled -- * PHP: disabled -- * PERL: ENABLED -- * RUBY: disabled -- * JAVA: disabled -- * C#: disabled -- * Apache Module (Experimental): disabled -- -- Will install files to /usr/local -- Will install libraries to /usr/local/lib64 We would not care about the libs, but things like integer dates, and perl, python, etc, ssl version. Looks like you calc TABLE_BLOCKSIZE and WAL_BLOCKSIZE, those might be nice to see. Anyway, thanks for all your work on this. Looking good. -Andy
Andy Colson wrote: > Is this bad? > -- Check size of int64 > -- Check size of int64 - failed > -- Check size of uint64 > -- Check size of uint64 - failed > -- Check size of int8 > -- Check size of int8 - failed This is normal behavior for linux. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Yury Zhuravlev <u.zhuravlev@postgrespro.ru> writes: > Andy Colson wrote: >> Is this bad? >> -- Check size of int64 >> -- Check size of int64 - failed >> -- Check size of uint64 >> -- Check size of uint64 - failed >> -- Check size of int8 >> -- Check size of int8 - failed > This is normal behavior for linux. Really? That sure seems misleading as can be, and not something we'd want to be part of a new user's very first impression of Postgres. regards, tom lane
> I used to use "make install-strip", is that not a thing anymore? I think it's plans for the near future. Please create issue in GitHub. > /home/andy/projects/postgres_cmake/build/src/timezone//zic: Cannot create > directory /usr/local/pg99: Permission denied I will fix it. >sh: /usr/local/pg99/bin/initdb: No such file or directory I have not tested yet with DESTDIR. I think tomorrow will correct it. >Yeah, that makes sense, its not actually there yet. Is the installcheck >important to you? I can do the install if you like. installcheck is replace "make check" now. Or I did not understand your question. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Tom Lane wrote: > Really? That sure seems misleading as can be, and not something we'd > want to be part of a new user's very first impression of Postgres. > In configure we have similar messages: checking for int8... no checking for uint8... no checking for int64... no checking for uint64... no -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Yury Zhuravlev <u.zhuravlev@postgrespro.ru> writes: > Tom Lane wrote: >> Really? That sure seems misleading as can be, and not something we'd >> want to be part of a new user's very first impression of Postgres. > In configure we have similar messages: > checking for int8... no > checking for uint8... no > checking for int64... no > checking for uint64... no Hm, well, configure does not use the word "failed" to describe expected cases. regards, tom lane
On четверг, 11 февраля 2016 г. 22:37:12 MSK, Tom Lane wrote: > Hm, well, configure does not use the word "failed" to describe expected > cases. Well, it does not confuse CMake users. (MySQL, KDE) Just the other tradition, I do not see the problem here. :) -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
I tried it on FreeBSD 64-bit, 16Gb, SSD, Core i7 ( ./configure && gmake all; ) 168,99s user 15,46s system 97% cpu 3:09,61 total ( cmake . && gmake all; ) 75,11s user 11,34s system 100% cpu 1:26,30 total Cmake 2 times faster, that is good, but I don't understand why. Which optimization level does cmake buld use by default? Which compiler does it take? It's not obvious, because cmake build hides actual compiler command line. Yury, pls, return back check target... -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
Teodor Sigaev wrote: > I tried it on FreeBSD 64-bit, 16Gb, SSD, Core i7 > > ( ./configure && gmake all; ) 168,99s user 15,46s system 97% cpu 3:09,61 total > ( cmake . && gmake all; ) 75,11s user 11,34s system 100% cpu 1:26,30 total ( CFLAGS='-O2' cmake . && gmake all; ) 141,87s user 12,18s system 97% cpu 2:37,40 total Oops, cmake default target is compiled with -O0. With -O2 cmake is still faster but not so much. > > Cmake 2 times faster, that is good, but I don't understand why. Which > optimization level does cmake buld use by default? Which compiler does it take? > It's not obvious, because cmake build hides actual compiler command line. > > Yury, pls, return back check target... -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
Teodor Sigaev wrote: > Cmake 2 times faster, that is good, but I don't understand why. Which > optimization level does cmake buld use by default? Which compiler does it > take? It's not obvious, because cmake build hides actual compiler command > line. Hm, I don't think having the compile/link lines be hidden up is acceptable. Many times we need to debug some compile problem, and the output is mandatory. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
> Hm, I don't think having the compile/link lines be hidden up is > acceptable. Many times we need to debug some compile problem, and the > output is mandatory. +1 Although it could be fixed by VERBOSE=1 make -- Teodor Sigaev E-mail: teodor@sigaev.ru WWW: http://www.sigaev.ru/
Alvaro Herrera <alvherre@2ndquadrant.com> writes: > Teodor Sigaev wrote: >> Cmake 2 times faster, that is good, but I don't understand why. Which >> optimization level does cmake buld use by default? Which compiler does it >> take? It's not obvious, because cmake build hides actual compiler command >> line. > Hm, I don't think having the compile/link lines be hidden up is > acceptable. Many times we need to debug some compile problem, and the > output is mandatory. As long as it's *possible* to expose the commands, I see nothing wrong with hiding them by default. I personally almost always use "make -s" these days, and would not mind if that became the default behavior. But there had better be a switch to do the other thing. The other make switch I use all the time is -jN (with varying values of N depending on what machine I'm on). If cmake can't provide an equivalent feature, that would be a large minus, because if you have a decent number of cores -j makes a huge difference in build time. regards, tom lane
Teodor Sigaev wrote: > >Hm, I don't think having the compile/link lines be hidden up is > >acceptable. Many times we need to debug some compile problem, and the > >output is mandatory. > > +1 > > Although it could be fixed by > VERBOSE=1 make Verbose needs to be the default. Having a QUIET mode would be nice sometime in the future, but if I were you, I wouldn't propose that for the first cut of this patch -- I think it's easier to sell if you keep the current behavior unchanged. We can discuss further improvements later. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Andy Colson wrote: > Is the installcheck important to you? Hello! You can try new make check. Also "make install" started support DESTDIR. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
On 2/12/2016 9:47 AM, Yury Zhuravlev wrote: > Andy Colson wrote: >> Is the installcheck important to you? > > Hello! > You can try new make check. Also "make install" started support DESTDIR. > cmake and make -j2 fine, but then.... andy@mapper:~/projects/postgres_cmake/build$ make check Scanning dependencies of target check CMake Error: cmake version 2.8.12 Usage: /usr/bin/cmake -E [command] [arguments ...] Available commands: chdir dir cmd [args]... - run command in a given directory compare_files file1 file2 - check if file1 is same as file2 copy file destination - copy file to destination (either file or directory) copy_directory source destination - copy directory 'source' content to directory 'destination' copy_if_different in-file out-file - copy file if input has changed echo [string]... - displays arguments as text echo_append [string]... - displays arguments as text but no new line environment - display the current environment make_directory dir - create a directory md5sum file1 [...] - compute md5sum of files remove [-f] file1 file2 ... - remove the file(s), use -f to force it remove_directory dir - remove a directory and its contents rename oldname newname - rename a file or directory (on one volume) tar [cxt][vfz][cvfj] file.tar [file/dir1 file/dir2 ...] - create or extract a tar or zip archive time command [args] ... - run command and return elapsed time touch file - touch a file. touch_nocreate file - touch a file but do not create it. Available on UNIX only: create_symlink old new - create a symbolic link new -> old make[3]: *** [src/test/regress/CMakeFiles/check] Error 1 make[2]: *** [src/test/regress/CMakeFiles/check.dir/all] Error 2 make[1]: *** [src/test/regress/CMakeFiles/check.dir/rule] Error 2 make: *** [check] Error 2
Tom Lane wrote: > The other make switch I use all the time is -jN (with varying values of N > depending on what machine I'm on). If cmake can't provide an equivalent > feature, that would be a large minus, because if you have a decent number > of cores -j makes a huge difference in build time. Of course supported. -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Andy Colson wrote: > Its not important, but is pretty nice. It's not hard and I think I will do soon. >Anyway, thanks for all your work on this. Looking good. Thanks! -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Andy Colson wrote: > cmake and make -j2 fine, but then.... You can try again I removed some features from CMake 3.x . Realy big thanks for testing! -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
On 02/13/2016 04:33 AM, Yury Zhuravlev wrote: > Andy Colson wrote: >> cmake and make -j2 fine, but then.... > You can try again I removed some features from CMake 3.x . > > Realy big thanks for testing! My pleasure. Still didn't work. 'make check' seems to make it through make install first, but then same sort of error: andy@mapper:~/projects/postgres_cmake/build$ make check [ 1%] Built target gen_errorcodes [ 3%] Built target port <SNIP LOTS OF INSTALL> -- Installing: /home/andy/projects/postgres_cmake/build/src/test/regress/tmp_install/tmp/pg99/share/postgresql/extension/timetravel--1.0.sql -- Installing: /home/andy/projects/postgres_cmake/build/src/test/regress/tmp_install/tmp/pg99/share/postgresql/extension/timetravel--unpackaged--1.0.sql Built target tablespace-setup CMake Error: cmake version 2.8.12 Usage: /usr/bin/cmake -E [command] [arguments ...] Available commands: chdir dir cmd [args]... - run command in a given directory compare_files file1 file2 - check if file1 is same as file2 copy file destination - copy file to destination (either file or directory) copy_directory source destination - copy directory 'source' content to directory 'destination' copy_if_different in-file out-file - copy file if input has changed echo [string]... - displays arguments as text echo_append [string]... - displays arguments as text but no new line environment - display the current environment make_directory dir - create a directory md5sum file1 [...] - compute md5sum of files remove [-f] file1 file2 ... - remove the file(s), use -f to force it remove_directory dir - remove a directory and its contents rename oldname newname - rename a file or directory (on one volume) tar [cxt][vfz][cvfj] file.tar [file/dir1 file/dir2 ...] - create or extract a tar or zip archive time command [args] ... - run command and return elapsed time touch file - touch a file. touch_nocreate file - touch a file but do not create it. Available on UNIX only: create_symlink old new - create a symbolic link new -> old make[7]: *** [src/test/regress/CMakeFiles/installcheck_tmp] Error 1 make[6]: *** [src/test/regress/CMakeFiles/installcheck_tmp.dir/all] Error 2 make[5]: *** [src/test/regress/CMakeFiles/installcheck_tmp.dir/rule] Error 2 make[4]: *** [installcheck_tmp] Error 2 make[3]: *** [src/test/regress/CMakeFiles/check] Error 2 make[2]: *** [src/test/regress/CMakeFiles/check.dir/all] Error 2 make[1]: *** [src/test/regress/CMakeFiles/check.dir/rule] Error 2 make: *** [check] Error 2
Andy Colson wrote: > Still didn't work. 'make check' seems to make it through make > install first, but then same sort of error: Now it looks like I can do "make check" only cmake 3.x (I will try to solve it later). But "make installcheck" with DESTDIR should work. I now have no close system with CMake 2.8.x . In order not to clutter up maillist I would prefer to discuss such errors on github. Thanks! -- Yury Zhuravlev Postgres Professional: http://www.postgrespro.com The Russian Postgres Company