point the SANDBOX_SHELL macro at the actual path to busybox on the build machine, or allow it to be configured at build-time with a cmake option. Change-Id: I044a1315ba9baa3bc9ceddf29f36d14f9f9ccd96 Reviewed-on: https://cl.tvl.fyi/c/depot/+/1632 Tested-by: BuildkiteCI Reviewed-by: tazjin <mail@tazj.in>
		
			
				
	
	
		
			130 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			130 lines
		
	
	
	
		
			3.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| // This file configures various build-time settings in Nix. In
 | |
| // previous iterations it was mostly responsible for configuring
 | |
| // OS-dependent settings, which are still preserved below but should
 | |
| // be removed.
 | |
| 
 | |
| #ifndef NIX_CONFIG_H
 | |
| #define NIX_CONFIG_H
 | |
| 
 | |
| /* Define to the version of this package. */
 | |
| #define PACKAGE_VERSION "2.3.4"
 | |
| 
 | |
| /* Platform identifier (`cpu-os`) */
 | |
| // TODO(tazjin): generate
 | |
| #define SYSTEM "x86_64-linux"
 | |
| 
 | |
| // TODO(tazjin): some of these values are nonsensical for Nix
 | |
| #define NIX_PREFIX "@CMAKE_INSTALL_PREFIX@"
 | |
| #define NIX_STORE_DIR "/nix/store"
 | |
| #define NIX_DATA_DIR "@CMAKE_INSTALL_FULL_DATADIR@"
 | |
| #define NIX_LOG_DIR "/nix/var/log/nix"
 | |
| #define NIX_STATE_DIR "/nix/var/nix"
 | |
| #define NIX_CONF_DIR "/etc/nix"
 | |
| #define NIX_LIBEXEC_DIR "@CMAKE_INSTALL_FULL_LIBEXECDIR@"
 | |
| #define NIX_BIN_DIR "@CMAKE_INSTALL_FULL_BINDIR@"
 | |
| #define NIX_MAN_DIR "@CMAKE_INSTALL_FULL_MANDIR@"
 | |
| #define SANDBOX_SHELL "@SANDBOX_SHELL@"
 | |
| 
 | |
| // Defines used only in tests (e.g. to access data)
 | |
| #define NIX_SRC_DIR "@CMAKE_SOURCE_DIR@"
 | |
| 
 | |
| // These are hardcoded either because support for non-Linux is being
 | |
| // dropped, or because a decision was made to make inclusion of these
 | |
| // libraries mandatory.
 | |
| 
 | |
| #define HAVE_STRUCT_DIRENT_D_TYPE 1
 | |
| 
 | |
| #define HAVE_LUTIMES 1
 | |
| 
 | |
| // Whether link() works on symlinks
 | |
| #define CAN_LINK_SYMLINK 1
 | |
| 
 | |
| /* Whether to use the Boehm garbage collector. */
 | |
| #define HAVE_BOEHMGC 1
 | |
| 
 | |
| /* Define if the Boost library is available. */
 | |
| #define HAVE_BOOST 1
 | |
| 
 | |
| /* Define to 1 if you have the <bzlib.h> header file. */
 | |
| #define HAVE_BZLIB_H 1
 | |
| 
 | |
| /* Define if the compiler supports basic C++17 syntax */
 | |
| #define HAVE_CXX17 1
 | |
| 
 | |
| /* Define to 1 if you have the <dirent.h> header file, and it defines `DIR` */
 | |
| #define HAVE_DIRENT_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR` */
 | |
| #define HAVE_DIR_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <editline.h> header file. */
 | |
| #define HAVE_EDITLINE_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <inttypes.h> header file. */
 | |
| #define HAVE_INTTYPES_H 1
 | |
| 
 | |
| /* Define to 1 if you have the `lchown` function. */
 | |
| #define HAVE_LCHOWN 1
 | |
| 
 | |
| /* Define to 1 if you have the <locale.h> header file. */
 | |
| #define HAVE_LOCALE 1
 | |
| 
 | |
| /* Define to 1 if you have the `lutimes` function. */
 | |
| #define HAVE_LUTIMES 1
 | |
| 
 | |
| /* Define to 1 if you have the <memory.h> header file. */
 | |
| #define HAVE_MEMORY_H 1
 | |
| 
 | |
| /* Define to 1 if you have the `pipe2` function. */
 | |
| #define HAVE_PIPE2 1
 | |
| 
 | |
| /* Define to 1 if you have the `posix_fallocate` function. */
 | |
| #define HAVE_POSIX_FALLOCATE 1
 | |
| 
 | |
| /* Define to 1 if you have the `pubsetbuf` function. */
 | |
| #define HAVE_PUBSETBUF 1
 | |
| 
 | |
| /* Whether seccomp is available and should be used for sandboxing. */
 | |
| #define HAVE_SECCOMP 1
 | |
| 
 | |
| /* Define to 1 if you have the `setresuid` function. */
 | |
| #define HAVE_SETRESUID 1
 | |
| 
 | |
| /* Define to 1 if you have the `setreuid` function. */
 | |
| #define HAVE_SETREUID 1
 | |
| 
 | |
| /* Whether to use libsodium for cryptography. */
 | |
| #define HAVE_SODIUM 1
 | |
| 
 | |
| /* Define to 1 if you have the `statvfs` function. */
 | |
| #define HAVE_STATVFS 1
 | |
| 
 | |
| /* Define to 1 if you have the <stdint.h> header file. */
 | |
| #define HAVE_STDINT_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <stdlib.h> header file. */
 | |
| #define HAVE_STDLIB_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <strings.h> header file. */
 | |
| #define HAVE_STRINGS_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <strings.h> header file. */
 | |
| #define HAVE_STRING_H 1
 | |
| 
 | |
| /* Define to 1 if you have the `strsignal` function. */
 | |
| #define HAVE_STRSIGNAL 1
 | |
| 
 | |
| /* Define to 1 if you have the `sysconf` function. */
 | |
| #define HAVE_SYSCONF 1
 | |
| 
 | |
| /* Define to 1 if you have the <sys/stat.h> header file. */
 | |
| #define HAVE_SYS_STAT_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <sys/types.h> header file. */
 | |
| #define HAVE_SYS_TYPES_H 1
 | |
| 
 | |
| /* Define to 1 if you have the <unistd.h> header file. */
 | |
| #define HAVE_UNISTD_H 1
 | |
| 
 | |
| 
 | |
| #endif
 |