Repository navigation
v1.0
New Features
- Initial Implementation of MakeRW Utility:
- Implemented main functionality to make a directory writable by copying it to a writable location and binding it to the original location.
- Added command-line options:
-t DIRto specify a writable directory instead of the default/tmp.-uto unmount the directory.-vfor verbose output.
- Included help message with usage instructions.
- Checked if the directory exists and handled errors appropriately.
- Implemented unmount functionality with verbose output.
- Verified if the directory is already mounted to prevent redundant operations.
- Created a new folder in the specified writable directory and copied the original directory to it.
- Bound the new folder to the original directory and provided verbose output on success.
- Added README.md with project description, features, usage instructions, examples, dependencies, build instructions, and license information.
- Licensed the project under the GNU GPLv3 License.
Fixes
-
Handle Return Values of realpath and system Functions:
- Checked the return value of
realpathto ensure the path is resolved correctly. - Checked the return value of
systemto ensure the copy command executes successfully. - Added error handling and appropriate messages for these checks to prevent warnings and potential runtime errors.
- Checked the return value of
-
Use Cross-Compiler strip Command in Makefile:
- Added
STRIPvariable to use the cross-compiler strip command. - Updated
makerwtarget to use theSTRIPvariable instead of the default strip command.
- Added
Continuous Integration
- Add GitHub Actions Workflow for Building and Releasing Artifacts:
- Added a GitHub Actions workflow to build MakeRW for multiple architectures (x86_64, armhf, aarch64) and static/dynamic linking.
- Set up cross-compilation environment for different architectures.
- Uploaded build artifacts for each configuration.
- Added a release job to create a GitHub release and upload all artifacts when committing to the master branch.