02 October 2017

Mulberry

System: GNU/Linux x86, MS XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz
Deps: Setup-Subversion-1.8.17.msi (MS)

I might have a look at the Mulberry e-mail and calendar client.

http://www.mulberrymail.com/

https://sourceforge.net/projects/win32svn/
Setup-Subversion-1.8.17.msi

Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Eric>CD \

C:\>MKDIR mulberry-open && CD mulberry-open

C:\mulberry-open>svn.exe co http://svn.mulberrymail.com/mulberry/JX/trunk/ JX

...

Checked out revision 515.

C:\work\mulberry-open>svn.exe co http://svn.mulberrymail.com/mulberry/Mulberry/trunk/ Mulberry

...

Checked out revision 515.

C:\mulberry-open>EXIT

NB: The JX trunk is only for use with the X Window System.

07 September 2017

bootstrapping go

System: Microsoft Windows XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz

See also the earlier post.

https://golang.org/doc/install/source
go1.4-bootstrap-20170531.tar.gz

I might modify src\cmd\dist\unix.c and write an interix.c file for that directory.

Either bash would need to be compiled for Interix or maybe the code could be
changed for use by other shells, possibly src\make.bash might need though to
be patched if that shell was utilised.

MS deprecated Interix beginning with Windows 8.0, but the feasibility of running
SUA on Windows 10 S 64bit, on which WSL can not be enabled, intrigues me.

I considered earlier the possibility of compiling ghc under Interix.

Windows Vista and newer included in addition to gcc-3.3 also -4.2.

gcc_fullbuild (SUA Interix 6.0)

06 September 2017

Xapian

System: Microsoft Windows XP Home Edition
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz

This post is not finished.

Installation of xapian-core-1.2.8.

This is an old thread but someone recently wrote me of an interest in compiling
the 1.2.x series Xapian under VS2013. I do not have access to that release but
on an XP machine I have VS2008.

https://lists.xapian.org/pipermail/xapian-devel/2012-October/001883.html

perl and zlib are dependencies
pcre (for Omega) would be a dependency
Updated: 09-27-2017

https://github.com/xapian/xapian/commit/3225c792294a3d62d94da3f5dd0ea1e69487b5ba
committed on Sep 26, 2017

I received a notice yesterday that the 1.2.x series has been retired, the
last in that series being 1.2.25, which incorporated some bug fixes.

https://xapian.org/
Updated: 09-29-2017

https://sourceforge.net/projects/libpng/files/zlib/1.2.3/
zlib123-dll.zip

Some of the files listed in win32_api.mak are not present in
xapian-core-1.2.8\api so that file likely needs to be edited.

https://github.com/xapian/xapian/commit/82ac88bd7f51d16b485bf56c22f69798ddee8a91#diff-f66184fdc63eeb39716a580a74245c47
committed on Jun 18, 2011

https://github.com/xapian/xapian/commit/4d3a289ff9dda20837e3e1862f375fbf59832120#diff-3b510dbc64c4cda1657129ea98436946
committed on Dec 28, 2015

Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Eric>DIR /B \xapian\xapian-core-1.2.8\api
compactor.cc
decvalwtsource.cc
dir_contents
documentvaluelist.cc
documentvaluelist.h
editdistance.cc
editdistance.h
emptypostlist.cc
error.cc
errorhandler.cc
expanddecider.cc
keymaker.cc
leafpostlist.cc
Makefile
Makefile.mk
maptermlist.h
matchspy.cc
omdatabase.cc
omdocument.cc
omenquire.cc
ompositionlistiterator.cc
ompostlistiterator.cc
omquery.cc
omqueryinternal.cc
omtermlistiterator.cc
postingsource.cc
postlist.cc
registry.cc
replication.cc
sortable-serialise.cc
termlist.cc
valueiterator.cc
valuerangeproc.cc
valuesetmatchdecider.cc
version.cc

C:\Documents and Settings\Eric>EXIT

Setting environment for using Microsoft Visual Studio 2008 x86 tools.

C:\Programmer\Microsoft Visual Studio 9.0\VC>C:\progra~1\perl\bin\perl.exe -v

This is perl, v5.10.1 (*) built for MSWin32-x86-multi-thread

Copyright 1987-2009, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.


C:\Programmer\Microsoft Visual Studio 9.0\VC>CD \xapian\xapian-core-1.2.8\win32

C:\xapian\xapian-core-1.2.8\win32>nmake.exe PERL_DIR=c:\programmer\perl\bin ZLIB
_DIR=c:\programmer\zlib123-dll VERSION_SUFFIX=-1.2.8

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

