diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/make_native/Makefile.native | 49 | ||||
-rwxr-xr-x | scripts/test/mktest.sh | 32 |
2 files changed, 81 insertions, 0 deletions
diff --git a/scripts/make_native/Makefile.native b/scripts/make_native/Makefile.native new file mode 100644 index 0000000..b91a3e0 --- /dev/null +++ b/scripts/make_native/Makefile.native @@ -0,0 +1,49 @@ +VERSION = 1.3 + +PREFIX ?= /usr/local +MANPREFIX = $(PREFIX)/share/man + +CFLAGS += -O3 -march=native -Wall -Wextra -Wno-unused-parameter +LDLIBS = -lreadline + +ifeq ($(shell pkg-config ncursesw && echo 1),1) + CFLAGS += $(shell pkg-config --cflags ncursesw) + LDLIBS += $(shell pkg-config --libs ncursesw) +else + LDLIBS += -lncurses +endif + +DISTFILES = nlay nnn.c nnn.h nnn.1 Makefile README.md LICENSE +SRC = nnn.c +BIN = nnn +PLAYER = nlay + +all: $(BIN) $(PLAYER) + +$(SRC): nnn.h + +$(BIN): $(SRC) + $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(LDLIBS) + strip $@ + +install: all + mkdir -p $(DESTDIR)$(PREFIX)/bin + cp -f $(BIN) $(DESTDIR)$(PREFIX)/bin + cp -f $(PLAYER) $(DESTDIR)$(PREFIX)/bin + mkdir -p $(DESTDIR)$(MANPREFIX)/man1 + cp -f $(BIN).1 $(DESTDIR)$(MANPREFIX)/man1 + +uninstall: + rm -f $(DESTDIR)$(PREFIX)/bin/$(BIN) + rm -f $(DESTDIR)$(PREFIX)/bin/$(PLAYER) + rm -f $(DESTDIR)$(MANPREFIX)/man1/$(BIN).1 + +dist: + mkdir -p nnn-$(VERSION) + cp $(DISTFILES) nnn-$(VERSION) + tar -cf nnn-$(VERSION).tar nnn-$(VERSION) + gzip nnn-$(VERSION).tar + rm -rf nnn-$(VERSION) + +clean: + rm -f $(BIN) nnn-$(VERSION).tar.gz diff --git a/scripts/test/mktest.sh b/scripts/test/mktest.sh new file mode 100755 index 0000000..c808d38 --- /dev/null +++ b/scripts/test/mktest.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +# Create test files and directories + +test -e test && { + echo "Remove test and try again" + exit 1 +} + +mkdir test && cd test + +echo 'It works!' > normal.txt +echo 'Με δουλέβει;' > 'κοινό.txt' +ln -s normal.txt ln-normal.txt +ln -s normal.txt ln-normal +mkdir normal-dir +ln -s normal-dir ln-normal-dir +ln -s nowhere ln-nowhere +mkfifo mk-fifo +touch no-access && chmod 000 no-access +mkdir no-access-dir && chmod 000 no-access-dir +ln -s ../normal.txt normal-dir/ln-normal.txt +ln -s ../normal.txt normal-dir/ln-normal +echo 'int main(void) { *((char *)0) = 0; }' > ill.c +make ill > /dev/null +echo 'test/ill' > ill.sh +mkdir empty-dir +mkdir cage +echo 'chmod 000 test/cage' > cage/lock.sh +echo 'chmod 755 test/cage' > cage-unlock.sh +mkdir cage/lion +echo 'chmod 000 test/cage' > cage/lion/lock.sh |