Small suggestion on build script

Поиск
Список
Период
Сортировка
От Dann Corbit
Тема Small suggestion on build script
Дата
Msg-id D90A5A6C612A39408103E6ECDD77B829408D53@voyager.corporate.connx.com
обсуждение исходный текст
Ответы Re: Small suggestion on build script  ("Marc G. Fournier" <scrappy@postgresql.org>)
Re: Small suggestion on build script  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Small suggestion on build script  (Peter Eisentraut <peter_e@gmx.net>)
Список pgsql-hackers
I would like to suggest changing the symlinks to copy commands:

cp ./src/backend/port/tas/dummy.s ./src/backend/port/tas.s
cp ./src/backend/port/dynloader/win32.c ./src/backend/port/dynloader.c
cp ./src/backend/port/sysv_sema.c ./src/backend/port/pg_sema.c
cp ./src/backend/port/sysv_shmem.c ./src/backend/port/pg_shmem.c
cp ./src/backend/port/dynloader/win32.h ./src/include/dynloader.h
cp ./src/include/port/win32.h ./src/include/pg_config_os.h
cp ./src/makefiles/Makefile.win32 ./src/Makefile.port

The reason is that under Mingw, I get random failures with the symlinks
(typically all will work but one or two, but there is no telling which
will succeed and which will fail).

The space consumed by a copy instead of a symblink is very small.

Here is a summary of the changes I need to make to do a build of the
latest drop:

1.  Go to the Postgresql site and download the latest development
snapshot called postgresql-snapshot.tar.bz2 and decompress and untar it.
2.  Install the complete MINGW tool chain from here:
http://www.mingw.org/download.shtml
I went from the bottom up.
3.  Using mingw, change directory to the /postgresql-snapshot directory
and run
$ ./configure   --without-readline
3. b) even at that, the pg_config.h file will be messed up.  You have to
manually edit it so that every reference to readline is #undef removed.
3. c) edit pg_config.h and make these changes:
/* Define to 1 if you have the <termios.h> header file. */
#undef HAVE_TERMIOS_H
#define WIN32 1
3. d) a sample of a working pg_config.h file is attached.
4.  You will probably have to repair either float.c or ieeefp.h.  The
file float.c needs the following modification after the comments,
because something goes haywire in ieeefp.h:
#include "postgres.h"
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <math.h>
#include <limits.h>
/* for finite() on Solaris */
#ifdef HAVE_IEEEFP_H
#ifndef __MINGW32__ /* <<<== ICKY_WIN32_KLUDGE --> DRC {BROKEN ieeefp.h
file} */
#include <ieeefp.h>
#endif /* end ICKY_WIN32_KLUDGE */
#endif

5.  The build will stop where the symlinks fail (random).  For the files
that are missing, perform the copy commands shown above.

6.  Run make, correcting any errors with symlinks until all are resolved

7.  Make install


В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Simon Riggs"
Дата:
Сообщение: Re: Function to kill backend
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Abstract for my replication system