summaryrefslogtreecommitdiff
path: root/src/template/freebsd
AgeCommit message (Collapse)Author
2016-10-09Use unnamed POSIX semaphores, if available, on Linux and FreeBSD.Tom Lane
We've had support for using unnamed POSIX semaphores instead of System V semaphores for quite some time, but it was not used by default on any platform. Since many systems have rather small limits on the number of SysV semaphores allowed, it seems desirable to switch to POSIX semaphores where they're available and don't create performance or kernel resource problems. Experimentation by me shows that unnamed POSIX semaphores are at least as good as SysV semaphores on Linux, and we previously had a report from Maksym Sobolyev that FreeBSD is significantly worse with SysV semaphores than POSIX ones. So adjust those two platforms to use unnamed POSIX semaphores, if configure can find the necessary library functions. If this goes well, we may switch other platforms as well, but it would be advisable to test them individually first. It's not currently contemplated that we'd encourage users to select a semaphore API for themselves, but anyone who wants to experiment can add PREFERRED_SEMAPHORES=UNNAMED_POSIX (or NAMED_POSIX, or SYSV) to their configure command line to do so. I also tweaked configure to report which API it's selected, mainly so that we can tell that from buildfarm reports. I did not touch the user documentation's discussion about semaphores; that will need some adjustment once the dust settles. Discussion: <8536.1475704230@sss.pgh.pa.us>
2015-10-29Remove some remains from Alpha support removalPeter Eisentraut
2010-09-20Remove cvs keywords from all files.Magnus Hagander
2006-03-11Add CVS tag lines to files that were lacking them.Bruce Momjian
2004-12-02Don't bother adding to cflags/cppflags, just set them because configureBruce Momjian
handles that, and make solaris debug use no optimization.
2004-11-27Add to CPPFLAGS/CFLAGS in template files, don't over-ride them.Bruce Momjian
2004-04-26Unconditionally define:Bruce Momjian
-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS for all ports. It can't hurt if they are not supported, but it makes our job easier for porting. Should fix Darwin compile and other platforms without mucking with the thread detection code.
2004-04-25Fix typo on thread lib name.Bruce Momjian
2004-04-23Add new auto-detection of thread flags.Bruce Momjian
Allow additional thread flags to be added via port templates. Change thread flag names to PTHREAD_CFLAGS and PTHREAD_LIBS to match new configure script.
2004-02-11Check and set thread-safe functions separately, rather than as a singleBruce Momjian
variable. Remove thread locking for non-thread-safe functions, instead throw a compile error. Platforms will have to re-run tools/thread to record their thread safety.
2003-10-25Fix CFLAGS selection to actually work. Add test to detect whether gcc'sPeter Eisentraut
option -fno-strict-aliasing is available.
2003-10-09Remove -pipe from compiles.Bruce Momjian
2003-10-09Make template CFLAGS handling consistent.Bruce Momjian
2003-10-09Re-add -pipe compile flags for bsd's.Bruce Momjian
2003-10-09This centralizes the optimization defaults into configure.in, ratherBruce Momjian
than having CFLAGS= in the template files. It uses -O2 for gcc (generated by autoconf), and -O for non-gcc, unless the template overrides it.
2003-09-27Finalize configuration of thread_test program.Bruce Momjian
2003-09-27Rename thread compile flag. Move thread test program to tools/thread,Bruce Momjian
and improve tests.
2003-09-13Attempt threading in this order:Bruce Momjian
* use non-*_r function names if they are all thread-safe * (NEED_REENTRANT_FUNCS=no) * use *_r functions if they exist (configure test) * do our own locking and copying of non-threadsafe functions New to this patch is the last option.
2003-09-12Mark FreeBSD as non-thread-safe.Bruce Momjian
2003-08-16Make NEED_REENTRANT_FUNC_NAMES _require_ *_r functions, and add tests toBruce Momjian
configure to report if they are not found.
2003-06-14Move thread os defines into template files.Bruce Momjian
2002-09-04Remove leftovers from subproject removals. Fixes for Python and KerberosPeter Eisentraut
configuration.
2002-08-29Back out patch, that was alpha, which I think still needs just -O.Bruce Momjian
2002-08-29Change FreeBSD to use -O2, important for MemSet.Bruce Momjian
2002-07-08Fix case syntax for freebsd template.Bruce Momjian
2002-07-07Move CXX platform-specific stuff into template files.Bruce Momjian
2002-07-07Convert expr to case, for Peter E.Bruce Momjian
2002-07-03Update FreeBSD template to properly compile c++ on alpha.Bruce Momjian
2000-11-16Make pgsql compile on FreeBSD-alpha.Bruce Momjian
Context diff this time. Remove -m486 compile args for FreeBSD-i386, compile -O2 on i386. Compile with only -O on alpha for codegen safety. Make the port use the TEST_AND_SET for alpha and i386 on FreeBSD. Fix a lot of bogus string formats for outputting pointers (cast to int and %u/%x replaced with no cast and %p), and 'Size'(size_t) are now cast to 'unsigned long' and output with %lu/ Remove an unused variable. Alfred Perlstein
2000-10-21Move DLSUFFIX, AROPT, and CFLAGS_SL settings from template toPeter Eisentraut
Makefile.port, since they are of no use to configure and much of the library magic happens in Makefile.port anyway. Use __alpha, not __alpha__, since the former is universally available. Remove -DNOFIXADE from the compile command line and put it in the port include file.
2000-07-15Rename templates to match names in makefiles/Makefile.* and include/port.Peter Eisentraut
Read templates after compiler is detected. Convert all templates to real shell scripts. Rename bsd->openbsd, alpha->osf.
2000-06-07Gen_fmgrtab.sh is strange: it is a platform dependent way (because it usesPeter Eisentraut
CPP) to create platform independent files. Unfortunately, that means that every config.status (or configure) run invariably causes a relink of the postmaster and also that we can't put these files in the distribution (usefully). So we make it a little smarter: when the output files already exist and it notices that it would recreate them in identical form, it doesn't touch them. In order to avoid re-running the make rule all the time we update a timestamp file instead. Update release_prep accordingly. Also make Gen_fmgrtab.sh use the awk that is detected at configure time, not necessarily named `awk' and have it check for exit statuses a little better. In other news... Remove USE_LOCALE from the templates, it was set to `no' everywhere anyway. Also remove YACC and YFLAGS from the templates, configure is smart enough to find bison or yacc itself. Use AC_PROG_YACC for that instead of the hand-crafted code. Do not set YFLAGS to `-d'. The make rules that need this flag should explicitly invoke it. YFLAGS should be a user variable. Update the makefiles to that effect.
1998-09-18Remove /usr/local/* from templates.Bruce Momjian
1998-06-12template changeBruce Momjian
1998-06-12template changesBruce Momjian
1997-04-04Move YACC and YFLAGS into the template filesMarc G. Fournier
Clean up the .sample files...comment out all sample entries except for the localhost one
1997-04-04This commit represents a clean compile with the new templates underMarc G. Fournier
FreeBSD The Makefile(s) have all been cleaned up such that there is a single LDFLAGS vs LD_ADD or LDADD or LDFLAGS or LDFLAGS_BE. The Makefile(s) should be alot more straightforward then they were before...and consistent
1997-04-04One helluva mess.Marc G. Fournier
Further extended Makefile.global/build/configure so that we can have a 'template' file for each OS (and each version of OS, as in BSDi) which is used as much as possible to generate Makefile.global Any future ports should look at using the template file as a basis, before moving over to Makefile.global. This will most probably break alot of the ports, atho I've tried to be very neat about it...