PREFIX = /usr MANPREFIX = $(PREFIX)/share/man CC = cc -std=c2x CPP = $(CC) -E - # $(CPP) is only used for the check rule CC_DEF_EXTRACT = # If set, it will be used with -E -dM (must have the same meaning # as in GCC and clang), otherwise $(CC) is used if it is GCC or # clang, otherwise a gcc or clang from PATH is used CPPFLAGS = -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_XOPEN_SOURCE=700 -D_GNU_SOURCE CFLAGS = -Os LDFLAGS = # It is important that CFLAGS at least specifies some optimisation, # otherwise you may get binaries containing a lot of unused symbols # and so be unnecessarily large. (The build deduplicates identical # system call description, but only references to them, not their # instantiations (which have static storage), for that it it relies # on compiler optimisation.) # If you know that the compiler has __builtin_ffsll([unsigned] long long int) # which returns the index, plus 1, of the least significant set bit # or 0 for 0, you can add -DHAVE_BUILTIN_FFSLL to CPPFLAGS; if you # are using GCC>=3.4 or clang>=5, this is added automatically. # Additionally, you can add -DUSE_INTERPOLATION_SEARCH to CPPFLAGS # if you want the library to use interpolation search instead of # binary search, this is probably a bad idea on platforms that do # not support division natively, even on amd64, it does not seem to # make any difference at the moment. If you add -DUSE_INTERPOLATION_SEARCH, # you may also add `-DINTERPOLATION_SEARCH_FLOAT=long double` (default), # `-DINTERPOLATION_SEARCH_FLOAT=double` or `-DINTERPOLATION_SEARCH_FLOAT=float` # to specify which floating point type interpolation search should use # if it cannot used integers; which option is best depends on the # platform, as some platforms can work natively with any of the types # and those `float` is most performant, and other platforms (such as # i386) can only work natively with a specific type (`long double` in # the case of i386) and thus performs best with that type. DOWNLOAD = curl -- DEFAULT_OS_SUPPORT_SELECTION = yes # You may for example put `DEFAULT_OS_SUPPORT_SELECTION = no` but add # `LINUX_SUPPORT = yes` to this file if you always only want to have # Linux supported. #SUPPORTED_ARCHES != util/what-architecture-am-i-using true # Uncomment this limit supported architectures. You will find which # architectures are support in Makefile (don't add anything else). # If you uncomment this without editing it ('!=' means it will execute # that text behind it as a shell commend; change to '=' to list # manually), the architecture you are running on, and modes # (e.g. i386 and x32 on amd64, however if the kernel is built to # support them)[1], its supports, will be selected. # [1] Change 'true' to 'false' to exclude them, or remove 'true' # to support even ones that the kernel is not compiled to support # You can also limit supported architectures on an per-OS basis, by # setting SUPPORTED_${NAME_OF_OS}_ARCHES; you will find the list of # support architectures in ${name-of-os}/${name-of-os}-support.mk, # however architectures not support in libsyscalls's core may be listed; # do not add anything that is not supported by both libsyscalls's core # and it's OS support # This file is included multiple times, don't do anything weird