]> git.sesse.net Git - bcachefs-tools-debian/commitdiff
move Rust sources to top level, C sources into c_src
authorThomas Bertschinger <tahbertschinger@gmail.com>
Tue, 16 Jan 2024 06:41:02 +0000 (23:41 -0700)
committerKent Overstreet <kent.overstreet@linux.dev>
Tue, 16 Jan 2024 06:47:05 +0000 (01:47 -0500)
This moves the Rust sources out of rust_src/ and into the top level.
Running the bcachefs executable out of the development tree is now:

$ ./target/release/bcachefs command
or
$ cargo run --profile release -- command

instead of "./bcachefs command".

Building and installing is still:

$ make && make install

Signed-off-by: Thomas Bertschinger <tahbertschinger@gmail.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
470 files changed:
.github/workflows/build-packages.yml
.gitignore
Cargo.lock [moved from rust-src/Cargo.lock with 100% similarity]
Cargo.toml [moved from rust-src/Cargo.toml with 100% similarity]
Makefile
bch_bindgen/.gitignore [moved from rust-src/bch_bindgen/.gitignore with 100% similarity]
bch_bindgen/Cargo.lock [moved from rust-src/bch_bindgen/Cargo.lock with 100% similarity]
bch_bindgen/Cargo.toml [moved from rust-src/bch_bindgen/Cargo.toml with 100% similarity]
bch_bindgen/build.rs [moved from rust-src/bch_bindgen/build.rs with 96% similarity]
bch_bindgen/rustfmt.toml [moved from rust-src/bch_bindgen/rustfmt.toml with 100% similarity]
bch_bindgen/src/bcachefs.rs [moved from rust-src/bch_bindgen/src/bcachefs.rs with 100% similarity]
bch_bindgen/src/bkey.rs [moved from rust-src/bch_bindgen/src/bkey.rs with 100% similarity]
bch_bindgen/src/btree.rs [moved from rust-src/bch_bindgen/src/btree.rs with 100% similarity]
bch_bindgen/src/errcode.rs [moved from rust-src/bch_bindgen/src/errcode.rs with 100% similarity]
bch_bindgen/src/fs.rs [moved from rust-src/bch_bindgen/src/fs.rs with 100% similarity]
bch_bindgen/src/keyutils.rs [moved from rust-src/bch_bindgen/src/keyutils.rs with 100% similarity]
bch_bindgen/src/keyutils_wrapper.h [moved from rust-src/bch_bindgen/src/keyutils_wrapper.h with 100% similarity]
bch_bindgen/src/lib.rs [moved from rust-src/bch_bindgen/src/lib.rs with 100% similarity]
bch_bindgen/src/libbcachefs_wrapper.h [new file with mode: 0644]
bch_bindgen/src/opts.rs [moved from rust-src/bch_bindgen/src/opts.rs with 100% similarity]
bch_bindgen/src/rs.rs [moved from rust-src/bch_bindgen/src/rs.rs with 100% similarity]
build.nix
build.rs [moved from rust-src/build.rs with 86% similarity]
c_src/bcachefs.c [moved from bcachefs.c with 100% similarity]
c_src/ccan/array_size/LICENSE [moved from ccan/array_size/LICENSE with 100% similarity]
c_src/ccan/array_size/_info [moved from ccan/array_size/_info with 100% similarity]
c_src/ccan/array_size/array_size.h [moved from ccan/array_size/array_size.h with 100% similarity]
c_src/ccan/build_assert/LICENSE [moved from ccan/build_assert/LICENSE with 100% similarity]
c_src/ccan/build_assert/_info [moved from ccan/build_assert/_info with 100% similarity]
c_src/ccan/build_assert/build_assert.h [moved from ccan/build_assert/build_assert.h with 100% similarity]
c_src/ccan/compiler/LICENSE [moved from ccan/compiler/LICENSE with 100% similarity]
c_src/ccan/compiler/_info [moved from ccan/compiler/_info with 100% similarity]
c_src/ccan/compiler/compiler.h [moved from ccan/compiler/compiler.h with 100% similarity]
c_src/cmd_assemble.c [moved from cmd_assemble.c with 100% similarity]
c_src/cmd_attr.c [moved from cmd_attr.c with 100% similarity]
c_src/cmd_counters.c [moved from cmd_counters.c with 100% similarity]
c_src/cmd_data.c [moved from cmd_data.c with 100% similarity]
c_src/cmd_device.c [moved from cmd_device.c with 100% similarity]
c_src/cmd_dump.c [moved from cmd_dump.c with 100% similarity]
c_src/cmd_format.c [moved from cmd_format.c with 100% similarity]
c_src/cmd_fs.c [moved from cmd_fs.c with 100% similarity]
c_src/cmd_fsck.c [moved from cmd_fsck.c with 100% similarity]
c_src/cmd_fusemount.c [moved from cmd_fusemount.c with 100% similarity]
c_src/cmd_key.c [moved from cmd_key.c with 100% similarity]
c_src/cmd_kill_btree_node.c [moved from cmd_kill_btree_node.c with 100% similarity]
c_src/cmd_list_journal.c [moved from cmd_list_journal.c with 100% similarity]
c_src/cmd_migrate.c [moved from cmd_migrate.c with 100% similarity]
c_src/cmd_option.c [moved from cmd_option.c with 100% similarity]
c_src/cmd_run.c [moved from cmd_run.c with 100% similarity]
c_src/cmd_subvolume.c [moved from cmd_subvolume.c with 100% similarity]
c_src/cmd_version.c [moved from cmd_version.c with 100% similarity]
c_src/cmds.h [moved from cmds.h with 100% similarity]
c_src/config.h [moved from config.h with 100% similarity]
c_src/crypto.c [moved from crypto.c with 100% similarity]
c_src/crypto.h [moved from crypto.h with 100% similarity]
c_src/include/asm/page.h [moved from include/asm/page.h with 100% similarity]
c_src/include/asm/unaligned.h [moved from include/asm/unaligned.h with 100% similarity]
c_src/include/crypto/algapi.h [moved from include/crypto/algapi.h with 100% similarity]
c_src/include/crypto/chacha.h [moved from include/crypto/chacha.h with 100% similarity]
c_src/include/crypto/hash.h [moved from include/crypto/hash.h with 100% similarity]
c_src/include/crypto/poly1305.h [moved from include/crypto/poly1305.h with 100% similarity]
c_src/include/crypto/sha2.h [moved from include/crypto/sha2.h with 100% similarity]
c_src/include/crypto/skcipher.h [moved from include/crypto/skcipher.h with 100% similarity]
c_src/include/keys/user-type.h [moved from include/keys/user-type.h with 100% similarity]
c_src/include/linux/atomic.h [moved from include/linux/atomic.h with 100% similarity]
c_src/include/linux/backing-dev-defs.h [moved from include/linux/backing-dev-defs.h with 100% similarity]
c_src/include/linux/backing-dev.h [moved from include/linux/backing-dev.h with 100% similarity]
c_src/include/linux/bio.h [moved from include/linux/bio.h with 100% similarity]
c_src/include/linux/bit_spinlock.h [moved from include/linux/bit_spinlock.h with 100% similarity]
c_src/include/linux/bitmap.h [moved from include/linux/bitmap.h with 100% similarity]
c_src/include/linux/bitops.h [moved from include/linux/bitops.h with 100% similarity]
c_src/include/linux/blk_types.h [moved from include/linux/blk_types.h with 100% similarity]
c_src/include/linux/blkdev.h [moved from include/linux/blkdev.h with 100% similarity]
c_src/include/linux/bsearch.h [moved from include/linux/bsearch.h with 100% similarity]
c_src/include/linux/bug.h [moved from include/linux/bug.h with 100% similarity]
c_src/include/linux/bvec.h [moved from include/linux/bvec.h with 100% similarity]
c_src/include/linux/byteorder.h [moved from include/linux/byteorder.h with 100% similarity]
c_src/include/linux/cache.h [moved from include/linux/cache.h with 100% similarity]
c_src/include/linux/closure.h [moved from include/linux/closure.h with 100% similarity]
c_src/include/linux/compiler.h [moved from include/linux/compiler.h with 100% similarity]
c_src/include/linux/completion.h [moved from include/linux/completion.h with 100% similarity]
c_src/include/linux/console.h [moved from include/linux/console.h with 100% similarity]
c_src/include/linux/cpumask.h [moved from include/linux/cpumask.h with 100% similarity]
c_src/include/linux/crc32c.h [moved from include/linux/crc32c.h with 100% similarity]
c_src/include/linux/crc64.h [moved from include/linux/crc64.h with 100% similarity]
c_src/include/linux/crypto.h [moved from include/linux/crypto.h with 100% similarity]
c_src/include/linux/ctype.h [moved from include/linux/ctype.h with 100% similarity]
c_src/include/linux/dcache.h [moved from include/linux/dcache.h with 100% similarity]
c_src/include/linux/debugfs.h [moved from include/linux/debugfs.h with 100% similarity]
c_src/include/linux/device.h [moved from include/linux/device.h with 100% similarity]
c_src/include/linux/dynamic_fault.h [moved from include/linux/dynamic_fault.h with 100% similarity]
c_src/include/linux/err.h [moved from include/linux/err.h with 100% similarity]
c_src/include/linux/errname.h [moved from include/linux/errname.h with 100% similarity]
c_src/include/linux/export.h [moved from include/linux/export.h with 100% similarity]
c_src/include/linux/freezer.h [moved from include/linux/freezer.h with 100% similarity]
c_src/include/linux/generic-radix-tree.h [moved from include/linux/generic-radix-tree.h with 100% similarity]
c_src/include/linux/genhd.h [moved from include/linux/genhd.h with 100% similarity]
c_src/include/linux/gfp.h [moved from include/linux/gfp.h with 100% similarity]
c_src/include/linux/hash.h [moved from include/linux/hash.h with 100% similarity]
c_src/include/linux/idr.h [moved from include/linux/idr.h with 100% similarity]
c_src/include/linux/ioprio.h [moved from include/linux/ioprio.h with 100% similarity]
c_src/include/linux/jhash.h [moved from include/linux/jhash.h with 100% similarity]
c_src/include/linux/jiffies.h [moved from include/linux/jiffies.h with 100% similarity]
c_src/include/linux/kernel.h [moved from include/linux/kernel.h with 100% similarity]
c_src/include/linux/key.h [moved from include/linux/key.h with 100% similarity]
c_src/include/linux/kmemleak.h [moved from include/linux/kmemleak.h with 100% similarity]
c_src/include/linux/kobject.h [moved from include/linux/kobject.h with 100% similarity]
c_src/include/linux/kthread.h [moved from include/linux/kthread.h with 100% similarity]
c_src/include/linux/list.h [moved from include/linux/list.h with 100% similarity]
c_src/include/linux/list_nulls.h [moved from include/linux/list_nulls.h with 100% similarity]
c_src/include/linux/llist.h [moved from include/linux/llist.h with 100% similarity]
c_src/include/linux/lockdep.h [moved from include/linux/lockdep.h with 100% similarity]
c_src/include/linux/log2.h [moved from include/linux/log2.h with 100% similarity]
c_src/include/linux/lz4.h [moved from include/linux/lz4.h with 100% similarity]
c_src/include/linux/math.h [moved from include/linux/math.h with 100% similarity]
c_src/include/linux/math64.h [moved from include/linux/math64.h with 100% similarity]
c_src/include/linux/mempool.h [moved from include/linux/mempool.h with 100% similarity]
c_src/include/linux/minmax.h [moved from include/linux/minmax.h with 100% similarity]
c_src/include/linux/mm.h [moved from include/linux/mm.h with 100% similarity]
c_src/include/linux/module.h [moved from include/linux/module.h with 100% similarity]
c_src/include/linux/mutex.h [moved from include/linux/mutex.h with 100% similarity]
c_src/include/linux/osq_lock.h [moved from include/linux/osq_lock.h with 100% similarity]
c_src/include/linux/overflow.h [moved from include/linux/overflow.h with 100% similarity]
c_src/include/linux/page.h [moved from include/linux/page.h with 100% similarity]
c_src/include/linux/percpu-refcount.h [moved from include/linux/percpu-refcount.h with 100% similarity]
c_src/include/linux/percpu-rwsem.h [moved from include/linux/percpu-rwsem.h with 100% similarity]
c_src/include/linux/percpu.h [moved from include/linux/percpu.h with 100% similarity]
c_src/include/linux/poison.h [moved from include/linux/poison.h with 100% similarity]
c_src/include/linux/posix_acl.h [moved from include/linux/posix_acl.h with 100% similarity]
c_src/include/linux/posix_acl_xattr.h [moved from include/linux/posix_acl_xattr.h with 100% similarity]
c_src/include/linux/prandom.h [moved from include/linux/prandom.h with 100% similarity]
c_src/include/linux/preempt.h [moved from include/linux/preempt.h with 100% similarity]
c_src/include/linux/prefetch.h [moved from include/linux/prefetch.h with 100% similarity]
c_src/include/linux/pretty-printers.h [moved from include/linux/pretty-printers.h with 100% similarity]
c_src/include/linux/printk.h [moved from include/linux/printk.h with 100% similarity]
c_src/include/linux/random.h [moved from include/linux/random.h with 100% similarity]
c_src/include/linux/ratelimit.h [moved from include/linux/ratelimit.h with 100% similarity]
c_src/include/linux/rculist.h [moved from include/linux/rculist.h with 100% similarity]
c_src/include/linux/rcupdate.h [moved from include/linux/rcupdate.h with 100% similarity]
c_src/include/linux/refcount.h [moved from include/linux/refcount.h with 100% similarity]
c_src/include/linux/rhashtable-types.h [moved from include/linux/rhashtable-types.h with 100% similarity]
c_src/include/linux/rhashtable.h [moved from include/linux/rhashtable.h with 100% similarity]
c_src/include/linux/rwsem.h [moved from include/linux/rwsem.h with 100% similarity]
c_src/include/linux/scatterlist.h [moved from include/linux/scatterlist.h with 100% similarity]
c_src/include/linux/sched.h [moved from include/linux/sched.h with 100% similarity]
c_src/include/linux/sched/clock.h [moved from include/linux/sched/clock.h with 100% similarity]
c_src/include/linux/sched/cputime.h [moved from include/linux/sched/cputime.h with 100% similarity]
c_src/include/linux/sched/debug.h [moved from include/linux/sched/debug.h with 100% similarity]
c_src/include/linux/sched/mm.h [moved from include/linux/sched/mm.h with 100% similarity]
c_src/include/linux/sched/rt.h [moved from include/linux/sched/rt.h with 100% similarity]
c_src/include/linux/sched/signal.h [moved from include/linux/sched/signal.h with 100% similarity]
c_src/include/linux/sched/task.h [moved from include/linux/sched/task.h with 100% similarity]
c_src/include/linux/sched/task_stack.h [moved from include/linux/sched/task_stack.h with 100% similarity]
c_src/include/linux/semaphore.h [moved from include/linux/semaphore.h with 100% similarity]
c_src/include/linux/seq_buf.h [moved from include/linux/seq_buf.h with 100% similarity]
c_src/include/linux/seq_file.h [moved from include/linux/seq_file.h with 100% similarity]
c_src/include/linux/seqlock.h [moved from include/linux/seqlock.h with 100% similarity]
c_src/include/linux/shrinker.h [moved from include/linux/shrinker.h with 100% similarity]
c_src/include/linux/siphash.h [moved from include/linux/siphash.h with 100% similarity]
c_src/include/linux/slab.h [moved from include/linux/slab.h with 100% similarity]
c_src/include/linux/sort.h [moved from include/linux/sort.h with 100% similarity]
c_src/include/linux/spinlock.h [moved from include/linux/spinlock.h with 100% similarity]
c_src/include/linux/srcu.h [moved from include/linux/srcu.h with 100% similarity]
c_src/include/linux/stat.h [moved from include/linux/stat.h with 100% similarity]
c_src/include/linux/string.h [moved from include/linux/string.h with 100% similarity]
c_src/include/linux/string_helpers.h [moved from include/linux/string_helpers.h with 100% similarity]
c_src/include/linux/sysfs.h [moved from include/linux/sysfs.h with 100% similarity]
c_src/include/linux/time64.h [moved from include/linux/time64.h with 100% similarity]
c_src/include/linux/timer.h [moved from include/linux/timer.h with 100% similarity]
c_src/include/linux/tracepoint.h [moved from include/linux/tracepoint.h with 100% similarity]
c_src/include/linux/typecheck.h [moved from include/linux/typecheck.h with 100% similarity]
c_src/include/linux/types.h [moved from include/linux/types.h with 100% similarity]
c_src/include/linux/unaligned/be_byteshift.h [moved from include/linux/unaligned/be_byteshift.h with 100% similarity]
c_src/include/linux/unaligned/be_struct.h [moved from include/linux/unaligned/be_struct.h with 100% similarity]
c_src/include/linux/unaligned/generic.h [moved from include/linux/unaligned/generic.h with 100% similarity]
c_src/include/linux/unaligned/le_byteshift.h [moved from include/linux/unaligned/le_byteshift.h with 100% similarity]
c_src/include/linux/unaligned/le_struct.h [moved from include/linux/unaligned/le_struct.h with 100% similarity]
c_src/include/linux/unaligned/packed_struct.h [moved from include/linux/unaligned/packed_struct.h with 100% similarity]
c_src/include/linux/uuid.h [moved from include/linux/uuid.h with 100% similarity]
c_src/include/linux/vmalloc.h [moved from include/linux/vmalloc.h with 100% similarity]
c_src/include/linux/wait.h [moved from include/linux/wait.h with 100% similarity]
c_src/include/linux/workqueue.h [moved from include/linux/workqueue.h with 100% similarity]
c_src/include/linux/xattr.h [moved from include/linux/xattr.h with 100% similarity]
c_src/include/linux/xxhash.h [moved from include/linux/xxhash.h with 100% similarity]
c_src/include/linux/zlib.h [moved from include/linux/zlib.h with 100% similarity]
c_src/include/linux/zstd.h [moved from include/linux/zstd.h with 100% similarity]
c_src/include/linux/zstd_errors.h [moved from include/linux/zstd_errors.h with 100% similarity]
c_src/include/trace/define_trace.h [moved from include/trace/define_trace.h with 100% similarity]
c_src/include/trace/events/lock.h [moved from include/trace/events/lock.h with 100% similarity]
c_src/include/uapi/linux/xattr.h [moved from include/uapi/linux/xattr.h with 100% similarity]
c_src/libbcachefs.c [moved from libbcachefs.c with 100% similarity]
c_src/libbcachefs.h [moved from libbcachefs.h with 100% similarity]
c_src/libbcachefs/acl.c [moved from libbcachefs/acl.c with 100% similarity]
c_src/libbcachefs/acl.h [moved from libbcachefs/acl.h with 100% similarity]
c_src/libbcachefs/alloc_background.c [moved from libbcachefs/alloc_background.c with 100% similarity]
c_src/libbcachefs/alloc_background.h [moved from libbcachefs/alloc_background.h with 100% similarity]
c_src/libbcachefs/alloc_foreground.c [moved from libbcachefs/alloc_foreground.c with 100% similarity]
c_src/libbcachefs/alloc_foreground.h [moved from libbcachefs/alloc_foreground.h with 100% similarity]
c_src/libbcachefs/alloc_types.h [moved from libbcachefs/alloc_types.h with 100% similarity]
c_src/libbcachefs/backpointers.c [moved from libbcachefs/backpointers.c with 100% similarity]
c_src/libbcachefs/backpointers.h [moved from libbcachefs/backpointers.h with 100% similarity]
c_src/libbcachefs/bbpos.h [moved from libbcachefs/bbpos.h with 100% similarity]
c_src/libbcachefs/bbpos_types.h [moved from libbcachefs/bbpos_types.h with 100% similarity]
c_src/libbcachefs/bcachefs.h [moved from libbcachefs/bcachefs.h with 100% similarity]
c_src/libbcachefs/bcachefs_format.h [moved from libbcachefs/bcachefs_format.h with 100% similarity]
c_src/libbcachefs/bcachefs_ioctl.h [moved from libbcachefs/bcachefs_ioctl.h with 100% similarity]
c_src/libbcachefs/bkey.c [moved from libbcachefs/bkey.c with 100% similarity]
c_src/libbcachefs/bkey.h [moved from libbcachefs/bkey.h with 100% similarity]
c_src/libbcachefs/bkey_buf.h [moved from libbcachefs/bkey_buf.h with 100% similarity]
c_src/libbcachefs/bkey_cmp.h [moved from libbcachefs/bkey_cmp.h with 100% similarity]
c_src/libbcachefs/bkey_methods.c [moved from libbcachefs/bkey_methods.c with 100% similarity]
c_src/libbcachefs/bkey_methods.h [moved from libbcachefs/bkey_methods.h with 100% similarity]
c_src/libbcachefs/bkey_sort.c [moved from libbcachefs/bkey_sort.c with 100% similarity]
c_src/libbcachefs/bkey_sort.h [moved from libbcachefs/bkey_sort.h with 100% similarity]
c_src/libbcachefs/bset.c [moved from libbcachefs/bset.c with 100% similarity]
c_src/libbcachefs/bset.h [moved from libbcachefs/bset.h with 100% similarity]
c_src/libbcachefs/btree_cache.c [moved from libbcachefs/btree_cache.c with 100% similarity]
c_src/libbcachefs/btree_cache.h [moved from libbcachefs/btree_cache.h with 100% similarity]
c_src/libbcachefs/btree_gc.c [moved from libbcachefs/btree_gc.c with 100% similarity]
c_src/libbcachefs/btree_gc.h [moved from libbcachefs/btree_gc.h with 100% similarity]
c_src/libbcachefs/btree_io.c [moved from libbcachefs/btree_io.c with 100% similarity]
c_src/libbcachefs/btree_io.h [moved from libbcachefs/btree_io.h with 100% similarity]
c_src/libbcachefs/btree_iter.c [moved from libbcachefs/btree_iter.c with 100% similarity]
c_src/libbcachefs/btree_iter.h [moved from libbcachefs/btree_iter.h with 100% similarity]
c_src/libbcachefs/btree_journal_iter.c [moved from libbcachefs/btree_journal_iter.c with 100% similarity]
c_src/libbcachefs/btree_journal_iter.h [moved from libbcachefs/btree_journal_iter.h with 100% similarity]
c_src/libbcachefs/btree_key_cache.c [moved from libbcachefs/btree_key_cache.c with 100% similarity]
c_src/libbcachefs/btree_key_cache.h [moved from libbcachefs/btree_key_cache.h with 100% similarity]
c_src/libbcachefs/btree_key_cache_types.h [moved from libbcachefs/btree_key_cache_types.h with 100% similarity]
c_src/libbcachefs/btree_locking.c [moved from libbcachefs/btree_locking.c with 100% similarity]
c_src/libbcachefs/btree_locking.h [moved from libbcachefs/btree_locking.h with 100% similarity]
c_src/libbcachefs/btree_trans_commit.c [moved from libbcachefs/btree_trans_commit.c with 100% similarity]
c_src/libbcachefs/btree_types.h [moved from libbcachefs/btree_types.h with 100% similarity]
c_src/libbcachefs/btree_update.c [moved from libbcachefs/btree_update.c with 100% similarity]
c_src/libbcachefs/btree_update.h [moved from libbcachefs/btree_update.h with 100% similarity]
c_src/libbcachefs/btree_update_interior.c [moved from libbcachefs/btree_update_interior.c with 100% similarity]
c_src/libbcachefs/btree_update_interior.h [moved from libbcachefs/btree_update_interior.h with 100% similarity]
c_src/libbcachefs/btree_write_buffer.c [moved from libbcachefs/btree_write_buffer.c with 100% similarity]
c_src/libbcachefs/btree_write_buffer.h [moved from libbcachefs/btree_write_buffer.h with 100% similarity]
c_src/libbcachefs/btree_write_buffer_types.h [moved from libbcachefs/btree_write_buffer_types.h with 100% similarity]
c_src/libbcachefs/buckets.c [moved from libbcachefs/buckets.c with 100% similarity]
c_src/libbcachefs/buckets.h [moved from libbcachefs/buckets.h with 100% similarity]
c_src/libbcachefs/buckets_types.h [moved from libbcachefs/buckets_types.h with 100% similarity]
c_src/libbcachefs/buckets_waiting_for_journal.c [moved from libbcachefs/buckets_waiting_for_journal.c with 100% similarity]
c_src/libbcachefs/buckets_waiting_for_journal.h [moved from libbcachefs/buckets_waiting_for_journal.h with 100% similarity]
c_src/libbcachefs/buckets_waiting_for_journal_types.h [moved from libbcachefs/buckets_waiting_for_journal_types.h with 100% similarity]
c_src/libbcachefs/chardev.c [moved from libbcachefs/chardev.c with 100% similarity]
c_src/libbcachefs/chardev.h [moved from libbcachefs/chardev.h with 100% similarity]
c_src/libbcachefs/checksum.c [moved from libbcachefs/checksum.c with 100% similarity]
c_src/libbcachefs/checksum.h [moved from libbcachefs/checksum.h with 100% similarity]
c_src/libbcachefs/clock.c [moved from libbcachefs/clock.c with 100% similarity]
c_src/libbcachefs/clock.h [moved from libbcachefs/clock.h with 100% similarity]
c_src/libbcachefs/clock_types.h [moved from libbcachefs/clock_types.h with 100% similarity]
c_src/libbcachefs/compress.c [moved from libbcachefs/compress.c with 100% similarity]
c_src/libbcachefs/compress.h [moved from libbcachefs/compress.h with 100% similarity]
c_src/libbcachefs/counters.c [moved from libbcachefs/counters.c with 100% similarity]
c_src/libbcachefs/counters.h [moved from libbcachefs/counters.h with 100% similarity]
c_src/libbcachefs/darray.c [moved from libbcachefs/darray.c with 100% similarity]
c_src/libbcachefs/darray.h [moved from libbcachefs/darray.h with 100% similarity]
c_src/libbcachefs/data_update.c [moved from libbcachefs/data_update.c with 100% similarity]
c_src/libbcachefs/data_update.h [moved from libbcachefs/data_update.h with 100% similarity]
c_src/libbcachefs/debug.c [moved from libbcachefs/debug.c with 100% similarity]
c_src/libbcachefs/debug.h [moved from libbcachefs/debug.h with 100% similarity]
c_src/libbcachefs/dirent.c [moved from libbcachefs/dirent.c with 100% similarity]
c_src/libbcachefs/dirent.h [moved from libbcachefs/dirent.h with 100% similarity]
c_src/libbcachefs/disk_groups.c [moved from libbcachefs/disk_groups.c with 100% similarity]
c_src/libbcachefs/disk_groups.h [moved from libbcachefs/disk_groups.h with 100% similarity]
c_src/libbcachefs/disk_groups_types.h [moved from libbcachefs/disk_groups_types.h with 100% similarity]
c_src/libbcachefs/ec.c [moved from libbcachefs/ec.c with 100% similarity]
c_src/libbcachefs/ec.h [moved from libbcachefs/ec.h with 100% similarity]
c_src/libbcachefs/ec_types.h [moved from libbcachefs/ec_types.h with 100% similarity]
c_src/libbcachefs/errcode.c [moved from libbcachefs/errcode.c with 100% similarity]
c_src/libbcachefs/errcode.h [moved from libbcachefs/errcode.h with 100% similarity]
c_src/libbcachefs/error.c [moved from libbcachefs/error.c with 100% similarity]
c_src/libbcachefs/error.h [moved from libbcachefs/error.h with 100% similarity]
c_src/libbcachefs/extent_update.c [moved from libbcachefs/extent_update.c with 100% similarity]
c_src/libbcachefs/extent_update.h [moved from libbcachefs/extent_update.h with 100% similarity]
c_src/libbcachefs/extents.c [moved from libbcachefs/extents.c with 100% similarity]
c_src/libbcachefs/extents.h [moved from libbcachefs/extents.h with 100% similarity]
c_src/libbcachefs/extents_types.h [moved from libbcachefs/extents_types.h with 100% similarity]
c_src/libbcachefs/eytzinger.h [moved from libbcachefs/eytzinger.h with 100% similarity]
c_src/libbcachefs/fifo.h [moved from libbcachefs/fifo.h with 100% similarity]
c_src/libbcachefs/fs-common.c [moved from libbcachefs/fs-common.c with 100% similarity]
c_src/libbcachefs/fs-common.h [moved from libbcachefs/fs-common.h with 100% similarity]
c_src/libbcachefs/fs-io-buffered.c [moved from libbcachefs/fs-io-buffered.c with 100% similarity]
c_src/libbcachefs/fs-io-buffered.h [moved from libbcachefs/fs-io-buffered.h with 100% similarity]
c_src/libbcachefs/fs-io-direct.c [moved from libbcachefs/fs-io-direct.c with 100% similarity]
c_src/libbcachefs/fs-io-direct.h [moved from libbcachefs/fs-io-direct.h with 100% similarity]
c_src/libbcachefs/fs-io-pagecache.c [moved from libbcachefs/fs-io-pagecache.c with 100% similarity]
c_src/libbcachefs/fs-io-pagecache.h [moved from libbcachefs/fs-io-pagecache.h with 100% similarity]
c_src/libbcachefs/fs-io.c [moved from libbcachefs/fs-io.c with 100% similarity]
c_src/libbcachefs/fs-io.h [moved from libbcachefs/fs-io.h with 100% similarity]
c_src/libbcachefs/fs-ioctl.c [moved from libbcachefs/fs-ioctl.c with 100% similarity]
c_src/libbcachefs/fs-ioctl.h [moved from libbcachefs/fs-ioctl.h with 100% similarity]
c_src/libbcachefs/fs.c [moved from libbcachefs/fs.c with 100% similarity]
c_src/libbcachefs/fs.h [moved from libbcachefs/fs.h with 100% similarity]
c_src/libbcachefs/fsck.c [moved from libbcachefs/fsck.c with 100% similarity]
c_src/libbcachefs/fsck.h [moved from libbcachefs/fsck.h with 100% similarity]
c_src/libbcachefs/inode.c [moved from libbcachefs/inode.c with 100% similarity]
c_src/libbcachefs/inode.h [moved from libbcachefs/inode.h with 100% similarity]
c_src/libbcachefs/io_misc.c [moved from libbcachefs/io_misc.c with 100% similarity]
c_src/libbcachefs/io_misc.h [moved from libbcachefs/io_misc.h with 100% similarity]
c_src/libbcachefs/io_read.c [moved from libbcachefs/io_read.c with 100% similarity]
c_src/libbcachefs/io_read.h [moved from libbcachefs/io_read.h with 100% similarity]
c_src/libbcachefs/io_write.c [moved from libbcachefs/io_write.c with 100% similarity]
c_src/libbcachefs/io_write.h [moved from libbcachefs/io_write.h with 100% similarity]
c_src/libbcachefs/io_write_types.h [moved from libbcachefs/io_write_types.h with 100% similarity]
c_src/libbcachefs/journal.c [moved from libbcachefs/journal.c with 100% similarity]
c_src/libbcachefs/journal.h [moved from libbcachefs/journal.h with 100% similarity]
c_src/libbcachefs/journal_io.c [moved from libbcachefs/journal_io.c with 100% similarity]
c_src/libbcachefs/journal_io.h [moved from libbcachefs/journal_io.h with 100% similarity]
c_src/libbcachefs/journal_reclaim.c [moved from libbcachefs/journal_reclaim.c with 100% similarity]
c_src/libbcachefs/journal_reclaim.h [moved from libbcachefs/journal_reclaim.h with 100% similarity]
c_src/libbcachefs/journal_sb.c [moved from libbcachefs/journal_sb.c with 100% similarity]
c_src/libbcachefs/journal_sb.h [moved from libbcachefs/journal_sb.h with 100% similarity]
c_src/libbcachefs/journal_seq_blacklist.c [moved from libbcachefs/journal_seq_blacklist.c with 100% similarity]
c_src/libbcachefs/journal_seq_blacklist.h [moved from libbcachefs/journal_seq_blacklist.h with 100% similarity]
c_src/libbcachefs/journal_types.h [moved from libbcachefs/journal_types.h with 100% similarity]
c_src/libbcachefs/keylist.c [moved from libbcachefs/keylist.c with 100% similarity]
c_src/libbcachefs/keylist.h [moved from libbcachefs/keylist.h with 100% similarity]
c_src/libbcachefs/keylist_types.h [moved from libbcachefs/keylist_types.h with 100% similarity]
c_src/libbcachefs/logged_ops.c [moved from libbcachefs/logged_ops.c with 100% similarity]
c_src/libbcachefs/logged_ops.h [moved from libbcachefs/logged_ops.h with 100% similarity]
c_src/libbcachefs/lru.c [moved from libbcachefs/lru.c with 100% similarity]
c_src/libbcachefs/lru.h [moved from libbcachefs/lru.h with 100% similarity]
c_src/libbcachefs/mean_and_variance.c [moved from libbcachefs/mean_and_variance.c with 100% similarity]
c_src/libbcachefs/mean_and_variance.h [moved from libbcachefs/mean_and_variance.h with 100% similarity]
c_src/libbcachefs/migrate.c [moved from libbcachefs/migrate.c with 100% similarity]
c_src/libbcachefs/migrate.h [moved from libbcachefs/migrate.h with 100% similarity]
c_src/libbcachefs/move.c [moved from libbcachefs/move.c with 100% similarity]
c_src/libbcachefs/move.h [moved from libbcachefs/move.h with 100% similarity]
c_src/libbcachefs/move_types.h [moved from libbcachefs/move_types.h with 100% similarity]
c_src/libbcachefs/movinggc.c [moved from libbcachefs/movinggc.c with 100% similarity]
c_src/libbcachefs/movinggc.h [moved from libbcachefs/movinggc.h with 100% similarity]
c_src/libbcachefs/nocow_locking.c [moved from libbcachefs/nocow_locking.c with 100% similarity]
c_src/libbcachefs/nocow_locking.h [moved from libbcachefs/nocow_locking.h with 100% similarity]
c_src/libbcachefs/nocow_locking_types.h [moved from libbcachefs/nocow_locking_types.h with 100% similarity]
c_src/libbcachefs/opts.c [moved from libbcachefs/opts.c with 100% similarity]
c_src/libbcachefs/opts.h [moved from libbcachefs/opts.h with 100% similarity]
c_src/libbcachefs/printbuf.c [moved from libbcachefs/printbuf.c with 100% similarity]
c_src/libbcachefs/printbuf.h [moved from libbcachefs/printbuf.h with 100% similarity]
c_src/libbcachefs/quota.c [moved from libbcachefs/quota.c with 100% similarity]
c_src/libbcachefs/quota.h [moved from libbcachefs/quota.h with 100% similarity]
c_src/libbcachefs/quota_types.h [moved from libbcachefs/quota_types.h with 100% similarity]
c_src/libbcachefs/rebalance.c [moved from libbcachefs/rebalance.c with 100% similarity]
c_src/libbcachefs/rebalance.h [moved from libbcachefs/rebalance.h with 100% similarity]
c_src/libbcachefs/rebalance_types.h [moved from libbcachefs/rebalance_types.h with 100% similarity]
c_src/libbcachefs/recovery.c [moved from libbcachefs/recovery.c with 100% similarity]
c_src/libbcachefs/recovery.h [moved from libbcachefs/recovery.h with 100% similarity]
c_src/libbcachefs/recovery_types.h [moved from libbcachefs/recovery_types.h with 100% similarity]
c_src/libbcachefs/reflink.c [moved from libbcachefs/reflink.c with 100% similarity]
c_src/libbcachefs/reflink.h [moved from libbcachefs/reflink.h with 100% similarity]
c_src/libbcachefs/replicas.c [moved from libbcachefs/replicas.c with 100% similarity]
c_src/libbcachefs/replicas.h [moved from libbcachefs/replicas.h with 100% similarity]
c_src/libbcachefs/replicas_types.h [moved from libbcachefs/replicas_types.h with 100% similarity]
c_src/libbcachefs/sb-clean.c [moved from libbcachefs/sb-clean.c with 100% similarity]
c_src/libbcachefs/sb-clean.h [moved from libbcachefs/sb-clean.h with 100% similarity]
c_src/libbcachefs/sb-downgrade.c [moved from libbcachefs/sb-downgrade.c with 100% similarity]
c_src/libbcachefs/sb-downgrade.h [moved from libbcachefs/sb-downgrade.h with 100% similarity]
c_src/libbcachefs/sb-errors.c [moved from libbcachefs/sb-errors.c with 100% similarity]
c_src/libbcachefs/sb-errors.h [moved from libbcachefs/sb-errors.h with 100% similarity]
c_src/libbcachefs/sb-errors_types.h [moved from libbcachefs/sb-errors_types.h with 100% similarity]
c_src/libbcachefs/sb-members.c [moved from libbcachefs/sb-members.c with 100% similarity]
c_src/libbcachefs/sb-members.h [moved from libbcachefs/sb-members.h with 100% similarity]
c_src/libbcachefs/seqmutex.h [moved from libbcachefs/seqmutex.h with 100% similarity]
c_src/libbcachefs/siphash.c [moved from libbcachefs/siphash.c with 100% similarity]
c_src/libbcachefs/siphash.h [moved from libbcachefs/siphash.h with 100% similarity]
c_src/libbcachefs/six.c [moved from libbcachefs/six.c with 100% similarity]
c_src/libbcachefs/six.h [moved from libbcachefs/six.h with 100% similarity]
c_src/libbcachefs/snapshot.c [moved from libbcachefs/snapshot.c with 100% similarity]
c_src/libbcachefs/snapshot.h [moved from libbcachefs/snapshot.h with 100% similarity]
c_src/libbcachefs/str_hash.h [moved from libbcachefs/str_hash.h with 100% similarity]
c_src/libbcachefs/subvolume.c [moved from libbcachefs/subvolume.c with 100% similarity]
c_src/libbcachefs/subvolume.h [moved from libbcachefs/subvolume.h with 100% similarity]
c_src/libbcachefs/subvolume_types.h [moved from libbcachefs/subvolume_types.h with 100% similarity]
c_src/libbcachefs/super-io.c [moved from libbcachefs/super-io.c with 100% similarity]
c_src/libbcachefs/super-io.h [moved from libbcachefs/super-io.h with 100% similarity]
c_src/libbcachefs/super.c [moved from libbcachefs/super.c with 100% similarity]
c_src/libbcachefs/super.h [moved from libbcachefs/super.h with 100% similarity]
c_src/libbcachefs/super_types.h [moved from libbcachefs/super_types.h with 100% similarity]
c_src/libbcachefs/sysfs.c [moved from libbcachefs/sysfs.c with 100% similarity]
c_src/libbcachefs/sysfs.h [moved from libbcachefs/sysfs.h with 100% similarity]
c_src/libbcachefs/tests.c [moved from libbcachefs/tests.c with 100% similarity]
c_src/libbcachefs/tests.h [moved from libbcachefs/tests.h with 100% similarity]
c_src/libbcachefs/thread_with_file.c [moved from libbcachefs/thread_with_file.c with 100% similarity]
c_src/libbcachefs/thread_with_file.h [moved from libbcachefs/thread_with_file.h with 100% similarity]
c_src/libbcachefs/thread_with_file_types.h [moved from libbcachefs/thread_with_file_types.h with 100% similarity]
c_src/libbcachefs/trace.c [moved from libbcachefs/trace.c with 100% similarity]
c_src/libbcachefs/trace.h [moved from libbcachefs/trace.h with 100% similarity]
c_src/libbcachefs/two_state_shared_lock.c [moved from libbcachefs/two_state_shared_lock.c with 100% similarity]
c_src/libbcachefs/two_state_shared_lock.h [moved from libbcachefs/two_state_shared_lock.h with 100% similarity]
c_src/libbcachefs/util.c [moved from libbcachefs/util.c with 100% similarity]
c_src/libbcachefs/util.h [moved from libbcachefs/util.h with 100% similarity]
c_src/libbcachefs/varint.c [moved from libbcachefs/varint.c with 100% similarity]
c_src/libbcachefs/varint.h [moved from libbcachefs/varint.h with 100% similarity]
c_src/libbcachefs/vstructs.h [moved from libbcachefs/vstructs.h with 100% similarity]
c_src/libbcachefs/xattr.c [moved from libbcachefs/xattr.c with 100% similarity]
c_src/libbcachefs/xattr.h [moved from libbcachefs/xattr.h with 100% similarity]
c_src/linux/atomic64.c [moved from linux/atomic64.c with 100% similarity]
c_src/linux/bio.c [moved from linux/bio.c with 100% similarity]
c_src/linux/blkdev.c [moved from linux/blkdev.c with 100% similarity]
c_src/linux/closure.c [moved from linux/closure.c with 100% similarity]
c_src/linux/crc64.c [moved from linux/crc64.c with 100% similarity]
c_src/linux/crc64table.h [moved from linux/crc64table.h with 100% similarity]
c_src/linux/crypto/api.c [moved from linux/crypto/api.c with 100% similarity]
c_src/linux/crypto/chacha20_generic.c [moved from linux/crypto/chacha20_generic.c with 100% similarity]
c_src/linux/crypto/poly1305_generic.c [moved from linux/crypto/poly1305_generic.c with 100% similarity]
c_src/linux/crypto/sha256_generic.c [moved from linux/crypto/sha256_generic.c with 100% similarity]
c_src/linux/fs.c [moved from linux/fs.c with 100% similarity]
c_src/linux/generic-radix-tree.c [moved from linux/generic-radix-tree.c with 100% similarity]
c_src/linux/int_sqrt.c [moved from linux/int_sqrt.c with 100% similarity]
c_src/linux/kstrtox.c [moved from linux/kstrtox.c with 100% similarity]
c_src/linux/kstrtox.h [moved from linux/kstrtox.h with 100% similarity]
c_src/linux/kthread.c [moved from linux/kthread.c with 100% similarity]
c_src/linux/llist.c [moved from linux/llist.c with 100% similarity]
c_src/linux/mempool.c [moved from linux/mempool.c with 100% similarity]
c_src/linux/preempt.c [moved from linux/preempt.c with 100% similarity]
c_src/linux/ratelimit.c [moved from linux/ratelimit.c with 100% similarity]
c_src/linux/rhashtable.c [moved from linux/rhashtable.c with 100% similarity]
c_src/linux/sched.c [moved from linux/sched.c with 100% similarity]
c_src/linux/semaphore.c [moved from linux/semaphore.c with 100% similarity]
c_src/linux/seq_buf.c [moved from linux/seq_buf.c with 100% similarity]
c_src/linux/shrinker.c [moved from linux/shrinker.c with 100% similarity]
c_src/linux/siphash.c [moved from linux/siphash.c with 100% similarity]
c_src/linux/string.c [moved from linux/string.c with 100% similarity]
c_src/linux/string_helpers.c [moved from linux/string_helpers.c with 100% similarity]
c_src/linux/timer.c [moved from linux/timer.c with 100% similarity]
c_src/linux/wait.c [moved from linux/wait.c with 100% similarity]
c_src/linux/workqueue.c [moved from linux/workqueue.c with 100% similarity]
c_src/linux/xxhash.c [moved from linux/xxhash.c with 100% similarity]
c_src/linux/zstd_compress_module.c [moved from linux/zstd_compress_module.c with 100% similarity]
c_src/linux/zstd_decompress_module.c [moved from linux/zstd_decompress_module.c with 100% similarity]
c_src/qcow2.c [moved from qcow2.c with 100% similarity]
c_src/qcow2.h [moved from qcow2.h with 100% similarity]
c_src/raid/COPYING [moved from raid/COPYING with 100% similarity]
c_src/raid/check.c [moved from raid/check.c with 100% similarity]
c_src/raid/combo.h [moved from raid/combo.h with 100% similarity]
c_src/raid/cpu.h [moved from raid/cpu.h with 100% similarity]
c_src/raid/gf.h [moved from raid/gf.h with 100% similarity]
c_src/raid/helper.c [moved from raid/helper.c with 100% similarity]
c_src/raid/helper.h [moved from raid/helper.h with 100% similarity]
c_src/raid/int.c [moved from raid/int.c with 100% similarity]
c_src/raid/internal.h [moved from raid/internal.h with 100% similarity]
c_src/raid/intz.c [moved from raid/intz.c with 100% similarity]
c_src/raid/memory.c [moved from raid/memory.c with 100% similarity]
c_src/raid/memory.h [moved from raid/memory.h with 100% similarity]
c_src/raid/module.c [moved from raid/module.c with 100% similarity]
c_src/raid/raid.c [moved from raid/raid.c with 100% similarity]
c_src/raid/raid.h [moved from raid/raid.h with 100% similarity]
c_src/raid/tables.c [moved from raid/tables.c with 100% similarity]
c_src/raid/tag.c [moved from raid/tag.c with 100% similarity]
c_src/raid/test.c [moved from raid/test.c with 100% similarity]
c_src/raid/test.h [moved from raid/test.h with 100% similarity]
c_src/raid/x86.c [moved from raid/x86.c with 100% similarity]
c_src/raid/x86z.c [moved from raid/x86z.c with 100% similarity]
c_src/tools-util.c [moved from tools-util.c with 100% similarity]
c_src/tools-util.h [moved from tools-util.h with 100% similarity]
make-release-tarball.sh
rust-src/.gitignore [deleted file]
rust-src/README.md [deleted file]
rust-src/bch_bindgen/src/libbcachefs_wrapper.h [deleted file]
rustfmt.toml [moved from rust-src/rustfmt.toml with 100% similarity]
src/bcachefs.rs [moved from rust-src/src/bcachefs.rs with 100% similarity]
src/commands/cmd_completions.rs [moved from rust-src/src/commands/cmd_completions.rs with 100% similarity]
src/commands/cmd_list.rs [moved from rust-src/src/commands/cmd_list.rs with 100% similarity]
src/commands/cmd_mount.rs [moved from rust-src/src/commands/cmd_mount.rs with 100% similarity]
src/commands/logger.rs [moved from rust-src/src/commands/logger.rs with 100% similarity]
src/commands/mod.rs [moved from rust-src/src/commands/mod.rs with 100% similarity]
src/key.rs [moved from rust-src/src/key.rs with 100% similarity]
tests/util.py

