# HG changeset patch # User Mychaela Falconia # Date 1715411399 0 # Node ID a53225b44ea571e4160977d46cba6d35268b001f # Parent cb1d1ea7f2c56736137e1d4c3aabc8f6cf316b0d further refinement of build system: follow general free sw standards as much as possible diff -r cb1d1ea7f2c5 -r a53225b44ea5 INSTALL --- a/INSTALL Fri May 10 23:04:44 2024 +0000 +++ b/INSTALL Sat May 11 07:09:59 2024 +0000 @@ -35,11 +35,19 @@ and the install prefix at their default values, or change them to your own preferences. -* There are no more install-lib and install-utils targets, just regular - 'make install' that installs everything into whichever prefix you chose at - configure time. +* There are no more mandatory install-lib and install-utils targets, instead + you get standard 'make install' that installs everything into whichever + prefix you chose at configure time. (The ability to install only Division 1 + components with 'make install-lib' or only Division 2 components with + 'make install-utils' is still available, but it is now an experts-only + option: if you don't see yourself needing this type of split install, then + you don't need it.) -The default install prefix is /opt/themwi; to change it, pass the standard ---prefix=/wherever option to ./configure script. The default compilation -settings are CC=gcc and CFLAGS=-O2; to change them, pass CC=my-whatever-cc -and/or CFLAGS="-fwhatever-flags" to configure. +The default install prefix is /usr/local, following the general standard for +software packages and configure scripts. To change this install location, pass +the standard --prefix=/wherever option to ./configure script. In addition to +--prefix, our configure script accepts --exec-prefix, --bindir, --includedir +and --libdir options, following the common standard. + +The default compilation settings are CC=gcc and CFLAGS=-O2; to change them, +pass CC=my-whatever-cc and/or CFLAGS="-fwhatever-flags" to configure. diff -r cb1d1ea7f2c5 -r a53225b44ea5 Makefile --- a/Makefile Fri May 10 23:04:44 2024 +0000 +++ b/Makefile Sat May 11 07:09:59 2024 +0000 @@ -26,6 +26,17 @@ for i in ${SUBDIR_INST}; do (cd $$i; ${MAKE} ${MFLAGS} \ DESTDIR=${DESTDIR} install); done +# The following two subset install targets are only for experts; +# if you are not sure why they are needed, you *don't* need them! + +install-lib: FRC + for i in ${SUBDIR_LIBPROD}; do (cd $$i; ${MAKE} ${MFLAGS} \ + DESTDIR=${DESTDIR} install); done + +install-utils: FRC + for i in ${SUBDIR_UTILS}; do (cd $$i; ${MAKE} ${MFLAGS} \ + DESTDIR=${DESTDIR} install); done + clean: FRC rm -f a.out core errs for i in ${SUBDIR}; do (cd $$i; ${MAKE} ${MFLAGS} clean); done diff -r cb1d1ea7f2c5 -r a53225b44ea5 PACKAGING --- a/PACKAGING Fri May 10 23:04:44 2024 +0000 +++ b/PACKAGING Sat May 11 07:09:59 2024 +0000 @@ -19,10 +19,12 @@ * Themyscira software components are intended to run on server machines where they will often need to interwork closely with Osmocom and other network software. Unlike FC, ThemWi software does _not_ require a fixed install - location; the Mother's home environment uses /opt/themwi by default (although - even here we sometimes have to work with multiple installs like /opt/themwi2 - etc), but the intent is that users of ThemWi software should have just as much - freedom to choose their install location as users of Osmocom CNI. + location; at Themyscira HQ we use various custom directories under /opt for + both Osmocom CNI and our own ThemWi components, but no one else is being + asked to do what we do! We now follow the general free sw community standard + whereby the default install location is /usr/local, but you are always free + to change it to wherever you like with the standard --prefix option to + configure. Toward this end, all ThemWi software beginning with the present package will have a ./configure script (hand-coded, no Autotools) that accepts the standard diff -r cb1d1ea7f2c5 -r a53225b44ea5 configure --- a/configure Fri May 10 23:04:44 2024 +0000 +++ b/configure Sat May 11 07:09:59 2024 +0000 @@ -13,7 +13,7 @@ # defaults that can be overridden CC=gcc CFLAGS=-O2 -prefix=/opt/themwi +prefix=/usr/local exec_prefix= bindir= includedir=