aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJade Lovelace <lix@jade.fyi>2024-05-16 17:04:05 -0700
committerQyriad <qyriad@qyriad.me>2024-05-23 16:45:23 -0600
commitc97e17144e0d0b666d7b79d8b4b0d581bfdf373b (patch)
tree1d1193055f45f9dcc63ae3908af8fdc01c7434df /src
parent774c56094f3f3dcb1f25fe147c52604ad664bd5b (diff)
packaging: rename nixexpr -> lixexpr and so on
This breaks downstreams linking to us on purpose to make sure that if someone is linking to Lix they're doing it on purpose and crucially not mixing up Nix and Lix versions in compatibility code. We still need to fix the internal includes to follow the same schema so we can drop the single-level include system entirely. However, this requires a little more effort. This adds pkg-config for libfetchers and config.h. Migration path: expr.hh -> lix/libexpr/expr.hh nix/config.h -> lix/config.h To apply this migration automatically, remove all `<nix/>` from includes, so: `#include <nix/expr.hh>` -> `#include <expr.hh>`. Then, the correct paths will be resolved from the tangled mess, and the clang-tidy automated fix will work. Then run the following for out of tree projects: ``` lix_root=$HOME/lix (cd $lix_root/clang-tidy && nix develop -c 'meson setup build && ninja -C build') run-clang-tidy -checks='-*,lix-fixincludes' -load=$lix_root/clang-tidy/build/liblix-clang-tidy.so -p build/ -fix src ``` Related: https://git.lix.systems/lix-project/nix-eval-jobs/pulls/5 Fixes: https://git.lix.systems/lix-project/lix/issues/279 Change-Id: I7498e903afa6850a731ef8ce77a70da6b2b46966
Diffstat (limited to 'src')
-rw-r--r--src/libcmd/lix-cmd.pc.in10
-rw-r--r--src/libcmd/meson.build10
-rw-r--r--src/libcmd/nix-cmd.pc.in9
-rw-r--r--src/libexpr/flake/meson.build2
-rw-r--r--src/libexpr/lix-expr.pc.in10
-rw-r--r--src/libexpr/meson.build14
-rw-r--r--src/libexpr/nix-expr.pc.in10
-rw-r--r--src/libfetchers/lix-fetchers.pc.in10
-rw-r--r--src/libfetchers/meson.build18
-rw-r--r--src/libmain/lix-main.pc.in10
-rw-r--r--src/libmain/meson.build8
-rw-r--r--src/libmain/nix-main.pc.in9
-rw-r--r--src/libstore/lix-store.pc.in10
-rw-r--r--src/libstore/meson.build10
-rw-r--r--src/libstore/nix-store.pc.in9
-rw-r--r--src/libutil/lix-util.pc.in10
-rw-r--r--src/libutil/meson.build18
-rw-r--r--src/lix-base.pc.in8
18 files changed, 122 insertions, 63 deletions
diff --git a/src/libcmd/lix-cmd.pc.in b/src/libcmd/lix-cmd.pc.in
new file mode 100644
index 000000000..f2e3f9d5e
--- /dev/null
+++ b/src/libcmd/lix-cmd.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix (libcmd)
+Description: Lix Package Manager (libcmd)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util
+Libs: -L${libdir} -llixcmd
+Cflags: -I${includedir}/lix/libcmd
diff --git a/src/libcmd/meson.build b/src/libcmd/meson.build
index 5a0e61503..4da1b496b 100644
--- a/src/libcmd/meson.build
+++ b/src/libcmd/meson.build
@@ -39,7 +39,7 @@ libcmd_generated_headers = [
]
libcmd = library(
- 'nixcmd',
+ 'lixcmd',
libcmd_generated_headers,
libcmd_sources,
dependencies : [
@@ -59,13 +59,13 @@ libcmd = library(
install_rpath : libdir,
)
-install_headers(libcmd_headers, subdir : 'nix', preserve_path : true)
+install_headers(libcmd_headers, subdir : 'lix/libcmd', preserve_path : true)
custom_target(
command : [ 'cp', '@INPUT@', '@OUTPUT@' ],
input : libcmd_generated_headers,
output : '@PLAINNAME@',
install : true,
- install_dir : includedir / 'nix',
+ install_dir : includedir / 'lix/libcmd',
)
liblixcmd = declare_dependency(
@@ -76,8 +76,8 @@ liblixcmd = declare_dependency(
# FIXME: not using the pkg-config module because it creates way too many deps
# while meson migration is in progress, and we want to not include boost here
configure_file(
- input : 'nix-cmd.pc.in',
- output : 'nix-cmd.pc',
+ input : 'lix-cmd.pc.in',
+ output : 'lix-cmd.pc',
install_dir : libdir / 'pkgconfig',
configuration : {
'prefix' : prefix,
diff --git a/src/libcmd/nix-cmd.pc.in b/src/libcmd/nix-cmd.pc.in
deleted file mode 100644
index 39575f222..000000000
--- a/src/libcmd/nix-cmd.pc.in
+++ /dev/null
@@ -1,9 +0,0 @@
-prefix=@prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: Nix
-Description: Nix Package Manager
-Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lnixcmd
-Cflags: -I${includedir}/nix -std=c++2a
diff --git a/src/libexpr/flake/meson.build b/src/libexpr/flake/meson.build
index 3ecc30f4e..cce1b0c75 100644
--- a/src/libexpr/flake/meson.build
+++ b/src/libexpr/flake/meson.build
@@ -4,5 +4,5 @@ libexpr_generated_headers += custom_target(
output : '@PLAINNAME@.gen.hh',
capture : true,
install : true,
- install_dir : includedir / 'nix/flake',
+ install_dir : includedir / 'lix/libexpr/flake',
)
diff --git a/src/libexpr/lix-expr.pc.in b/src/libexpr/lix-expr.pc.in
new file mode 100644
index 000000000..5e850976d
--- /dev/null
+++ b/src/libexpr/lix-expr.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix libexpr
+Description: Lix Package Manager (libexpr)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util lix-fetchers lix-store bdw-gc
+Libs: -L${libdir} -llixexpr
+Cflags: -I${includedir}/lix/libexpr
diff --git a/src/libexpr/meson.build b/src/libexpr/meson.build
index 099279d56..fda6fde2c 100644
--- a/src/libexpr/meson.build
+++ b/src/libexpr/meson.build
@@ -15,7 +15,7 @@ parser_tab = custom_target(
# NOTE(Qyriad): Meson doesn't support installing only part of a custom target, so we add
# an install script below which removes parser-tab.cc.
install : true,
- install_dir : includedir / 'nix',
+ install_dir : includedir / 'lix/libexpr',
)
lexer_tab = custom_target(
@@ -37,7 +37,7 @@ lexer_tab = custom_target(
# NOTE(Qyriad): Meson doesn't support installing only part of a custom target, so we add
# an install script below which removes lexer-tab.cc.
install : true,
- install_dir : includedir / 'nix',
+ install_dir : includedir / 'lix/libexpr',
)
# TODO(Qyriad): When the parser and lexer are rewritten this should be removed.
@@ -59,7 +59,7 @@ foreach header : [ 'imported-drv-to-derivation.nix', 'fetchurl.nix' ]
output : '@PLAINNAME@.gen.hh',
capture : true,
install : true,
- install_dir : includedir / 'nix',
+ install_dir : includedir / 'lix/libexpr',
)
endforeach
subdir('flake')
@@ -127,7 +127,7 @@ libexpr_headers = files(
)
libexpr = library(
- 'nixexpr',
+ 'lixexpr',
libexpr_sources,
parser_tab,
lexer_tab,
@@ -152,7 +152,7 @@ libexpr = library(
install_headers(
libexpr_headers,
- subdir : 'nix',
+ subdir : 'lix/libexpr',
preserve_path : true,
)
@@ -164,8 +164,8 @@ liblixexpr = declare_dependency(
# FIXME: not using the pkg-config module because it creates way too many deps
# while meson migration is in progress, and we want to not include boost here
configure_file(
- input : 'nix-expr.pc.in',
- output : 'nix-expr.pc',
+ input : 'lix-expr.pc.in',
+ output : 'lix-expr.pc',
install_dir : libdir / 'pkgconfig',
configuration : {
'prefix' : prefix,
diff --git a/src/libexpr/nix-expr.pc.in b/src/libexpr/nix-expr.pc.in
deleted file mode 100644
index 60ffb5dba..000000000
--- a/src/libexpr/nix-expr.pc.in
+++ /dev/null
@@ -1,10 +0,0 @@
-prefix=@prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: Nix
-Description: Nix Package Manager
-Version: @PACKAGE_VERSION@
-Requires: nix-store bdw-gc
-Libs: -L${libdir} -lnixexpr
-Cflags: -I${includedir}/nix -std=c++2a
diff --git a/src/libfetchers/lix-fetchers.pc.in b/src/libfetchers/lix-fetchers.pc.in
new file mode 100644
index 000000000..fa213b769
--- /dev/null
+++ b/src/libfetchers/lix-fetchers.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix libfetchers
+Description: Lix Package Manager (libfetchers)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util
+Libs: -L${libdir} -llixfetchers
+Cflags: -I${includedir}/lix/libfetchers
diff --git a/src/libfetchers/meson.build b/src/libfetchers/meson.build
index 3809701b7..dbb85b84c 100644
--- a/src/libfetchers/meson.build
+++ b/src/libfetchers/meson.build
@@ -23,7 +23,7 @@ libfetchers_headers = files(
)
libfetchers = library(
- 'nixfetchers',
+ 'lixfetchers',
libfetchers_sources,
dependencies : [
liblixstore,
@@ -35,7 +35,21 @@ libfetchers = library(
install_rpath : libdir,
)
-install_headers(libfetchers_headers, subdir : 'nix', preserve_path : true)
+install_headers(libfetchers_headers, subdir : 'lix/libfetchers', preserve_path : true)
+
+# FIXME: not using the pkg-config module because it creates way too many deps
+# while meson migration is in progress, and we want to not include boost here
+configure_file(
+ input : 'lix-fetchers.pc.in',
+ output : 'lix-fetchers.pc',
+ install_dir : libdir / 'pkgconfig',
+ configuration : {
+ 'prefix' : prefix,
+ 'libdir' : libdir,
+ 'includedir' : includedir,
+ 'PACKAGE_VERSION' : meson.project_version(),
+ },
+)
liblixfetchers = declare_dependency(
include_directories : include_directories('.'),
diff --git a/src/libmain/lix-main.pc.in b/src/libmain/lix-main.pc.in
new file mode 100644
index 000000000..0ceaec393
--- /dev/null
+++ b/src/libmain/lix-main.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix libmain
+Description: Lix Package Manager (libmain)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util
+Libs: -L${libdir} -llixmain
+Cflags: -I${includedir}/lix/libmain
diff --git a/src/libmain/meson.build b/src/libmain/meson.build
index 3f50b158d..b17247a9d 100644
--- a/src/libmain/meson.build
+++ b/src/libmain/meson.build
@@ -14,7 +14,7 @@ libmain_headers = files(
)
libmain = library(
- 'nixmain',
+ 'lixmain',
libmain_sources,
dependencies : [
liblixutil,
@@ -25,7 +25,7 @@ libmain = library(
install_rpath : libdir,
)
-install_headers(libmain_headers, subdir : 'nix', preserve_path : true)
+install_headers(libmain_headers, subdir : 'lix/libmain', preserve_path : true)
liblixmain = declare_dependency(
include_directories : include_directories('.'),
@@ -35,8 +35,8 @@ liblixmain = declare_dependency(
# FIXME: not using the pkg-config module because it creates way too many deps
# while meson migration is in progress, and we want to not include boost here
configure_file(
- input : 'nix-main.pc.in',
- output : 'nix-main.pc',
+ input : 'lix-main.pc.in',
+ output : 'lix-main.pc',
install_dir : libdir / 'pkgconfig',
configuration : {
'prefix' : prefix,
diff --git a/src/libmain/nix-main.pc.in b/src/libmain/nix-main.pc.in
deleted file mode 100644
index fb3ead6fa..000000000
--- a/src/libmain/nix-main.pc.in
+++ /dev/null
@@ -1,9 +0,0 @@
-prefix=@prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: Nix
-Description: Nix Package Manager
-Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lnixmain
-Cflags: -I${includedir}/nix -std=c++2a
diff --git a/src/libstore/lix-store.pc.in b/src/libstore/lix-store.pc.in
new file mode 100644
index 000000000..69c323a28
--- /dev/null
+++ b/src/libstore/lix-store.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix libstore
+Description: Lix Package Manager (libstore)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util
+Libs: -L${libdir} -llixstore -llixutil
+Cflags: -I${includedir}/lix/libstore
diff --git a/src/libstore/meson.build b/src/libstore/meson.build
index 5fde92dd0..4ccb03df7 100644
--- a/src/libstore/meson.build
+++ b/src/libstore/meson.build
@@ -6,7 +6,7 @@ foreach header : [ 'schema.sql', 'ca-specific-schema.sql' ]
output : '@PLAINNAME@.gen.hh',
capture : true,
install : true,
- install_dir : includedir / 'nix',
+ install_dir : includedir / 'lix/libstore',
)
endforeach
@@ -201,7 +201,7 @@ foreach name, value : cpp_str_defines
endforeach
libstore = library(
- 'nixstore',
+ 'lixstore',
libstore_generated_headers,
libstore_sources,
dependencies : [
@@ -224,7 +224,7 @@ libstore = library(
install_rpath : libdir,
)
-install_headers(libstore_headers, subdir : 'nix', preserve_path : true)
+install_headers(libstore_headers, subdir : 'lix/libstore', preserve_path : true)
# Used by libfetchers.
liblixstore = declare_dependency(
@@ -235,8 +235,8 @@ liblixstore = declare_dependency(
# FIXME: not using the pkg-config module because it creates way too many deps
# while meson migration is in progress, and we want to not include boost here
configure_file(
- input : 'nix-store.pc.in',
- output : 'nix-store.pc',
+ input : 'lix-store.pc.in',
+ output : 'lix-store.pc',
install_dir : libdir / 'pkgconfig',
configuration : {
'prefix' : prefix,
diff --git a/src/libstore/nix-store.pc.in b/src/libstore/nix-store.pc.in
deleted file mode 100644
index dc42d0bca..000000000
--- a/src/libstore/nix-store.pc.in
+++ /dev/null
@@ -1,9 +0,0 @@
-prefix=@prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: Nix
-Description: Nix Package Manager
-Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lnixstore -lnixutil
-Cflags: -I${includedir}/nix -std=c++2a
diff --git a/src/libutil/lix-util.pc.in b/src/libutil/lix-util.pc.in
new file mode 100644
index 000000000..cd749aabb
--- /dev/null
+++ b/src/libutil/lix-util.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix libutil
+Description: Lix Package Manager (libutil)
+Version: @PACKAGE_VERSION@
+Requires: lix-base lix-util
+Libs: -L${libdir} -llixutil
+Cflags: -I${includedir}/lix/libutil
diff --git a/src/libutil/meson.build b/src/libutil/meson.build
index 13266f6bd..58e0bd062 100644
--- a/src/libutil/meson.build
+++ b/src/libutil/meson.build
@@ -100,7 +100,7 @@ libutil_headers = files(
)
libutil = library(
- 'nixutil',
+ 'lixutil',
libutil_sources,
dependencies : [
aws_sdk,
@@ -118,7 +118,21 @@ libutil = library(
install : true,
)
-install_headers(libutil_headers, subdir : 'nix', preserve_path : true)
+install_headers(libutil_headers, subdir : 'lix/libutil', preserve_path : true)
+
+# FIXME: not using the pkg-config module because it creates way too many deps
+# while meson migration is in progress, and we want to not include boost here
+configure_file(
+ input : 'lix-util.pc.in',
+ output : 'lix-util.pc',
+ install_dir : libdir / 'pkgconfig',
+ configuration : {
+ 'prefix' : prefix,
+ 'libdir' : libdir,
+ 'includedir' : includedir,
+ 'PACKAGE_VERSION' : meson.project_version(),
+ },
+)
# Used by libstore and libfetchers.
liblixutil = declare_dependency(
diff --git a/src/lix-base.pc.in b/src/lix-base.pc.in
new file mode 100644
index 000000000..925a7753a
--- /dev/null
+++ b/src/lix-base.pc.in
@@ -0,0 +1,8 @@
+prefix=@prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: Lix base
+Description: Lix Package Manager (config.hh fixup)
+Version: @PACKAGE_VERSION@
+Cflags: -I${includedir}/lix