-
Notifications
You must be signed in to change notification settings - Fork 100
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
79 changed files
with
5,869 additions
and
8,546 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,5 @@ | ||
*.[oad] | ||
*.lo | ||
*.so | ||
*.tar.gz | ||
src/hints.js.h | ||
src/config.h | ||
src/vimb | ||
src/libvimb.so | ||
tests/* | ||
!tests/Makefile | ||
!tests/*.c | ||
!tests/manual/ | ||
sandbox |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
# Contribute | ||
|
||
This document contains guidelines for contributing to vimb, as well as useful | ||
hints when doing so. | ||
|
||
## Communication | ||
|
||
If you wan't to discuss some feature or provide some suggestion that can't be | ||
done very well with the github issues. You should use the [mailing list][mail] | ||
for this purpose. Else it's a good decision to use the features provided by | ||
github for that. | ||
|
||
## Patching and Coding style | ||
|
||
### File Layout | ||
|
||
- Comment with LICENSE and possibly short explanation of file/tool | ||
- Headers | ||
- Macros | ||
- Types | ||
- Function declarations | ||
- Include variable names | ||
- For short files these can be left out | ||
- Group/order in logical manner | ||
- Global variables | ||
- Function definitions in same order as declarations | ||
- main | ||
|
||
### C Features | ||
|
||
- Do not mix declarations and code | ||
- Do not use for loop initial declarations | ||
- Use `/* */` for comments, not `//` | ||
|
||
### Headers | ||
|
||
- Place system/libc headers first in alphabetical order | ||
- If headers must be included in a specific order comment to explain | ||
- Place local headers after an empty line | ||
|
||
### Variables | ||
|
||
- Global variables not used outside translation unit should be declared static | ||
- In declaration of pointers the `*` is adjacent to variable name, not type | ||
|
||
### Indentation | ||
|
||
- the code is indented by 4 spaces - if you use vim to code you can set | ||
`:set expandtab ts=4 sts=4 sw=4` | ||
- it's a good advice to orientate on the already available code | ||
- if you are using `indent`, following options describe best the code style | ||
- `--k-and-r-style` | ||
- `--case-indentation4` | ||
- `--dont-break-function-decl-args` | ||
- `--dont-break-procedure-type` | ||
- `--dont-line-up-parentheses` | ||
- `--no-tabs` | ||
|
||
## directories | ||
|
||
├── doc documentation like manual page | ||
└── src all sources to build vimb | ||
├── scripts JavaScripts that are compiled in for various purposes | ||
└── webextension Source files for the webextension | ||
|
||
## compile and run | ||
|
||
To inform vimb during compile time where the webextension should be loaded | ||
from, the `RUNPREFIX` option can be set to a full qualified path to the | ||
directory where the extension should be stored in. | ||
|
||
To run vimb without installation you could run as a sandbox like this | ||
|
||
make runsandbox | ||
|
||
This will compile and install vimb into the local _sandbox_ folder in the | ||
project directory. | ||
|
||
[mail]: https://lists.sourceforge.net/lists/listinfo/vimb-users "vimb - mailing list" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,52 +1,46 @@ | ||
include config.mk | ||
|
||
SRCDIR=src | ||
DOCDIR=doc | ||
all: $(SRCDIR).subdir-all | ||
|
||
all: $(TARGET) | ||
options: | ||
@echo "$(PROJECT) build options:" | ||
@echo "LIBS = $(LIBS)" | ||
@echo "CFLAGS = $(CFLAGS)" | ||
@echo "LDFLAGS = $(LDFLAGS)" | ||
@echo "CC = $(CC)" | ||
|
||
test: $(LIBTARGET) | ||
@$(MAKE) $(MFLAGS) -s -C tests | ||
|
||
clean: | ||
@$(MAKE) $(MFLAGS) -C src clean | ||
@$(MAKE) $(MFLAGS) -C tests clean | ||
|
||
install: $(TARGET) $(DOCDIR)/$(MAN1) | ||
install -d $(DESTDIR)$(BINDIR) | ||
install -m 755 $(SRCDIR)/$(TARGET) $(DESTDIR)$(BINDIR)/$(TARGET) | ||
install -d $(DESTDIR)$(DATADIR)/applications | ||
cp $(PROJECT).desktop $(DESTDIR)$(DATADIR)/applications | ||
install -d $(DESTDIR)$(EXAMPLEDIR) | ||
cp -r examples/* $(DESTDIR)$(EXAMPLEDIR) | ||
install -d $(DESTDIR)$(MANDIR)/man1 | ||
@echo "vimb build options:" | ||
@echo "LIBS = $(LIBS)" | ||
@echo "CFLAGS = $(CFLAGS)" | ||
@echo "LDFLAGS = $(LDFLAGS)" | ||
@echo "EXTCFLAGS = $(EXTCFLAGS)" | ||
@echo "CC = $(CC)" | ||
|
||
install: $(SRCDIR).subdir-all | ||
@# binary | ||
install -d $(BINPREFIX) | ||
install -m 755 $(SRCDIR)/vimb $(BINPREFIX)/vimb | ||
@# extension | ||
install -d $(LIBDIR) | ||
install -m 644 $(SRCDIR)/webextension/$(EXTTARGET) $(LIBDIR)/$(EXTTARGET) | ||
@# man page | ||
install -d $(MANPREFIX)/man1 | ||
@sed -e "s!VERSION!$(VERSION)!g" \ | ||
-e "s!PREFIX!$(PREFIX)!g" \ | ||
-e "s!DATE!`date +'%m %Y'`!g" $(DOCDIR)/$(MAN1) > $(DESTDIR)$(MANDIR)/man1/$(MAN1) | ||
-e "s!DATE!`date +'%m %Y'`!g" $(DOCDIR)/vimb.1 > $(MANPREFIX)/man1/vimb.1 | ||
@# .desktop file | ||
install -d $(DOTDESKTOPPREFIX) | ||
install -m 644 vimb.desktop $(DOTDESKTOPPREFIX)/vimb.desktop | ||
|
||
uninstall: | ||
$(RM) $(DESTDIR)$(BINDIR)/$(TARGET) | ||
$(RM) $(DESTDIR)$(DATADIR)/applications/$(PROJECT).desktop | ||
$(RM) $(DESTDIR)$(MANDIR)/man1/$(MAN1) | ||
$(RM) -r $(DESTDIR)$(EXAMPLEDIR) | ||
$(RM) $(BINPREFIX)/vimb $(DESTDIR)$(MANDIR)/man1/vimb.1 $(LIBDIR)/$(EXTTARGET) | ||
|
||
dist: dist-clean | ||
@echo "Creating tarball." | ||
@git archive --format tar -o $(DIST_FILE) HEAD | ||
clean: $(SRCDIR).subdir-clean | ||
|
||
dist-clean: | ||
$(RM) $(DIST_FILE) | ||
sandbox: | ||
$(Q)$(MAKE) RUNPREFIX=$(CURDIR)/sandbox/usr PREFIX=/usr DESTDIR=./sandbox install | ||
|
||
$(TARGET): | ||
@$(MAKE) $(MFLAGS) -C src $(TARGET) | ||
runsandbox: sandbox | ||
sandbox/usr/bin/vimb | ||
|
||
$(LIBTARGET): | ||
@$(MAKE) $(MFLAGS) -C src $(LIBTARGET) | ||
%.subdir-all: | ||
$(Q)$(MAKE) -C $* | ||
|
||
.PHONY: clean all install uninstall options dist dist-clean test | ||
%.subdir-clean: | ||
$(Q)$(MAKE) -C $* clean | ||
|
||
.PHONY: all options install uninstall clean sandbox runsandbox |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.