ovsqlite

Julien ÉLIE julien at trigofacile.com
Thu Jan 7 10:55:55 UTC 2021


Responding to my previous message:
>>> FreeBSD 12.1
>>> NetBSD 9.0
> [and also OpenBSD 6.8]
>>
>> I don't see any object files in those command lines, only libraries.
>> Try a different make program?
> 
> Indeed, the build works fine with "gmake".
> It seems that $^ in Makefiles is not recognized by BSD make.
> As we do not use $^ elsewhere, I committed a minor modification to 
> define an OVSQLITEOBJECTS variable with the objects, and replace $^ by 
> this variable.  Now builds fine with BSD make.

Moreover, AIX needs Libtool objects for the link (only .lo files are 
generated in the directory; .o PIC objects are in the .libs 
subdirectory; only when --with-pic=no is used at configure time than .o 
non-PIC objects are generated, and in the directory).

I think I've now come up with a working portable Makefile (inspired from 
how libstorage is built) to build ovsqlite-server:

OVSQLITEOBJECTS = ovsqlite/ovsqlite-server.o ovsqlite/sql-main.o \
  	ovsqlite/sql-init.o ovsqlite/sqlite-helper.o \
  	ovsqlite/ovsqlite-private.o
OVSQLITELOBJECTS = $(OVSQLITEOBJECTS:.o=.lo)

ovsqlite/ovsqlite-server: $(OVSQLITEOBJECTS) $(OVSQLITELOBJECTS)
  	$(LIBLD) $(LDFLAGS) $(SQLITE3_LDFLAGS) -o $@ $(OVSQLITELOBJECTS) \
  	$(LIBSTORAGE) $(LIBHIST) $(LIBINN) $(STORAGE_LIBS) $(SQLITE3_LIBS) \
  	$(LIBS)


AIX power8-aix 2 7
All tests successful, 46 tests skipped.
Files=61,  Tests=3712,  30.64 seconds (1.89 usr + 1.10 sys = 2.98 CPU)

-- 
Julien ÉLIE

« – Vous n'avez rien à déclarer ?
   – J'ai faim.
   – Qu'est-ce que vous avez là ?
   – Un creux ! » (Obélix)


More information about the inn-workers mailing list