index 08a682742bd7ddd558462a1d4d7c60284d4365ba..0d134b5e3d0c19116c961befa77e0482e9bf6dbf 100644 (file)
@@ -78,7 +78,7 @@ jobs:
               uuid-dev zlib1g-dev valgrind libudev-dev python3-docutils libclang-dev
       - name: Extract MSRV
         run: |
-          MSRV=$(cargo metadata --format-version 1 --no-deps --manifest-path rust-src/Cargo.toml |
+          MSRV=$(cargo metadata --format-version 1 --no-deps |
                   jq -r '.packages[] | select(.name == "bcachefs-tools") | .rust_version')
           echo "MSRV=$MSRV" >> $GITHUB_ENV
       - name: Install Rust ${{ env.MSRV }} toolchain
index efd7dc7c3dc14a339bcdd763e2aa6ddf60eb8fd7..cf86eab0dc9c187fb6f46f0e0ea6ca47e4743aa5 100644 (file)
@@ -20,3 +20,13 @@ tests/__pycache__/
 !.editorconfig
 
 bcachefs-principles-of-operation.*
+
+# will have compiled files and executables
+debug/
+target/
+
+# These are backup files generated by rustfmt
+**/*.rs.bk
+
+# MSVC Windows builds of rustc generate these, which store debugging information
+*.pdb
similarity index 100%
rename from rust-src/Cargo.lock
rename to Cargo.lock
similarity index 100%
rename from rust-src/Cargo.toml
rename to Cargo.toml
index d283c7b42d1fc0044485c34321d3e929c6d2137f..4b4762ae17c55d58dcd986378c816675d3d23e5c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -30,7 +30,7 @@ CFLAGS+=-std=gnu11 -O2 -g -MMD -Wall -fPIC                    \
        -Wno-deprecated-declarations                            \
        -fno-strict-aliasing                                    \
        -fno-delete-null-pointer-checks                         \
-       -I. -Iinclude -Iraid                                    \
+       -Ic_src -Ic_src/include                                 \
        -D_FILE_OFFSET_BITS=64                                  \
        -D_GNU_SOURCE                                           \
        -D_LGPL_SOURCE                                          \
@@ -55,12 +55,11 @@ CARGO_ARGS=${CARGO_TOOLCHAIN}
 CARGO=cargo $(CARGO_ARGS)
 CARGO_PROFILE=release
 # CARGO_PROFILE=debug
-CARGO_MANIFEST=--manifest-path rust-src/Cargo.toml
 
 CARGO_BUILD_ARGS=--$(CARGO_PROFILE)
-CARGO_BUILD=$(CARGO) build $(CARGO_BUILD_ARGS) $(CARGO_MANIFEST)
+CARGO_BUILD=$(CARGO) build $(CARGO_BUILD_ARGS)
 
-CARGO_CLEAN=$(CARGO) clean $(CARGO_CLEAN_ARGS) $(CARGO_MANIFEST)
+CARGO_CLEAN=$(CARGO) clean $(CARGO_CLEAN_ARGS)
 
 include Makefile.compiler
 
@@ -172,13 +171,13 @@ OBJS:=$(SRCS:.c=.o)
        @echo "    [CC]     $@"
        $(Q)$(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@ $<
 
-BCACHEFS_DEPS=libbcachefs.a
-RUST_SRCS:=$(shell find rust-src/src rust-src/bch_bindgen/src -type f -iname '*.rs')
+BCACHEFS_DEPS=c_src/libbcachefs.a
+RUST_SRCS:=$(shell find src bch_bindgen/src -type f -iname '*.rs')
 
 bcachefs: $(BCACHEFS_DEPS) $(RUST_SRCS)
-       $(CARGO_BUILD)
+       $(Q)$(CARGO_BUILD)
 
-libbcachefs.a: $(filter-out ./tests/%.o, $(OBJS))
+c_src/libbcachefs.a: $(filter-out ./tests/%.o, $(OBJS))
        @echo "    [AR]     $@"
        $(Q)ar -rc $@ $+
 
@@ -201,7 +200,7 @@ cmd_version.o : .version
 install: INITRAMFS_HOOK=$(INITRAMFS_DIR)/hooks/bcachefs
 install: INITRAMFS_SCRIPT=$(INITRAMFS_DIR)/scripts/local-premount/bcachefs
 install: bcachefs $(optional_install)
-       $(INSTALL) -m0755 -D rust-src/target/release/bcachefs -t $(DESTDIR)$(ROOT_SBINDIR)
+       $(INSTALL) -m0755 -D target/release/bcachefs -t $(DESTDIR)$(ROOT_SBINDIR)
        $(INSTALL) -m0644 -D bcachefs.8    -t $(DESTDIR)$(PREFIX)/share/man/man8/
        $(INSTALL) -m0755 -D initramfs/script $(DESTDIR)$(INITRAMFS_SCRIPT)
        $(INSTALL) -m0755 -D initramfs/hook   $(DESTDIR)$(INITRAMFS_HOOK)
@@ -224,7 +223,7 @@ install_systemd: $(systemd_services) $(systemd_libexecfiles)
 .PHONY: clean
 clean:
        @echo "Cleaning all"
-       $(Q)$(RM) libbcachefs.a tests/test_helper .version *.tar.xz $(OBJS) $(DEPS) $(DOCGENERATED)
+       $(Q)$(RM) c_src/libbcachefs.a tests/test_helper .version *.tar.xz $(OBJS) $(DEPS) $(DOCGENERATED)
        $(Q)$(CARGO_CLEAN)
        $(Q)$(RM) -f $(built_scripts)
 
@@ -244,8 +243,8 @@ doc: bcachefs-principles-of-operation.pdf
 
 .PHONY: cargo-update-msrv
 cargo-update-msrv:
-       cargo +nightly generate-lockfile --manifest-path rust-src/Cargo.toml -Zmsrv-policy
-       cargo +nightly generate-lockfile --manifest-path rust-src/bch_bindgen/Cargo.toml -Zmsrv-policy
+       cargo +nightly generate-lockfile -Zmsrv-policy
+       cargo +nightly generate-lockfile --manifest-path bch_bindgen/Cargo.toml -Zmsrv-policy
 
 .PHONY: update-bcachefs-sources
 update-bcachefs-sources:
similarity index 96%
rename from rust-src/bch_bindgen/build.rs
rename to bch_bindgen/build.rs
index d9805a8d72310ac7ca8ba7cfc81d73307d6bc233..facea217be40bbacf6241b29c2f65de3a47cfbf4 100644 (file)
@@ -19,9 +19,8 @@ fn main() {
         .expect("ENV Var 'CARGO_MANIFEST_DIR' Expected")
         .into();
 
-    let libbcachefs_inc_dir = std::path::Path::new("../..");
+    let libbcachefs_inc_dir = std::path::Path::new("../c_src");
 
-    let _libbcachefs_dir = top_dir.join("libbcachefs").join("libbcachefs");
     let bindings = bindgen::builder()
         .header(
             top_dir
diff --git a/bch_bindgen/src/libbcachefs_wrapper.h b/bch_bindgen/src/libbcachefs_wrapper.h
new file mode 100644 (file)
index 0000000..141b083
--- /dev/null
@@ -0,0 +1,22 @@
+#include "libbcachefs/super-io.h"
+#include "libbcachefs/checksum.h"
+#include "libbcachefs/bcachefs_format.h"
+#include "libbcachefs/btree_cache.h"
+#include "libbcachefs/btree_iter.h"
+#include "libbcachefs/debug.h"
+#include "libbcachefs/errcode.h"
+#include "libbcachefs/error.h"
+#include "libbcachefs/opts.h"
+#include "libbcachefs.h"
+#include "crypto.h"
+#include "include/linux/bio.h"
+#include "include/linux/blkdev.h"
+#include "cmds.h"
+#include "raid/raid.h"
+
+
+#define MARK_FIX_753(req_name) const blk_mode_t Fix753_##req_name = req_name;
+
+MARK_FIX_753(BLK_OPEN_READ);
+MARK_FIX_753(BLK_OPEN_WRITE);
+MARK_FIX_753(BLK_OPEN_EXCL);
index 831c7e9f1e4d2f9db6818d272888f6589b384721..a37a6c6ee774f4872989b01672dc33c47ccdef6b 100644 (file)
--- a/build.nix
+++ b/build.nix
@@ -35,12 +35,12 @@ in stdenv.mkDerivation {
 
   BCACHEFS_FUSE = if fuseSupport then "1" else "";
 
-  cargoRoot = "rust-src";
+  cargoRoot = ".";
   # when git-based crates are updated, run:
   # nix run github:Mic92/nix-update -- --version=skip --flake default
   # to update the hashes
   cargoDeps = rustPlatform.importCargoLock {
-    lockFile = "${src}/rust-src/Cargo.lock";
+    lockFile = "${src}/Cargo.lock";
     outputHashes = {
       "bindgen-0.64.0" = "sha256-GNG8as33HLRYJGYe0nw6qBzq86aHiGonyynEM7gaEE4=";
     };
similarity index 86%
rename from rust-src/build.rs
rename to build.rs
index e4662bd7f60b9c172e1221a2889cee99fc26d19d..3364c6ab3d660067a72f293a832940be052549f9 100644 (file)
+++ b/build.rs
@@ -1,6 +1,6 @@
 fn main() {
-    println!("cargo:rustc-link-search=..");
-    println!("cargo:rerun-if-changed=../libbcachefs.a");
+    println!("cargo:rustc-link-search=c_src");
+    println!("cargo:rerun-if-changed=c_src/libbcachefs.a");
     println!("cargo:rustc-link-lib=static:+whole-archive=bcachefs");
 
     println!("cargo:rustc-link-lib=urcu");
similarity index 100%
rename from bcachefs.c
rename to c_src/bcachefs.c
similarity index 100%
rename from cmd_assemble.c
rename to c_src/cmd_assemble.c
similarity index 100%
rename from cmd_attr.c
rename to c_src/cmd_attr.c
similarity index 100%
rename from cmd_counters.c
rename to c_src/cmd_counters.c
similarity index 100%
rename from cmd_data.c
rename to c_src/cmd_data.c
similarity index 100%
rename from cmd_device.c
rename to c_src/cmd_device.c
similarity index 100%
rename from cmd_dump.c
rename to c_src/cmd_dump.c
similarity index 100%
rename from cmd_format.c
rename to c_src/cmd_format.c
similarity index 100%
rename from cmd_fs.c
rename to c_src/cmd_fs.c
similarity index 100%
rename from cmd_fsck.c
rename to c_src/cmd_fsck.c
similarity index 100%
rename from cmd_fusemount.c
rename to c_src/cmd_fusemount.c
similarity index 100%
rename from cmd_key.c
rename to c_src/cmd_key.c
similarity index 100%
rename from cmd_list_journal.c
rename to c_src/cmd_list_journal.c
similarity index 100%
rename from cmd_migrate.c
rename to c_src/cmd_migrate.c
similarity index 100%
rename from cmd_option.c
rename to c_src/cmd_option.c
similarity index 100%
rename from cmd_run.c
rename to c_src/cmd_run.c
similarity index 100%
rename from cmd_subvolume.c
rename to c_src/cmd_subvolume.c
similarity index 100%
rename from cmd_version.c
rename to c_src/cmd_version.c
similarity index 100%
rename from cmds.h
rename to c_src/cmds.h
similarity index 100%
rename from config.h
rename to c_src/config.h
similarity index 100%
rename from crypto.c
rename to c_src/crypto.c
similarity index 100%
rename from crypto.h
rename to c_src/crypto.h
similarity index 100%
rename from include/asm/page.h
rename to c_src/include/asm/page.h
similarity index 100%
rename from include/linux/mm.h
rename to c_src/include/linux/mm.h
similarity index 100%
rename from libbcachefs.c
rename to c_src/libbcachefs.c
similarity index 100%
rename from libbcachefs.h
rename to c_src/libbcachefs.h
similarity index 100%
rename from libbcachefs/acl.c
rename to c_src/libbcachefs/acl.c
similarity index 100%
rename from libbcachefs/acl.h
rename to c_src/libbcachefs/acl.h
similarity index 100%
rename from libbcachefs/bkey.c
rename to c_src/libbcachefs/bkey.c
similarity index 100%
rename from libbcachefs/bkey.h
rename to c_src/libbcachefs/bkey.h
similarity index 100%
rename from libbcachefs/bset.c
rename to c_src/libbcachefs/bset.c
similarity index 100%
rename from libbcachefs/bset.h
rename to c_src/libbcachefs/bset.h
similarity index 100%
rename from libbcachefs/ec.c
rename to c_src/libbcachefs/ec.c
similarity index 100%
rename from libbcachefs/ec.h
rename to c_src/libbcachefs/ec.h
similarity index 100%
rename from libbcachefs/fifo.h
rename to c_src/libbcachefs/fifo.h
similarity index 100%
rename from libbcachefs/fs.c
rename to c_src/libbcachefs/fs.c
similarity index 100%
rename from libbcachefs/fs.h
rename to c_src/libbcachefs/fs.h
similarity index 100%
rename from libbcachefs/fsck.c
rename to c_src/libbcachefs/fsck.c
similarity index 100%
rename from libbcachefs/fsck.h
rename to c_src/libbcachefs/fsck.h
similarity index 100%
rename from libbcachefs/lru.c
rename to c_src/libbcachefs/lru.c
similarity index 100%
rename from libbcachefs/lru.h
rename to c_src/libbcachefs/lru.h
similarity index 100%
rename from libbcachefs/move.c
rename to c_src/libbcachefs/move.c
similarity index 100%
rename from libbcachefs/move.h
rename to c_src/libbcachefs/move.h
similarity index 100%
rename from libbcachefs/opts.c
rename to c_src/libbcachefs/opts.c
similarity index 100%
rename from libbcachefs/opts.h
rename to c_src/libbcachefs/opts.h
similarity index 100%
rename from libbcachefs/six.c
rename to c_src/libbcachefs/six.c
similarity index 100%
rename from libbcachefs/six.h
rename to c_src/libbcachefs/six.h
similarity index 100%
rename from libbcachefs/util.c
rename to c_src/libbcachefs/util.c
similarity index 100%
rename from libbcachefs/util.h
rename to c_src/libbcachefs/util.h
similarity index 100%
rename from linux/atomic64.c
rename to c_src/linux/atomic64.c
similarity index 100%
rename from linux/bio.c
rename to c_src/linux/bio.c
similarity index 100%
rename from linux/blkdev.c
rename to c_src/linux/blkdev.c
similarity index 100%
rename from linux/closure.c
rename to c_src/linux/closure.c
similarity index 100%
rename from linux/crc64.c
rename to c_src/linux/crc64.c
similarity index 100%
rename from linux/crc64table.h
rename to c_src/linux/crc64table.h
similarity index 100%
rename from linux/crypto/api.c
rename to c_src/linux/crypto/api.c
similarity index 100%
rename from linux/fs.c
rename to c_src/linux/fs.c
similarity index 100%
rename from linux/int_sqrt.c
rename to c_src/linux/int_sqrt.c
similarity index 100%
rename from linux/kstrtox.c
rename to c_src/linux/kstrtox.c
similarity index 100%
rename from linux/kstrtox.h
rename to c_src/linux/kstrtox.h
similarity index 100%
rename from linux/kthread.c
rename to c_src/linux/kthread.c
similarity index 100%
rename from linux/llist.c
rename to c_src/linux/llist.c
similarity index 100%
rename from linux/mempool.c
rename to c_src/linux/mempool.c
similarity index 100%
rename from linux/preempt.c
rename to c_src/linux/preempt.c
similarity index 100%
rename from linux/ratelimit.c
rename to c_src/linux/ratelimit.c
similarity index 100%
rename from linux/rhashtable.c
rename to c_src/linux/rhashtable.c
similarity index 100%
rename from linux/sched.c
rename to c_src/linux/sched.c
similarity index 100%
rename from linux/semaphore.c
rename to c_src/linux/semaphore.c
similarity index 100%
rename from linux/seq_buf.c
rename to c_src/linux/seq_buf.c
similarity index 100%
rename from linux/shrinker.c
rename to c_src/linux/shrinker.c
similarity index 100%
rename from linux/siphash.c
rename to c_src/linux/siphash.c
similarity index 100%
rename from linux/string.c
rename to c_src/linux/string.c
similarity index 100%
rename from linux/timer.c
rename to c_src/linux/timer.c
similarity index 100%
rename from linux/wait.c
rename to c_src/linux/wait.c
similarity index 100%
rename from linux/workqueue.c
rename to c_src/linux/workqueue.c
similarity index 100%
rename from linux/xxhash.c
rename to c_src/linux/xxhash.c
similarity index 100%
rename from qcow2.c
rename to c_src/qcow2.c
similarity index 100%
rename from qcow2.h
rename to c_src/qcow2.h
similarity index 100%
rename from raid/COPYING
rename to c_src/raid/COPYING
similarity index 100%
rename from raid/check.c
rename to c_src/raid/check.c
similarity index 100%
rename from raid/combo.h
rename to c_src/raid/combo.h
similarity index 100%
rename from raid/cpu.h
rename to c_src/raid/cpu.h
similarity index 100%
rename from raid/gf.h
rename to c_src/raid/gf.h
similarity index 100%
rename from raid/helper.c
rename to c_src/raid/helper.c
similarity index 100%
rename from raid/helper.h
rename to c_src/raid/helper.h
similarity index 100%
rename from raid/int.c
rename to c_src/raid/int.c
similarity index 100%
rename from raid/internal.h
rename to c_src/raid/internal.h
similarity index 100%
rename from raid/intz.c
rename to c_src/raid/intz.c
similarity index 100%
rename from raid/memory.c
rename to c_src/raid/memory.c
similarity index 100%
rename from raid/memory.h
rename to c_src/raid/memory.h
similarity index 100%
rename from raid/module.c
rename to c_src/raid/module.c
similarity index 100%
rename from raid/raid.c
rename to c_src/raid/raid.c
similarity index 100%
rename from raid/raid.h
rename to c_src/raid/raid.h
similarity index 100%
rename from raid/tables.c
rename to c_src/raid/tables.c
similarity index 100%
rename from raid/tag.c
rename to c_src/raid/tag.c
similarity index 100%
rename from raid/test.c
rename to c_src/raid/test.c
similarity index 100%
rename from raid/test.h
rename to c_src/raid/test.h
similarity index 100%
rename from raid/x86.c
rename to c_src/raid/x86.c
similarity index 100%
rename from raid/x86z.c
rename to c_src/raid/x86z.c
similarity index 100%
rename from tools-util.c
rename to c_src/tools-util.c
similarity index 100%
rename from tools-util.h
rename to c_src/tools-util.h
index 32e4772c7012af2e18dab0ddc3329aab2e424d35..c468da77bc7d9acb2076c8cf9eca31ef5f81fe53 100755 (executable)
@@ -7,7 +7,7 @@ version=$1
 git checkout v$version
 git clean -xfd
 
-(cd rust-src; cargo license) > COPYING.rust-dependencies
+cargo license > COPYING.rust-dependencies
 
 git ls-files|
     tar --create --file bcachefs-tools-$version.tar -T -       \
@@ -28,7 +28,7 @@ scp bcachefs-tools-$version.tar.zst   evilpiepirate.org:/var/www/htdocs/bcachefs-t
 scp bcachefs-tools-$version.tar.asc    evilpiepirate.org:/var/www/htdocs/bcachefs-tools/
 scp bcachefs-tools-$version.tar.sign   evilpiepirate.org:/var/www/htdocs/bcachefs-tools/
 
-cargo vendor --manifest-path rust-src/Cargo.toml
+cargo vendor
 
 mkdir .cargo
 cat > .cargo/config.toml <<-ZZ
diff --git a/rust-src/.gitignore b/rust-src/.gitignore
deleted file mode 100644 (file)
index 644cd42..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-# Generated by Cargo
-# will have compiled files and executables
-debug/
-target/
-
-# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
-# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
-# Needed by nix
-# Cargo.lock
-
-# These are backup files generated by rustfmt
-**/*.rs.bk
-
-# MSVC Windows builds of rustc generate these, which store debugging information
-*.pdb
diff --git a/rust-src/README.md b/rust-src/README.md
deleted file mode 100644 (file)
index e4700f6..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-Usage
-=====
-
-```
-bcachefs-mount 0.1.0
-Mount a bcachefs filesystem by its UUID
-
-USAGE:
-    bcachefs-mount [OPTIONS] <uuid> <mountpoint>
-
-FLAGS:
-    -h, --help       
-            Prints help information
-
-    -V, --version    
-            Prints version information
-
-
-OPTIONS:
-    -o <options>                 
-            Mount options [default: ]
-
-    -p, --password <password>    
-            Where the password would be loaded from.
-            
-            Possible values are: "fail" - don't ask for password, fail if filesystem is encrypted; "wait" - wait for
-            password to become available before mounting; "ask" -  prompt the user for password; [default: fail]
-
-ARGS:
-    <uuid>          
-            External UUID of the bcachefs filesystem
-
-    <mountpoint>    
-            Where the filesystem should be mounted
-```
-
-Caveats
-=======
-
-* `--password ask` is not yet implemented, but you can use `--password wait`, and load the key with `bcachefs unlock`.
-
-Build
-=====
-
-```sh
-$ git submodule update --init --recursive
-$ cargo build --release
-```
-
-Binary will be built in `target/release/bcachefs-mount`
-
-Dependencies:
-
-* rust
-* blkid
-* uuid
-* liburcu
-* libsodium
-* zlib
-* liblz4
-* libzstd
-* libkeyutils
diff --git a/rust-src/bch_bindgen/src/libbcachefs_wrapper.h b/rust-src/bch_bindgen/src/libbcachefs_wrapper.h
deleted file mode 100644 (file)
index 5fb4261..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-#include "../libbcachefs/super-io.h"
-#include "../libbcachefs/checksum.h"
-#include "../libbcachefs/bcachefs_format.h"
-#include "../libbcachefs/btree_cache.h"
-#include "../libbcachefs/btree_iter.h"
-#include "../libbcachefs/debug.h"
-#include "../libbcachefs/errcode.h"
-#include "../libbcachefs/error.h"
-#include "../libbcachefs/opts.h"
-#include "../libbcachefs.h"
-#include "../crypto.h"
-#include "../include/linux/bio.h"
-#include "../include/linux/blkdev.h"
-#include "../cmds.h"
-#include "../raid/raid.h"
-
-
-#define MARK_FIX_753(req_name) const blk_mode_t Fix753_##req_name = req_name;
-
-MARK_FIX_753(BLK_OPEN_READ);
-MARK_FIX_753(BLK_OPEN_WRITE);
-MARK_FIX_753(BLK_OPEN_EXCL);
similarity index 100%
rename from rust-src/rustfmt.toml
rename to rustfmt.toml
similarity index 100%
rename from rust-src/src/bcachefs.rs
rename to src/bcachefs.rs
similarity index 100%
rename from rust-src/src/key.rs
rename to src/key.rs
index 3ec38b2977697feef15a33aafef7c4b52b6879a3..68fe9e950672a4824e3f3aba981578380a4e2dd8 100644 (file)
@@ -11,7 +11,7 @@ import time
 from pathlib import Path
 
 BASE_PATH= os.path.dirname(__file__)
-BCH_PATH = os.path.abspath(os.path.join(BASE_PATH, '../rust-src/target/release', 'bcachefs'))
+BCH_PATH = os.path.abspath(os.path.join(BASE_PATH, '../target/release', 'bcachefs'))
 VALGRIND_PATH= os.path.abspath(os.path.join(BASE_PATH,
     'valgrind-suppressions.txt'))