Building Xapian on Win32

        cd xapdep
        nmake -f xapdep.mak

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        cl.exe @C:\DOCUME~1\Eric\LOKALE~1\Temp\nm66.tmp
xapdep.c
        link.exe @C:\DOCUME~1\Eric\LOKALE~1\Temp\nm67.tmp
        copy xapdep.exe ..
        1 fil(er) kopieret.
        cd ..
        if not exist c:\programmer\perl\bin\perl.exe exit(1)
        c:\programmer\perl\bin\perl.exe genversion.pl ..\configure.ac version.h.
in ..\include\xapian\version.h
        copy config.h.win32 ..\config.h
        1 fil(er) kopieret.
        copy  win32_api.mak ..\api\Makefile
        1 fil(er) kopieret.
        copy  win32_backends.mak ..\backends\Makefile
        1 fil(er) kopieret.
        copy  win32_backends_brass.mak ..\backends\brass\Makefile
        1 fil(er) kopieret.
        copy  win32_backends_chert.mak ..\backends\chert\Makefile
        1 fil(er) kopieret.
        copy  win32_backends_inmemory.mak ..\backends\inmemory\Makefile
        1 fil(er) kopieret.
        copy  win32_backends_multi.mak ..\backends\multi\Makefile
        1 fil(er) kopieret.
        copy  win32_backends_remote.mak ..\backends\remote\Makefile
        1 fil(er) kopieret.
        copy  win32_bin.mak ..\bin\Makefile
        1 fil(er) kopieret.
        copy  win32_common.mak ..\common\Makefile
        1 fil(er) kopieret.
        copy  win32_examples.mak ..\examples\Makefile
        1 fil(er) kopieret.
        copy  win32_expand.mak ..\expand\Makefile
        1 fil(er) kopieret.
        copy  win32_languages_compiler.mak ..\languages\compiler\Makefile
        1 fil(er) kopieret.
        copy  win32_languages.mak ..\languages\Makefile
        1 fil(er) kopieret.
        copy  win32_matcher.mak ..\matcher\Makefile
        1 fil(er) kopieret.
        copy  win32_net.mak ..\net\Makefile
        1 fil(er) kopieret.
        copy  win32_unicode.mak ..\unicode\Makefile
        1 fil(er) kopieret.
        copy  win32_weight.mak ..\weight\Makefile
        1 fil(er) kopieret.
        copy  win32_queryparser.mak ..\queryparser\Makefile
        1 fil(er) kopieret.
        copy  win32_tests.mak ..\tests\Makefile
        1 fil(er) kopieret.
        copy  win32_testsuite.mak ..\tests\harness\Makefile
        1 fil(er) kopieret.
        if exist ..\..\xapian-bindings-1.2.8 copy win32_bindings_python.mak ..\.
.\xapian-bindings-1.2.8\python\Makefile
        if exist ..\..\xapian-bindings-1.2.8 copy version.rc.python ..\..\xapian
-bindings-1.2.8\python\version.rc
        if exist ..\..\xapian-bindings-1.2.8 copy setup.py ..\..\xapian-bindings
-1.2.8\python
        if exist ..\..\xapian-bindings-1.2.8 copy win32_bindings_php.mak ..\..\x
apian-bindings-1.2.8\php\Makefile
        if exist ..\..\xapian-bindings-1.2.8 copy version.rc.php ..\..\xapian-bi
ndings-1.2.8\php\version.rc
        if exist ..\..\xapian-bindings-1.2.8 copy win32_bindings_java.mak ..\..\
xapian-bindings-1.2.8\java\Makefile
        if exist ..\..\xapian-bindings-1.2.8 copy version.rc.java ..\..\xapian-b
indings-1.2.8\java\version.rc
        if exist ..\..\xapian-bindings-1.2.8 copy WriteJavaVersion.java ..\..\xa
pian-bindings-1.2.8\java\WriteJavaVersion.java
        if exist ..\..\xapian-bindings-1.2.8 copy win32_bindings_ruby.mak ..\..\
xapian-bindings-1.2.8\ruby\Makefile
        if exist ..\..\xapian-bindings-1.2.8 copy win32_bindings_csharp.mak ..\.
.\xapian-bindings-1.2.8\csharp\Makefile
        if exist ..\..\xapian-bindings-1.2.8 copy version.rc.csharp ..\..\xapian
-bindings-1.2.8\csharp\version.rc
        if exist ..\..\xapian-applications\omega-1.2.8 copy win32_applications_o
mega.mak ..\..\xapian-applications\omega-1.2.8\Makefile
        if exist ..\..\xapian-applications\omega-1.2.8 copy config.mak ..\..\xap
ian-applications\omega-1.2.8
        if exist ..\..\xapian-applications\omega-1.2.8 copy config.h.omega.win32
 ..\..\xapian-applications\omega-1.2.8\config.h
        if exist ..\..\xapian-applications\omega-1.2.8 copy config.h.omega.win32
 ..\..\xapian-applications\omega-1.2.8\common\config.h
        cd ..\common
        nmake  /                   CFG="" DEBUG="" HEADERS

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

