about summary refs log tree commit diff
path: root/Src/makepro.awk
diff options
context:
space:
mode:
authorTanaka Akira <akr@users.sourceforge.net>1999-12-01 18:35:59 +0000
committerTanaka Akira <akr@users.sourceforge.net>1999-12-01 18:35:59 +0000
commita4e44197ae0f6e237f118e5b30c01eb12c460ec4 (patch)
treefb6a23f8a1eaaba1e97869ca54245e5bd986045e /Src/makepro.awk
parent2c5eaba1971c212412eb212184ee724cf7d0ac70 (diff)
downloadzsh-a4e44197ae0f6e237f118e5b30c01eb12c460ec4.tar.gz
zsh-a4e44197ae0f6e237f118e5b30c01eb12c460ec4.tar.xz
zsh-a4e44197ae0f6e237f118e5b30c01eb12c460ec4.zip
zsh-workers/8843
Diffstat (limited to 'Src/makepro.awk')
-rw-r--r--Src/makepro.awk7
1 files changed, 6 insertions, 1 deletions
diff --git a/Src/makepro.awk b/Src/makepro.awk
index 98167fcad..350b2f9c8 100644
--- a/Src/makepro.awk
+++ b/Src/makepro.awk
@@ -77,13 +77,14 @@ BEGIN {
 	    break
     }
     sub(/^ */, "", line)
-    match(line, /^((const|enum|static|struct|union) +)*([_0-9A-Za-z]+ +|((char|double|float|int|long|short|unsigned|void) +)+)((const|static) +)*/)
+    match(line, /^((const|enum|mod_export|static|struct|union) +)*([_0-9A-Za-z]+ +|((char|double|float|int|long|short|unsigned|void) +)+)((const|static) +)*/)
     dtype = substr(line, 1, RLENGTH)
     sub(/ *$/, "", dtype)
     if(" " dtype " " ~ / static /)
 	locality = "L"
     else
 	locality = "E"
+    exported = " " dtype " " ~ / mod_export /
     line = substr(line, RLENGTH+1) ","
     # Handle each declarator.
     while(match(line, /^[^,]*,/)) {
@@ -117,6 +118,10 @@ BEGIN {
 	    printf "%s# endif\n", locality
 	}
 
+	# If this is exported, add it to the exported symbol list.
+	if(exported)
+	    printf "X%s\n", dnam
+
 	# Format the declaration for output
 	dcl = dtype " " dcltor ";"
 	if(locality ~ /E/)