Added the mk/inc and upgraded installation.
This commit is contained in:
parent
f98ca5c70f
commit
efa48101b0
15 changed files with 237 additions and 6 deletions
12
app/mk/inc/cabuild
Normal file
12
app/mk/inc/cabuild
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
TARG = shr/obj/$OBJNAME.a
|
||||||
|
CFLAGS = $DEFS $INCS $CPPFLAGS
|
||||||
|
OFILES = ${CFILES:%.c=%.o}
|
||||||
|
all:V: $TARG
|
||||||
|
$TARG : $OFILES
|
||||||
|
mkdir -p shr/obj
|
||||||
|
$AR $ARFLAGS $TARG $OFILES
|
||||||
|
%.o : %.c
|
||||||
|
$CC -c -o $target $CFLAGS $stem.c
|
||||||
|
clean:V:
|
||||||
|
rm -f $TARG $OFILES
|
||||||
|
<$MKINCDIR/std/install
|
8
app/mk/inc/cbuild
Normal file
8
app/mk/inc/cbuild
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# Universal powerful simple C build file.
|
||||||
|
<$(MKINCDIR)/std/cbuild
|
||||||
|
<$(MKINCDIR)/std/install
|
||||||
|
|
||||||
|
clean:V:
|
||||||
|
rm -f $TARG $TARG.strip $OFILES
|
||||||
|
uninstall:V:
|
||||||
|
rm -f $EXEDIR/$TARG
|
60
app/mk/inc/config
Normal file
60
app/mk/inc/config
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
# Main configuration file.
|
||||||
|
|
||||||
|
MKINCDIR = $(MKINCDIR)
|
||||||
|
|
||||||
|
EXEDIR = $(HOME)/exe
|
||||||
|
APPDIR = $(HOME)/app
|
||||||
|
SHRDIR = $(HOME)/shr
|
||||||
|
INCDIR = $SHRDIR/inc
|
||||||
|
MKINCDIR = $APPDIR/mk/inc
|
||||||
|
OBJDIR = $SHRDIR/obj
|
||||||
|
MANDIR = $SHRDIR/man
|
||||||
|
INSTALLDIRS = $OBJDIR $MANDIR $EXEDIR $INCDIR $APPDIR
|
||||||
|
|
||||||
|
USRDIR = /usr
|
||||||
|
USRINC = -I$USRDIR/include
|
||||||
|
USRLIB = -L$USRDIR/lib
|
||||||
|
X11 = $USRDIR/X11R6
|
||||||
|
X11INC = -I$X11/include
|
||||||
|
X11LIB = -L$X11/lib -lX11
|
||||||
|
XFTLIB = -lXft
|
||||||
|
FTINC = $USRINC/freetype2
|
||||||
|
FTLIB = -lfreetype
|
||||||
|
FCINC =
|
||||||
|
FCLIB = -lfontconfig
|
||||||
|
MLIB = -lm
|
||||||
|
CLIB = -lc
|
||||||
|
UTILLIB = -lutil
|
||||||
|
XINLIB = -lXinerama
|
||||||
|
XINCPP = -DXINERAMA
|
||||||
|
XTLIB = -lXt
|
||||||
|
XILIB = -lXi
|
||||||
|
XEXTLIB = -lXext
|
||||||
|
DOTINC = -I.
|
||||||
|
SECINC = -Isec
|
||||||
|
PATH9 = lib/9
|
||||||
|
SECINC9 = -I$PATH9/sec
|
||||||
|
CRYPTLIB = -lcrypt
|
||||||
|
XRLIB = -lXrandr
|
||||||
|
CURLIB = -lcurses
|
||||||
|
PNGLIB = -lpng
|
||||||
|
JPGLIB = -ljpeg
|
||||||
|
OBJ9 = $OBJDIR/9.a
|
||||||
|
INC9 = -I$INCDIR/9
|
||||||
|
FRAMEOBJ = $OBJDIR/frame.a
|
||||||
|
FRAMEINC = -I$INCDIR/frame
|
||||||
|
XGOBJ = $OBJDIR/Xg.a
|
||||||
|
XGINC = -I$INCDIR/Xg
|
||||||
|
SLINC = -I$INCDIR/sl
|
||||||
|
XMULIB = -lXmu
|
||||||
|
GCC = cc
|
||||||
|
CC = tcc
|
||||||
|
LD = $CC
|
||||||
|
STRIP = strip
|
||||||
|
AR = ar
|
||||||
|
YACC = 9yacc
|
||||||
|
LEX = lex
|
||||||
|
PKG_CONFIG_CFLAGS = pkg-config --cflags
|
||||||
|
PkG_CONFIG_LIBS = pkg-config --libs
|
||||||
|
|
||||||
|
<$(HOME)/env/mk/config
|
22
app/mk/inc/cybuild
Normal file
22
app/mk/inc/cybuild
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
# File to build programs with Yacc files.
|
||||||
|
INSTALLDIRS = $APPDIR $EXEDIR $SHRDIR
|
||||||
|
OFILES = ${CFILES:%.c=%.o}
|
||||||
|
YOFILES = ${YCFILES:%.c=%.o}
|
||||||
|
TARG = exe/$PROGNAME
|
||||||
|
CFLAGS = $CPPFLAGS $DEFS $INCS $CFLAGS
|
||||||
|
all :V: $TARG
|
||||||
|
strip :V: $TARG
|
||||||
|
$STRIP $TARG
|
||||||
|
$TARG : $OFILES $YOFILES
|
||||||
|
mkdir -p exe
|
||||||
|
$LD -o $target $LDFLAGS $OFILES $YOFILES $AFILES $LIBS
|
||||||
|
%.o : %.c
|
||||||
|
$CC -c -o $target $CFLAGS $stem.c
|
||||||
|
$CFILES $YCFILES :N: $HFILES $YHFILES
|
||||||
|
$HFILES :N:
|
||||||
|
$YHFILES $YCFILES : $YFILES
|
||||||
|
$YACC -d $YFILES
|
||||||
|
$YFILES :N:
|
||||||
|
clean:
|
||||||
|
rm -f $TARG $OFILES $YOFILES $YHFILES $YCFILES
|
||||||
|
<$MKINCDIR/std/install
|
14
app/mk/inc/dirs
Normal file
14
app/mk/inc/dirs
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
% :V: %-$MKSHELL
|
||||||
|
%-sh :QV:
|
||||||
|
pwd=`pwd`
|
||||||
|
export pwd
|
||||||
|
for d in $DIRS ; do
|
||||||
|
echo "[ cd $d ; mk $stem]"
|
||||||
|
cd "$d" ; mk $MKFLAGS $stem ; cd "$pwd"
|
||||||
|
done
|
||||||
|
%-rc :QV:
|
||||||
|
pwd = `{pwd}
|
||||||
|
for(d in $DIRS){
|
||||||
|
echo [ cd $d ';' mk $stem]
|
||||||
|
{ builtin cd $d ; mk $MKFLAGS $stem ; builtin cd $pwd}
|
||||||
|
}
|
4
app/mk/inc/gobuild
Normal file
4
app/mk/inc/gobuild
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# Compatible with pkg module for Golang.
|
||||||
|
<$MKINCDIR/std/gobuild
|
||||||
|
<$MKINCDIR/std/install
|
||||||
|
|
7
app/mk/inc/script
Normal file
7
app/mk/inc/script
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
TARG = exe
|
||||||
|
exe:
|
||||||
|
mkdir -p $target
|
||||||
|
all:VQ:
|
||||||
|
echo -n
|
||||||
|
<$MKINCDIR/std/install
|
||||||
|
|
15
app/mk/inc/std/cbuild
Normal file
15
app/mk/inc/std/cbuild
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
OFILES = ${CFILES:%.c=%.o}
|
||||||
|
TARG = exe/$PROGNAME
|
||||||
|
CFLAGS = $CPPFLAGS $DEFS $INCS $CFLAGS
|
||||||
|
all :V: $TARG
|
||||||
|
strip :V: $TARG.strip
|
||||||
|
$TARG.strip : $TARG
|
||||||
|
cp -f $TARG $target
|
||||||
|
$STRIP $target
|
||||||
|
$TARG : $OFILES
|
||||||
|
mkdir -p exe
|
||||||
|
$LD -o $target $LDFLAGS $OFILES $AFILES $LIBS
|
||||||
|
%.o : %.c $HFILES
|
||||||
|
$CC -c -o $target $CFLAGS $stem.c
|
||||||
|
run :V: $TARG
|
||||||
|
exec ./$TARG $MKFLAGS
|
39
app/mk/inc/std/gobuild
Normal file
39
app/mk/inc/std/gobuild
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
all :V: build
|
||||||
|
strip :V: $STRIPTARG
|
||||||
|
%.strip : %
|
||||||
|
cp -f $prereq $target
|
||||||
|
$STRIP $target
|
||||||
|
|
||||||
|
build :VQ: build-$MKSHELL
|
||||||
|
build-sh :VQ:
|
||||||
|
mkdir -p exe
|
||||||
|
pwd=`pwd`
|
||||||
|
for name in `command cd src/cmd && goblin ls && command cd $pwd`; do
|
||||||
|
cd src/cmd/$name
|
||||||
|
echo Buliding "$name"...
|
||||||
|
if go build -o $pwd/exe/$name ; then
|
||||||
|
echo Done building "$name"
|
||||||
|
else
|
||||||
|
echo "Error(s) while building $name"
|
||||||
|
fi
|
||||||
|
if echo "$name" | goblin in $BUILD_WASM ; then
|
||||||
|
echo Bulding WASM for "'$name'"...
|
||||||
|
if GOARCH=wasm GOOS=js go build -o "$pwd/$STATIC/$name.wasm" ; then
|
||||||
|
echo Done building WASM for "$name"
|
||||||
|
else
|
||||||
|
echo "Error(s) while building WASM for '$name'"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
command cd $pwd
|
||||||
|
done
|
||||||
|
clean:V:
|
||||||
|
pwd=`pwd`
|
||||||
|
names=`command cd src/cmd && goblin ls && command cd $pwd`
|
||||||
|
for name in $names ; do
|
||||||
|
echo Removing "'$name'..."
|
||||||
|
rm -f "$pwd/exe/$name"
|
||||||
|
if echo "$name" | goblin in $BUILD_WASM ; then
|
||||||
|
rm -f "$pwd/$STATIC/$name.wasm"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
30
app/mk/inc/std/install
Normal file
30
app/mk/inc/std/install
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
install:V: install-$MKSHELL
|
||||||
|
install-sh:VQ: build
|
||||||
|
if test -d shr ; then
|
||||||
|
echo Installing shared files...
|
||||||
|
cp -rf shr $HOME/shr/..
|
||||||
|
echo Done installing shared files
|
||||||
|
fi
|
||||||
|
if test -d app ; then
|
||||||
|
echo Installing application files...
|
||||||
|
mkdir -p $APPDIR/$PROGNAME && cp -rf app/* $APPDIR/$PROGNAME/
|
||||||
|
echo Done installing application files
|
||||||
|
fi
|
||||||
|
if test -d exe ; then
|
||||||
|
echo Installing executables...
|
||||||
|
cp -rf exe $EXEDIR/..
|
||||||
|
files=`goblin basename $(ls exe)`
|
||||||
|
for i in $files ; do
|
||||||
|
chmod 0755 $EXEDIR/$i
|
||||||
|
done
|
||||||
|
echo Done installing executables
|
||||||
|
fi
|
||||||
|
install-rc:V: build
|
||||||
|
if(test -d shr) cp -rf shr $SHRDIR/..
|
||||||
|
if(test -d app){ mkdir -p $APPDIR/$PROGNAME && cp -rf app/* $APPDIR/$PROGNAME/ }
|
||||||
|
if(test -d exe) {
|
||||||
|
cp -rf exe $EXEDIR/..
|
||||||
|
files = `{goblin basename `{ls exe} }
|
||||||
|
chmod 0755 $EXEDIR/^$files
|
||||||
|
}
|
||||||
|
|
2
app/mk/inc/std/usegcc
Normal file
2
app/mk/inc/std/usegcc
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
CC = $GCC
|
||||||
|
LD = $CC
|
14
app/mk/inc/w3/run-dev
Normal file
14
app/mk/inc/w3/run-dev
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
run-dev:V:
|
||||||
|
while true ; do
|
||||||
|
goblin echo -n '> '
|
||||||
|
input=`goblin read`
|
||||||
|
case $input in
|
||||||
|
exit)
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
goblin ls -r 100 $WATCH_FILES \
|
||||||
|
| entr -d -r sh -c \
|
||||||
|
'mk && ./exe/w3site' \
|
||||||
|
|| pkill w3site && ./exe/w3site
|
||||||
|
done
|
5
install
5
install
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
cd m/cmd/goblin
|
|
||||||
exec go install
|
|
||||||
|
|
9
install.sh
Executable file
9
install.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
wd=`pwd`
|
||||||
|
|
||||||
|
cd src/cmd/goblin && go install && cd $wd
|
||||||
|
|
||||||
|
mkdir -p $HOME/app/goblin
|
||||||
|
cp -rf app/* $HOME/app/goblin
|
||||||
|
|
|
@ -328,7 +328,7 @@ func Run(args []string) {
|
||||||
|
|
||||||
if mkincdir := os.Getenv("MKINCDIR") ; mkincdir == "" {
|
if mkincdir := os.Getenv("MKINCDIR") ; mkincdir == "" {
|
||||||
homeDir, _ := os.UserHomeDir()
|
homeDir, _ := os.UserHomeDir()
|
||||||
os.Setenv("MKINCDIR", homeDir + "/app/mk/inc" )
|
os.Setenv("MKINCDIR", homeDir + "/app/goblin/mk/inc" )
|
||||||
}
|
}
|
||||||
|
|
||||||
flags := flag.NewFlagSet(arg0, flag.ExitOnError)
|
flags := flag.NewFlagSet(arg0, flag.ExitOnError)
|
||||||
|
|
Loading…
Reference in a new issue