C:\xapian\xapian-core-1.2.8\common\deps.d blev ikke fundet.
        cl.exe -showIncludes -nologo -c -Zi -I.. -I..\include -I..\common -I..\w
in32 -W3 -EHsc  -DWIN32 -D__WIN32__ -D_WIN32 -D_WINDOWS  -D "HAVE_VSNPRINTF" -D
"HAVE_STRDUP"  -D_CRT_SECURE_NO_DEPRECATE  -I"C:\gnu\zlib123-dll\include" -O2 -M
D -D NDEBUG -I..\win32\ -Fo".\\" -Tp .\bitstream.cc .\const_database_wrapper.cc
.\debuglog.cc .\fileutils.cc  .\getopt.cc  .\io_utils.cc  .\msvc_dirent.cc  .\ms
vc_posix_wrapper.cc  .\replicate_utils.cc  .\safe.cc  .\serialise-double.cc  .\s
ocket_utils.cc  .\str.cc .\stringutils.cc  .\utils.cc  .\win32_uuid.cc >>deps.d
        if exist "..\win32\xapdep.exe" ..\win32\xapdep.exe
        nmake  /                   CFG="" DEBUG=""

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

        if not exist "..\win32\Release\libs/" mkdir "..\win32\Release\libs"
        link.exe -lib @C:\DOCUME~1\Eric\LOKALE~1\Temp\nm69.tmp
        cd ..\api
        nmake  /                   CFG="" DEBUG=""

Microsoft (R) Program Maintenance Utility Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.

NMAKE : fatal error U1073: don't know how to make './positioniterator.obj'
Stop.
NMAKE : fatal error U1077: '"C:\Programmer\Microsoft Visual Studio 9.0\VC\BIN\nm
ake.EXE"' : return code '0x2'
Stop.

C:\xapian\xapian-core-1.2.8\win32>

28 August 2017

bootstrapping go

System: Slackware Linux (version 14.0)
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz
Deps: go1.4-bootstrap-20170531.tar.gz,
go1.9.src.tar.gz

I haven't tested V. Batts Slackbuild (unmodified or modified) on the
Slackware Linux version for which it was written, namely 14.2; this
post uses version 14.0. For linux/386 cgo is enabled by default.

Go 1.4 was the last version where the toolchain was written in C.

This entry will compile 1.4 and then use that to bootstrap 1.9.

https://golang.org/doc/install/source
go1.4-bootstrap-20170531.tar.gz

Download and extract the above file into root's home directory,
rename the folder, then cd into go1.4/src and run make.bash.

bash-4.2# tar xvf go1.4-bootstrap-20170531.tar.gz

...

bash-4.2# mv go go1.4
bash-4.2# cd go1.4/src
bash-4.2# ./make.bash

...

Installed Go for linux/386 in /root/go1.4
Installed commands in /root/go1.4/bin
bash-4.2# exit

http://slackbuilds.org/repository/14.2/development/google-go-lang/
google-go-lang.tar.gz

Download and extract the above file into root's home directory,
and then edit the google-go-lang.SlackBuild file as follows.

- VERSION=${VERSION:-1.8.3}
+ VERSION=${VERSION:-1.9}

- export GOROOT_BOOTSTRAP="/usr" # gcc 5+ is go1.4 API, so we'll bootstrap with it
+ # export GOROOT_BOOTSTRAP="/usr" # gcc 5+ is go1.4 API, so we'll bootstrap with it

chmod 0755 $PKG/etc/profile.d/go.sh
+
+ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

https://golang.org/dl/
go1.9.src.tar.gz

Download the above file, then copy it into ~/google-go-lang
and build.

bash-4.2# cd google-go-lang
bash-4.2# ./google-go-lang.SlackBuild

...

Slackware package /tmp/google-go-lang-1.9-i586-1_SBo.tgz created.

bash-4.2#  cd ..
bash-4.2# rm -r go1.4
bash-4.2# rm -r google-go-lang
bash-4.2# rm -r /tmp/SBo
bash-4.2# installpkg /tmp/google-go-lang-1.9-i586-1_SBo.tgz
Verifying package google-go-lang-1.9-i586-1_SBo.tgz.
Installing package google-go-lang-1.9-i586-1_SBo.tgz:
PACKAGE DESCRIPTION:
# google-go-lang (Google's Go Language kit with gc tool chain)
#
# The Go programming language is an open source project to make
# programmers more productive. Go is expressive, concise, clean, and
# efficient. Its concurrency mechanisms make it easy to write programs
# that get the most out of multicore and networked machines, while its
# novel type system enables flexible and modular program construction.
#
Package google-go-lang-1.9-i586-1_SBo.tgz installed.

