Re: REQ: build src/backend/postgres w/o -lncurses or -lreadline

Bruce Momjian <pgman@candle.pha.pa.us>

From: Bruce Momjian <pgman@candle.pha.pa.us>
To: todd@tekinteractive.com
Cc: pgsql-bugs@postgresql.org
Date: 2001-05-12T21:11:17Z
Lists: pgsql-bugs
> When Postgres is configured and decides to use libncurses and
> libreadline, the backend gets linked against those two libs, too, even
> though it really doesn't use them.  This is just extra wasted size and
> (if they're shared libs) dependencies you don't need.
> 
> I made this ultra-cheesy change to src/backend/Makefile to take care
> of that.
> 
> postgres: $(OBJS)
>         $(CC) $(CFLAGS) $(LDFLAGS) $(export_dynamic) $^ $(LIBS) -o $@
> 
> to
> 
> postgres: $(OBJS)
>         $(CC) $(CFLAGS) $(LDFLAGS) $(export_dynamic) $^ `echo $(LIBS) | sed -e 's/ -lncurses//' -e 's/ -lreadline//'` -o $@
> 
> 
> 
> I realize this is a sort of special-purpose request.  It's not a big
> deal to build the whole thing, then just relink src/backend/postgres
> without those libs.  It just feels dirty to have them there when they
> aren't needed.
> 

It is my understanding that having them there causes no bloat in the
binary.  No symbols are resolved in those libs.

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026