mirror of
https://github.com/transmission/transmission.git
synced 2025-12-20 02:18:42 +00:00
Add code style script and Dockerfile
This commit is contained in:
13
README.md
13
README.md
@@ -60,3 +60,16 @@ If you're new to building programs from source code, this is typically easier th
|
|||||||
$ cmake ..
|
$ cmake ..
|
||||||
$ make
|
$ make
|
||||||
$ sudo make install
|
$ sudo make install
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
### Code Style
|
||||||
|
|
||||||
|
You would want to setup your editor to make use of uncrustify.cfg and .jsbeautifyrc configuration files located in the root of this repository.
|
||||||
|
|
||||||
|
If for some reason you are unwilling or unable to do so, there is a shell script which you could run either directly or via docker-compose:
|
||||||
|
|
||||||
|
$ ./code_style.sh
|
||||||
|
or
|
||||||
|
$ docker-compose build --pull
|
||||||
|
$ docker-compose run --rm code_style
|
||||||
|
|||||||
78
code_style.sh
Executable file
78
code_style.sh
Executable file
@@ -0,0 +1,78 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
[ -z "${1:-}" ] || cd "$1"
|
||||||
|
|
||||||
|
echo '=================='
|
||||||
|
echo '=== uncrustify ==='
|
||||||
|
echo '=================='
|
||||||
|
echo ''
|
||||||
|
|
||||||
|
find \
|
||||||
|
cli \
|
||||||
|
daemon \
|
||||||
|
gtk \
|
||||||
|
libtransmission \
|
||||||
|
utils \
|
||||||
|
\( -name '*.c' -o -name '*.h' \) \
|
||||||
|
! \( -name 'ConvertUTF.*' -o -name 'jsonsl.*' -o -name 'wildmat.c' \) \
|
||||||
|
-print0 |
|
||||||
|
xargs \
|
||||||
|
-0 \
|
||||||
|
uncrustify \
|
||||||
|
--replace \
|
||||||
|
--no-backup \
|
||||||
|
-c uncrustify.cfg
|
||||||
|
|
||||||
|
find \
|
||||||
|
qt \
|
||||||
|
\( -name '*.cc' -o -name '*.h' \) \
|
||||||
|
-print0 |
|
||||||
|
xargs \
|
||||||
|
-0 \
|
||||||
|
uncrustify \
|
||||||
|
--replace \
|
||||||
|
--no-backup \
|
||||||
|
-l CPP \
|
||||||
|
-c uncrustify.cfg
|
||||||
|
|
||||||
|
echo ''
|
||||||
|
echo '================================================================='
|
||||||
|
echo '=== const placement (until uncrustify supports it, hopefully) ==='
|
||||||
|
echo '================================================================='
|
||||||
|
echo ''
|
||||||
|
|
||||||
|
find \
|
||||||
|
cli \
|
||||||
|
daemon \
|
||||||
|
gtk \
|
||||||
|
libtransmission \
|
||||||
|
qt \
|
||||||
|
utils \
|
||||||
|
\( -name '*.c' -o -name '*.cc' -o -name '*.h' \) \
|
||||||
|
! \( -name 'ConvertUTF.*' -o -name 'jsonsl.*' -o -name 'wildmat.c' \) \
|
||||||
|
-print0 |
|
||||||
|
xargs \
|
||||||
|
-0 \
|
||||||
|
-n1 \
|
||||||
|
perl \
|
||||||
|
-pi \
|
||||||
|
-e 'BEGIN { print STDOUT "Processing: ${ARGV[0]}\n" } s/((?:^|[(,;]|\bstatic\s+)\s*)\b(const)\b(?!\s+\w+\s*\[)/\1>\2</g'
|
||||||
|
|
||||||
|
echo ''
|
||||||
|
echo '==================='
|
||||||
|
echo '=== js-beautify ==='
|
||||||
|
echo '==================='
|
||||||
|
echo ''
|
||||||
|
|
||||||
|
find \
|
||||||
|
web \
|
||||||
|
! -path '*/jquery/*' \
|
||||||
|
-name '*.js' \
|
||||||
|
-print0 |
|
||||||
|
xargs \
|
||||||
|
-0 \
|
||||||
|
js-beautify \
|
||||||
|
--config .jsbeautifyrc \
|
||||||
|
--replace
|
||||||
9
docker-compose.yml
Normal file
9
docker-compose.yml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
code_style:
|
||||||
|
build: docker/code_style
|
||||||
|
volumes:
|
||||||
|
- .:/src
|
||||||
|
- ./code_style.sh:/code_style.sh:ro
|
||||||
|
command: ["/bin/sh", "/code_style.sh", "/src"]
|
||||||
8
docker/code_style/Dockerfile
Normal file
8
docker/code_style/Dockerfile
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
FROM alpine
|
||||||
|
|
||||||
|
RUN apk add --no-cache \
|
||||||
|
npm \
|
||||||
|
perl \
|
||||||
|
uncrustify \
|
||||||
|
&& npm install -g \
|
||||||
|
js-beautify
|
||||||
Reference in New Issue
Block a user