bash-4.2# exit

The makepkg script called by the Slackbuild will output a warning about
about issue6550.gz, this is expected, the file is used by gunzip_test.go.

Reboot and test your installation.

https://golang.org/doc/install/source#testing

Go 1.9 release notes.

CL 994044CL 4639077CL 4808043
Updated: 10-11-2017

I presume both of the .tar.gz (golang source) files used in the following are outdated

I'll probably write modified versions of the below utilising the net and tools repositories
downloaded as .zip files, and further an additional SlackBuild for the blog repository, .

gonet / https://github.com/golang/net
gotools / https://github.com/golang/tools

15 August 2017

9p

System: Microsoft Windows 10 Home Edition
CPUs: Intel(R) Celeron(R) CPU N3060 @1.60GHz
64-bit Operating System, x64-based processor
Deps: vs_community__1560150700.1495339730.exe,
Setup-Subversion-1.8.17.msi, Python-3.6.1.tar.xz

This post is not finished.

See the 9pvfs post for the Visual Studio setup, and
the vim-notebook post for the python3 installation.

Installation of T. Newsham's 9P client/server implementation in Python.

http://www.thenewsh.com/~newsham/plan9/
9p.tgz

https://github.com/nurmi-labs/py9p
py9p-master.zip

Presently I don't have Plan 9 installed on a machine, and am unable to test the upgrade to python3.

https://www.dlitz.net/software/pycrypto/

https://www.pycryptodome.org/en/latest/

NB: The instructions for a Vim80 64bit compile will produce an executable enabled for arabic, farsi,
and python3.

Currently available functional programming languages' 9P implementations.

http://nurmi-labs.blogspot.com/2017/01/patching-network-ninep.html

http://nurmi-labs.blogspot.com/p/9p-scheme.html

http://chicken.kitten-technologies.co.uk/cache/4/9p/0.9/
[depends on A. Shinn's integer sets (isets)]

10 August 2017

cURL

System: Microsoft Windows 10 Home Edition
CPUs: Intel(R) Celeron(R) CPU N3060 @1.60GHz
64-bit Operating System, x64-based processor
Deps: vs_community__1560150700.1495339730.exe,
curl-7.55.0.zip

Installation of curl-7.55.0.

https://www.visualstudio.com/downloads/
vs_community__1560150700.1495339730.exe

See the 9pvfs post for the Visual Studio setup,
and OpenSSL installation.

https://curl.haxx.se/download.html
curl-7.55.0.zip

Open an x64_x86 Cross Tools Command Prompt as an administrator.

**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.0.26430.16
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64_x86'

C:\Windows\System32>CD \curl-7.55.0\winbuild

C:\curl-7.55.0\winbuild>nmake.exe /f Makefile.vc mode=dll WITH_DEVEL=c:\progra~2\openssl WITH_SSL=dll ENABLE_WINSSL=no MACHINE=x86

...

C:\curl-7.55.0\winbuild>MOVE ..\builds\libcurl-vc-x86-release-dll-ssl-dll-ipv6-sspi c:\progra~2\curl
        1 dir(s) moved.

C:\curl-7.55.0\winbuild>EXIT

Add "C:\Program Files (x86)\curl" to your System Environment Variable PATH.

08 August 2017

Eris

System: Slackware Linux (version 14.0)
CPUs: Intel(R) Atom(TM) CPU N270 @1.60GHz
Deps: eris-master.zip, ucspi-tcp-0.88.tar.gz

Installation of N. Pickett's eris-4.4.

http://slackbuilds.org/repository/14.2/network/ucspi-tcp/

bash-4.2# installpkg ucspi-tcp-0.88-486-1_SBo.tgz

...

bash-4.2# exit

https://github.com/nealey/eris
eris-master.zip

bash-4.2#  cd eris
bash-4.2# make
awk -F : 'NR==1 {printf("const char *FNORD = \"eris/%s\";\n", $1);}' CHANGES > version.h
cc -Wall -Werror   -c -o eris.o eris.c
cc -Wall -Werror   -c -o strings.o strings.c
cc -Wall -Werror   -c -o mime.o mime.c
cc -Wall -Werror   -c -o timerfc.o timerfc.c
cc   eris.o strings.o mime.o timerfc.o   -o eris
bash-4.2#

bash-4.2# ./test.sh
HTTPD: ./eris 
CGI:   ./eris -c 
IDX:   ./eris -d 
Basic tests          .............
Options              .
Tomfoolery           .....
If-Modified-Since    ........
Directory indexing   ...
CGI                  .............
Timeouts             .
CONNECT handler      .
fnord bugs           .......
52 of 52 tests passed (0 failed).
bash-4.2# exit