zsh-workers
 help / color / mirror / code / Atom feed
From: Oliver Kiddle <opk@u.genie.co.uk>
To: Zsh workers <zsh-workers@sunsite.auc.dk>
Subject: AIX and .export files again
Date: Tue, 14 Dec 1999 17:31:38 +0000	[thread overview]
Message-ID: <38567EFA.924D538D@u.genie.co.uk> (raw)

When linking compctl.so, the compiler complained that complete.export
and zle.export couldn't be found. The problem was that they hadn't been
generated yet. I couldn't see any dependencies in the Makefiles which
state the order that different modules are compiled. To fix it, I've 
hacked mkmakemod.sh to add the .export files to the dso's dependencies.

The trouble with this solution is that I can't get it to make any
.export files in a different directory so I've had to limit it to any
in the same directory. This is sufficient to allow everything to
compile but there must be a better way. Surely, if a module lists
another in its moddeps, it should be built after it. At the moment, the
modules seem to get built in alphabetical order in each directory.

I also got a few unresolved symbols. The patch sorts these out aswell.

Unfortunately, though this will now compile on AIX, it won't work: I get
messages of the form 'failed to load module: rlimits'. pws-10 has this
problem aswell but I haven't had much time to investigate why.

Oliver

diff -ur zsh-3.1.6-pws-11/Src/Zle/compcore.c zsh-3.1.6-pws-11.new/Src/Zle/compcore.c
--- zsh-3.1.6-pws-11/Src/Zle/compcore.c	Wed Dec  8 19:37:58 1999
+++ zsh-3.1.6-pws-11.new/Src/Zle/compcore.c	Tue Dec 14 14:38:56 1999
@@ -145,7 +145,7 @@
 /**/
 mod_export int nmatches;
 /**/
-int smatches;
+mod_export int smatches;
 
 /* != 0 if only explanation strings should be printed */
 
diff -ur zsh-3.1.6-pws-11/Src/Zle/compresult.c zsh-3.1.6-pws-11.new/Src/Zle/compresult.c
--- zsh-3.1.6-pws-11/Src/Zle/compresult.c	Wed Dec  8 19:32:29 1999
+++ zsh-3.1.6-pws-11.new/Src/Zle/compresult.c	Tue Dec 14 14:39:45 1999
@@ -1491,7 +1491,7 @@
 }
 
 /**/
-int asklist(void)
+mod_export int asklist(void)
 {
     /* Set the cursor below the prompt. */
     trashzle();
diff -ur zsh-3.1.6-pws-11/Src/Zle/zle_thingy.c zsh-3.1.6-pws-11.new/Src/Zle/zle_thingy.c
--- zsh-3.1.6-pws-11/Src/Zle/zle_thingy.c	Fri Dec  3 19:10:12 1999
+++ zsh-3.1.6-pws-11.new/Src/Zle/zle_thingy.c	Tue Dec 14 14:29:15 1999
@@ -49,7 +49,7 @@
 /* Hashtable of thingies.  Enabled nodes are those that refer to widgets. */
 
 /**/
-HashTable thingytab;
+mod_export HashTable thingytab;
 
 /**********************************/
 /* hashtable management functions */
diff -ur zsh-3.1.6-pws-11/Src/Zle/zle_tricky.c zsh-3.1.6-pws-11.new/Src/Zle/zle_tricky.c
--- zsh-3.1.6-pws-11/Src/Zle/zle_tricky.c	Tue Dec  7 22:20:04 1999
+++ zsh-3.1.6-pws-11.new/Src/Zle/zle_tricky.c	Tue Dec 14 14:30:01 1999
@@ -334,7 +334,7 @@
 /* Parameter pointer for completing keys of an assoc array. */
 
 /**/
-Param keypm;
+mod_export Param keypm;
 
 /* 1 if we are completing in a quoted string (or inside `...`) */
 
diff -ur zsh-3.1.6-pws-11/Src/mkmakemod.sh zsh-3.1.6-pws-11.new/Src/mkmakemod.sh
--- zsh-3.1.6-pws-11/Src/mkmakemod.sh	Fri Dec  3 19:10:12 1999
+++ zsh-3.1.6-pws-11.new/Src/mkmakemod.sh	Tue Dec 14 15:34:44 1999
@@ -183,9 +183,12 @@
 	dobjects=`echo $objects '' | sed 's,\.o ,..o ,g'`
 	modhdeps=
 	imports=
+	depimports=
 	for dep in $moddeps; do
 	    eval "loc=\$loc_$dep"
 	    imports="$imports \$(IMPOPT)\$(dir_top)/$loc/$dep.export"
+	    test "$loc" = "$the_subdir" &&
+	        depimports="$depimports $dep.export"
 	    case $the_subdir in
 		$loc)
 		    mdh="${dep}.mdh"
@@ -228,7 +231,7 @@
 	echo "	echo '' \$(MODOBJS_${module}) $modobjs_sed>> \$(dir_src)/stamp-modobjs.tmp"
 	echo
 	if test -z "$alwayslink"; then
-	    echo "${module}.\$(DL_EXT): \$(MODDOBJS_${module}) ${module}.export"
+	    echo "${module}.\$(DL_EXT): \$(MODDOBJS_${module}) ${module}.export $depimports"
 	    echo '	rm -f $@'
 	    echo "	\$(DLLINK) \$(@E@XPIMP_$module) \$(@E@NTRYOPT) \$(MODDOBJS_${module}) \$(LIBS)"
 	    echo


             reply	other threads:[~1999-12-14 17:31 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-12-14 17:31 Oliver Kiddle [this message]
1999-12-15 18:12 ` Bart Schaefer
1999-12-16 16:07 ` PATCH: " Oliver Kiddle

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=38567EFA.924D538D@u.genie.co.uk \
    --to=opk@u.genie.co.uk \
    --cc=zsh-workers@sunsite.auc.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).