[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Axiom-developer] 20170501
From: |
Camm Maguire |
Subject: |
[Axiom-developer] 20170501 |
Date: |
Fri, 01 Sep 2017 11:47:29 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux) |
Greetings! Just FYI for possible cleanups at some point:
dpkg-shlibdeps: warning: package could avoid a useless dependency if
debian/axiom-hypertex/usr/lib/axiom-20170501/bin/hypertex was not linked
against libm.so.6 (it uses none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if
debian/axiom/usr/lib/axiom-20170501/lib/spadbuf
debian/axiom/usr/lib/axiom-20170501/lib/ex2ht were not linked against
libXpm.so.4 (they use none of the library's symbols)
Take care,
Tim Daly <address@hidden> writes:
> Camm,
>
> I applied your changes, tested it, and pushed it.
>
> Tim
>
> On Wed, Aug 23, 2017 at 9:24 PM, Tim Daly <address@hidden> wrote:
>
> Camm,
>
> I've applied all of the above patches and am rebuilding now.
> I'll let you know if anything fails. Thanks for the patches.
>
> re: list_order, etc...
> I have a meeting at CMU on friday with some profs to talk about the
> state of my research on proving Axiom correct so I'm going to be
> busy prepping for that.
>
> Tim
>
> On Wed, Aug 23, 2017 at 3:18 PM, Camm Maguire <address@hidden> wrote:
>
> Greetings!
>
> Tim Daly <address@hidden> writes:
>
> > Camm,
> >
> > So far I've discoverd that chdir is no longer exported from system
> and
> > that pathname-* no longer accepts a symbol.
> >
>
> Correct.
>
> > These changes are painful to find. You are clearly on the path to
> making
> > GCL into CLTL2. Do you have a list of these semantic changes
> somewhere?
> >
>
> Actually I do not think this was even valid ClTL1. GCL does intend to
> support both dialects. But with the next release the default will be
> ansi. One can get CLTL1 with --disable-ansi passed to configure.
>
> Here are my patches addressing these issues. Pretty small issue:
>
>
> #############################################################################
> Description: <short summary of the patch>
> TODO: Put a short summary on the line above and replace this
> paragraph
> with a longer explanation of this change. Complete the
> meta-information
> with other relevant fields (see below for details). To make it
> easier, the
> information below has been extracted from the changelog. Adjust it
> or drop
> it.
> .
> axiom (20140801-12) unstable; urgency=medium
> .
> * build dep against latest gcl
> * Bug fix: "FTBFS on arm64, mips64el and mipsel", thanks to Emilio
> Pozuelo Monfort (Closes: #840639).
> Author: Camm Maguire <address@hidden>
> Bug-Debian: https://bugs.debian.org/840639
>
> ---
> The information above should follow the Patch Tagging Guidelines,
> please
> checkout http://dep.debian.net/deps/dep3/ to learn about the format.
> Here
> are templates for supplementary fields that you might want to add:
>
> Origin: <vendor|upstream|other>, <url of original patch>
> Bug: <url in upstream bugtracker>
> Bug-Debian: https://bugs.debian.org/<bugnumber>
> Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
> Forwarded: <no|not-needed|url proving that it has been forwarded>
> Reviewed-By: <name and email of someone who approved the patch>
> Last-Update: 2016-10-13
>
> Index: axiom-20170401/books/bookvol5.pamphlet
> ===================================================================
> --- axiom-20170401.orig/books/bookvol5.pamphlet
> +++ axiom-20170401/books/bookvol5.pamphlet
> @@ -47588,9 +47588,9 @@ nrlib/index.kaf
> (processDir (dirarg thisdir)
> (let (allfiles)
> (declare (special vmlisp::*index-filename*))
> - (system:chdir (string dirarg))
> + (system::chdir (string dirarg))
> (setq allfiles (directory "*"))
> - (system:chdir thisdir)
> + (system::chdir thisdir)
> (mapcan #'(lambda (f)
> (when (string-equal (pathname-type f) "nrlib")
> (list (concatenate 'string (namestring f) "/"
> Index: axiom-20170401/src/interp/patches.lisp.pamphlet
> ===================================================================
> --- axiom-20170401.orig/src/interp/patches.lisp.pamphlet
> +++ axiom-20170401/src/interp/patches.lisp.pamphlet
> @@ -123,7 +123,7 @@ It used to read:
> ((eql (|directoryp| (interp-make-directory (car args))) 1)
> (setq $current-directory
> (namestring (truename (interp-make-directory (car
> args)))))))
> -#+(or :kcl :ibcl :CCL) (system:CHDIR $current-directory)
> +#+(or :kcl :ibcl :CCL) (system::CHDIR $current-directory)
> #+(and :lucid :ibm/370)
> (setq *default-pathname-defaults* "")
> #-(and :lucid :ibm/370)
> @@ -143,7 +143,7 @@ It used to read:
> ((eql (|directoryp| (interp-make-directory (car args))) 1)
> (setq $current-directory
> (namestring (truename (interp-make-directory (car args)))))))
> -#+(or :kcl :ibcl :CCL) (system:CHDIR $current-directory)
> +#+(or :kcl :ibcl :CCL) (system::CHDIR $current-directory)
> #+(and :lucid :ibm/370)
> (setq *default-pathname-defaults* "")
> #-(and :lucid :ibm/370)
>
> =============================================================================
> Description: <short summary of the patch>
> TODO: Put a short summary on the line above and replace this
> paragraph
> with a longer explanation of this change. Complete the
> meta-information
> with other relevant fields (see below for details). To make it
> easier, the
> information below has been extracted from the changelog. Adjust it
> or drop
> it.
> .
> axiom (20140801-11) unstable; urgency=medium
> .
> * fix FTBFS ppc64, patch to avoid overflow of BSD sockaddr sa_data
> in
> make_server_name
> * build-dep latest gcl
> * Bug fix: "FTBFS on mips", thanks to Sebastian Ramacher (Closes:
> #756793). autobuild with latest tools on mips works.
> * Bug fix: "naive methods of exiting axiom can blow up
> catastrophically", thanks to Tom Hargreaves (Closes: #346552).
> * Bug fix: ""backspace" key doesn't work as
> expected",
> thanks to Edi Meier (Closes: #708733). Command line editing in
> terminal now has a conventionally functioning Backspace
> Author: Camm Maguire <address@hidden>
> Bug-Debian: https://bugs.debian.org/346552
> Bug-Debian: https://bugs.debian.org/708733
> Bug-Debian: https://bugs.debian.org/756793
>
> ---
> The information above should follow the Patch Tagging Guidelines,
> please
> checkout http://dep.debian.net/deps/dep3/ to learn about the format.
> Here
> are templates for supplementary fields that you might want to add:
>
> Origin: <vendor|upstream|other>, <url of original patch>
> Bug: <url in upstream bugtracker>
> Bug-Debian: https://bugs.debian.org/<bugnumber>
> Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
> Forwarded: <no|not-needed|url proving that it has been forwarded>
> Reviewed-By: <name and email of someone who approved the patch>
> Last-Update: 2016-10-13
>
> Index: axiom-20170401/books/bookvol5.pamphlet
> ===================================================================
> --- axiom-20170401.orig/books/bookvol5.pamphlet
> +++ axiom-20170401/books/bookvol5.pamphlet
> @@ -37537,7 +37537,7 @@ o )history
> (cond
> ((eq fullopt '|ifthere|) (setq ifthere t))
> ((eq fullopt '|quiet|) (setq quiet t))))
> - (setq ef (|pathname| /editfile))
> + (setq ef (or (|pathname| /editfile) ""))
> (when (eq (|pathnameTypeId| ef) 'spad)
> (setq ef (|makePathname| (|pathnameName| ef) "*" "*")))
> (if arg
> @@ -47605,8 +47605,9 @@ nrlib/index.kaf
> (if make-database? (setq noexpose t))
> (when dir (setq nrlibs (processDir dir thisdir)))
> (dolist (file filelist)
> - (let ((filename (pathname-name file))
> - (namedir (directory-namestring file)))
> + (let* ((file (string file))
> + (filename (pathname-name file))
> + (namedir (directory-namestring file)))
> (unless namedir (setq thisdir (concatenate 'string thisdir "/")))
> (cond
> ((setq file (probe-file
> @@ -48838,7 +48839,7 @@ filetype and filemode. We also UPCASE ev
> (defun |pathname| (p)
> (cond
> ((null p) p)
> - ((pathnamep p) p)
> + ((pathnamep p) p)((symbolp p) (pathname (string p)))
> ((null (consp p)) (pathname p))
> (t
> (when (> (|#| p) 2) (setq p (cons (elt p 0) (cons (elt p 1)
> nil))))
> Index: axiom-20170401/src/interp/patches.lisp.pamphlet
> ===================================================================
> --- axiom-20170401.orig/src/interp/patches.lisp.pamphlet
> +++ axiom-20170401/src/interp/patches.lisp.pamphlet
> @@ -100,9 +100,9 @@ previous definition.
> (cond ((null filename)
> (dribble) (TERPRI)
> (reset-highlight))
> - ((probe-file (car filename))
> + ((probe-file (string (car filename)))
> (error (format nil "file ~a already exists" (car
> filename))))
> - (t (dribble (car filename))
> + (t (dribble (string (car filename)))
> (TERPRI)
> (clear-highlight))
> ))
> Index: axiom-20170401/src/interp/util.lisp.pamphlet
> ===================================================================
> --- axiom-20170401.orig/src/interp/util.lisp.pamphlet
> +++ axiom-20170401/src/interp/util.lisp.pamphlet
> @@ -1145,7 +1145,7 @@ Run the etags command on all of the lisp
> final TAGS file is constructed in the {\bf tmp} directory.
> \begin{chunk}{make-tags-file}
> (defun make-tags-file ()
> -#+:gcl (system:chdir "/tmp")
> +#+:gcl (system::chdir "/tmp")
> #-:gcl (vmlisp::obey (concatenate 'string "cd " "/tmp"))
> (obey (concat "etags " (make-absolute-filename
> "../../src/interp/*.lisp")))
> (spadtags-from-directory "../../src/interp" "boot")
>
> #############################################################################
>
> Take care,
>
> > Tim
> >
> > On Thu, Jul 20, 2017 at 7:14 PM, Tim Daly <address@hidden> wrote:
> >
> > Never mind. I might have figured it out. I'll let you know.
> >
> > On Thu, Jul 20, 2017 at 6:30 PM, Tim Daly <address@hidden>
> wrote:
> >
> > Camm, Barry,
> >
> > Yeah, I know. But it wasnt' needed before.
> > I've fixed that. Now the problem is:
> >
> > >;; Loading
> "/home/daly/axiom/obj/ubuntu/interp/makedep.lisp"
> > ;; Loading "/home/daly/axiom/obj/ubuntu/interp/sys-pkg.lsp"
> > ;; Finished loading
> "/home/daly/axiom/obj/ubuntu/interp/sys-pkg.lsp"
> > ;; Loading
> "/home/daly/axiom/src/interp/interp-proclaims.lisp"
> > ;; Finished loading
> "/home/daly/axiom/src/interp/interp-proclaims.lisp"
> > ;; Loading "/home/daly/axiom/obj/ubuntu/interp/nocompil"
> > ;; Finished loading
> "/home/daly/axiom/obj/ubuntu/interp/nocompil"
> > ;; Loading "/home/daly/axiom/obj/ubuntu/interp/bookvol5"
> >
> > Error: ERROR "Cannot find the external symbol CHDIR in
> #<\"SYSTEM\" package>."
> > Fast links are on: do (si::use-fast-links nil) for debugging
> > Signalled by LOAD.
> > ERROR "Cannot find the external symbol CHDIR in
> #<\"SYSTEM\" package>."
> >
> > Broken at LOAD. Type :H for Help.
> > 1 Return to top level.
> > BOOT>>Makefile:174: recipe for target
> '/home/daly/axiom/obj/ubuntu/bin/depsys' failed
> > make[3]: *** [/home/daly/axiom/obj/ubuntu/bin/depsys] Error
> 255
> > rm /home/daly/axiom/int/interp/nocompil.lisp
> /home/daly/axiom/int/interp/sys-pkg.lisp
> /home/daly/axiom/int/interp/util.lisp /home
> /daly/axiom/int/interp/parsing.lisp
> > make[3]: Leaving directory '/home/daly/axiom/src/interp'
> > Makefile:80: recipe for target 'interpdir' failed
> > make[2]: *** [interpdir] Error 2
> > make[2]: Leaving directory '/home/daly/axiom/src'
> > Makefile.ubuntu:164: recipe for target 'srcdir' failed
> > make[1]: *** [srcdir] Error 2
> > make[1]: Leaving directory '/home/daly/axiom'
> > Makefile:140: recipe for target 'all' failed
> > make: *** [all] Error 2
> >
> > When I build gcl with Axiom and run bin/gcl
> >
> > (find-all-symbols 'chdir) ==> (system::chdir chdir)
> >
> > but when I do the build the above failure occurs. Yet
> >
> > every call to chdir uses the fully qualified system::chdir
> >
> > suggestions?
> >
> > On Wed, Jul 19, 2017 at 5:28 PM, Barry M Trager
> <address@hidden> wrote:
> >
> > Tim, I think bsdSignal comes from your bsdsignal.c so
> don't you need to include bcdsignal.o when trying to link in sockio-c.o
> ?
> >
> > Barry
> >
> > From: Tim Daly <address@hidden>
> > To: Camm Maguire <address@hidden>
> > Cc: Barry M Trager <address@hidden>, Tim Daly
> <address@hidden>
> > Date: 07/19/2017 03:09 PM
> > Subject: Re: [Axiom] Build failures
> >
> -----------------------------------------------------------------------------------------------------------------------
> ----------------
> >
> > I have integrated the list_order branch into the Axiom
> build. Without
> > change, the list_order GCL will build on Ubuntu 16.10
> >
> > Axiom requires two addtional files, sockio and cfuns to
> be part of the
> > lisp image. This step fails, missing bsdSignal:
> >
> > ar: creating libpre_gcl.a
> > cp ../o/gcllib.a libgclp.a
> > ranlib libgclp.a
> > cat sys_init.lsp.in| sed \
> > -e "address@hidden@#(`cat
> ../majvers`.`cat ../minvers`) `cat ../release`#1" \
> > -e "address@hidden@#`cat ../minvers |
> cut -f2 -d.`#1" \
> > -e "address@hidden@#`cat ../minvers |
> cut -f1 -d.`#1" \
> > -e "address@hidden@#`cat ../majvers`#1"
> \
> > -e "address@hidden@#`cat ../release`#1"
> \
> > -e "address@hidden@#\"gcc -c
> -fsigned-char -pipe -fno-builtin-malloc -fno-builtin-free -fno-PIE -fno-pie
> -fno-PIC
> -fno-pic
> > -Wall -Wno-empty-body -Wno-unused-but-set-variable
> \"#1" \
> > -e "address@hidden@#\"gcc -Wl,-z,lazy
> -Wl,-T,../unixport/gcl.script -o \"#1" \
> > -e "address@hidden@#\" -l -lm -lc
> -lgclp\"#1" \
> > -e "address@hidden@#\"-O3
> -fomit-frame-pointer\"#1" \
> > -e "address@hidden@#\"-O\"#1" \
> > -e "address@hidden@#\"sys_init.lsp\"#1"
> >sys_init.lsp
> > touch raw_pre_gcl_map
> > gcc -Wl,-z,lazy -Wl,-T,../unixport/gcl.script -o
> raw_pre_gcl /home/daly/axiom/obj/ubuntu/lib/cfuns-c.o /home/daly/axiom/obj/
> ubuntu/lib/
> > sockio-c.o -L. -Wl,-Map raw_pre_gcl_map -lpre_gcl -lm
> -lc -lgclp
> > /home/daly/axiom/obj/ubuntu/lib/sockio-c.o: In function
> `open_server':
> > sockio-c.c:(.text+0x1c73): undefined reference to
> `bsdSignal'
> > collect2: error: ld returned 1 exit status
> > makefile:137: recipe for target 'raw_pre_gcl_map' failed
> > make[4]: *** [raw_pre_gcl_map] Error 1
> > make[4]: Leaving directory
> '/home/daly/axiom/lsp/gcl-2.6.13pre/unixport'
> > makefile:74: recipe for target 'unixport/saved_pre_gcl'
> failed
> > make[3]: *** [unixport/saved_pre_gcl] Error 2
> > rm h/mcompdefs.h
> > make[3]: Leaving directory
> '/home/daly/axiom/lsp/gcl-2.6.13pre'
> > /bin/sh: 6: unixport/saved_gcl: not found
> > Makefile:8: recipe for target 'gcldir' failed
> > make[2]: *** [gcldir] Error 127
> > make[2]: Leaving directory '/home/daly/axiom/lsp'
> > Makefile.ubuntu:181: recipe for target 'lspdir' failed
> > make[1]: *** [lspdir] Error 2
> > make[1]: Leaving directory '/home/daly/axiom'
> > Makefile:140: recipe for target 'all' failed
> > make: *** [all] Error 2
> >
> > On Mon, Jul 17, 2017 at 10:26 PM, Tim Daly
> <address@hidden> wrote:
> > Thanks. I'm cloning it now. I'll let you know how it
> goes.
> >
> > Axiom would not exist without your help.
> > I can't tell you how much I appreciate it.
> > Debugging a C compiler problem is painful.
> >
> > Tim
> >
> > On Mon, Jul 17, 2017 at 4:47 PM, Camm Maguire
> <address@hidden> wrote:
> > Hi Tim! I take it you are using 2.6.13pre? If so,
> please advance to
> > the list_order branch, which I will be pushing to
> 2.6.13pre soon. I
> > have a configure script which tests for and adds
> -fno_pie as needed.
> >
> > Take care,
> >
> > Tim Daly <address@hidden> writes:
> >
> > > No. I have spent the last two days trying to get that
> to work.
> > > Apparently it also affects the shipped libraries so
> the linker is
> > > unhappy. I also tried using update-alternatives to
> install back-level
> > > gcc versions but they also will not build.
> > >
> > > One option is to rebuild the compiler/linker/library
> chain without PIE
> > > but then I have a much larger maintenance task.
> > >
> > > Unfortunately this is viral. GCC 6.2 will eventually
> be on all shipped
> > > systems in the future so Axiom will only be able to
> be built as long
> > > as I maintain old build servers. Once my binaries
> from old build
> > > servers stop working on new systems the whole project
> will suffer.
> > >
> > > I will try to use clang in the next few days.
> > >
> > > On Mon, Jul 17, 2017 at 2:41 PM, Barry M Trager
> <address@hidden> wrote:
> > >
> > > Tim, now that you've found the problem, can't you
> just add the -no-pie compiler flag to fix it?
> > > Barry
> > >
> > >
> > >
> > > ----- Original message -----
> > > From: Tim Daly <address@hidden>
> > > To: Camm Maguire <address@hidden>, Barry M
> Trager <address@hidden>, Tim Daly <address@hidden>
> > > Cc:
> > > Subject: [Axiom] Build failures
> > > Date: Mon, Jul 17, 2017 2:21 PM
> > >
> > > I have been unable to build Axiom on Ubuntu
> on any system from
> > > 16.10 onward. The lisp build fails.
> > >
> > > I finally tracked down the problem. Some
> bright-spot thought it would
> > > be a great idea to enable PIE by default.
> > > https://wiki.ubuntu.com/SecurityTeam/PIE
> > >
> > > So essentially I cannot compile Axiom on any
> system with
> > > GCC 6.2.0 or above.
> > >
> > > This is misguided on two levels. A language
> compiler has no business
> > > trying to enforce security-related protocols.
> And the whole idea
> > > of address space layout randomization is a
> subset of the SELINUX
> > > (an NSA/SAIC hack) attempt to simulate a
> harvard architecture
> > > machine on a princeton architecture machine,
> which is failure by design.
> > >
> > > I may have to change compilers.
> > >
> > > Tim
> > >
> > >
> > >
> > >
> >
> > --
> > Camm Maguire
> address@hidden
> >
> ==========================================================================
> > "The earth is but one country, and mankind its
> citizens." -- Baha'u'llah
> >
>
> --
> Camm Maguire address@hidden
>
> ==========================================================================
> "The earth is but one country, and mankind its citizens." --
> Baha'u'llah
>
--
Camm Maguire address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
- [Axiom-developer] 20170501,
Camm Maguire <=