summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorJannis Hoffmann <jannis@fehcom.de>2024-09-28 21:20:40 +0200
committerJannis Hoffmann <jannis@fehcom.de>2024-09-28 21:33:03 +0200
commit8e7e029114c59341ec793dc9e96ee410a5f37e2b (patch)
treeac196b359c93716158dedd767f425d9e093c9b71 /README.md
parentf9a8fff2f90626aadd915178d04ece49d8c4884a (diff)
update to version 25meson
Diffstat (limited to 'README.md')
-rw-r--r--README.md90
1 files changed, 10 insertions, 80 deletions
diff --git a/README.md b/README.md
index 0498792..a62eb90 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,4 @@
/*! \mainpage
-
qlibs - C library and headers based on "djb's libs" and libowfat
================================================================
@@ -30,82 +29,7 @@ See the README in the ./dnsstub directory for details.
Installation
------------
-Some build options can be configured through 'conf-build'.
-Read the comments in this file for more information.
-
-* Building:
-
-a) Static libs:
-
-Execute
-
- $ make
-
-which does the steps of './configure && make'.
-Don't forget to make sure that libs and headers will be found by the compiler/linker.
-For convenience, link the current version of fehQlibs to qlibs
-
- $ ln -s fehQlibs-XY qlibs
-
-b) Shared objects libs:
-
-You can also build dynamic libaries for qlibs and dnsresolv. After
-
- $ make
-
-call
-
- $ make shared
-
-* Deployment:
-
-In case conf-build has been customized to include the location of
-
-- HDRDIR
-- LIBDIR
-
-issue
-
- $ make install
-
-to deploy the include files and libs at the given location.
-By default, for the libs the parent directory is used.
-
-* Verification:
-
-Check the ELFCLASS of the generated binaries in the source directory while calling
-
- $ file open.o
-
-They need to comply with your OS. See 'conf-build' for options.
-
-* Resulting libraries:
-
-The following libraries are generated:
-
-- qlibs.a - static basic [w/o DNS] lib (linked to libqlibs.a)
-- dnsresolv.a - static DNS resolver lib (linked to libdnsresolv.a)
-
-and perhaps
-
-- libqlibs.so - dynamic, position independent (PIC) 'shared object' lib
-- libdnsresolv.so - dynamic, position independent (PIC) 'shared object' lib
-
-These libs are of type ELF64 or ELF32 depending on the system.
-
-Use 'ar -t' to get the included members of the static libs.
-Use 'nm' to view the members and symbols of the libs.
-
-The shared object libs are known NOT not work on MacOS.
-
-
-Man pages
----------
-
-In the ./man directory the current man pages for the basic qlibs routines are included.
-Determine the current $mandir and (as root) install the man pages:
-
- $ cp *.3 $mandir/man3/
+Check the INSTALL.md document.
Packaging
@@ -114,8 +38,8 @@ Packaging
The fehQlibs are incompatible with Gentoo's parallel compilation flag '-jN' for N > 1.
-Compilation
------------
+Compatibility
+-------------
Starting with version fehQlibs-15b, GCC 10 and Clang compatibility is provided,
which means ISO C conformance.
@@ -124,9 +48,15 @@ by the global (external) 'ipv4socket' variable are avoided.
stralloc.h is decoupled from genalloc.h (to be included separately).
This respects the GCC 10 compilation unit behavior.
+fehQlibs-25 provide compatibility with GCC 14 and Clang 18. Under the hood,
+the prototypes include now the correct types of arguments (signatures) required
+for function pointers. Some warning still exits; some are silly, others need to
+be tackled in forthcoming releases. This depends however on the development
+of the 'C' standard and the respective 'C' compilers.
+
-----
Updated: 20170329, Kai Peter
-Updated: 20220706, Erwin Hoffmann
+Updated: 20240804, Erwin Hoffmann