Only export symbols starting with razor_ in dynamic library.
Apart from being good practice to avoid clashes with higher-level
libraries and the application, this also fixes an obscure bug: The
gnulib library is used both by librazor (the dynamic library) and
by razor (the executable). In doing so, we want to have two separate
copies of the library despite the code duplication this involves.
Without the explicit limit to export only razor_ symbols, the razor
executable under mingw64 was picking up the getopt_long function
from librazor and the optind variable from libgnu which meant that
it did not see optind changing. Hiding librazor's copy of getopt
causes the linker to find libgnu's copy and everything works.
Note that under mingw librazor-#.dll still contains undocumented
(private) razor_ symbols but these will do no harm as long as nobody
tries to use them.
1 ## Process this file with automake to produce Makefile.in
3 check_SCRIPTS = relocate named-root remove update details
5 check_SCRIPTS += lua mult-install
9 relocate: relocate.sh primary.xml.gz
10 cp $(srcdir)/relocate.sh relocate
12 named-root: named-root.sh primary.xml.gz
13 cp $(srcdir)/named-root.sh named-root
15 remove: remove.sh primary.xml.gz
16 cp $(srcdir)/remove.sh remove
18 update: update.sh base/repodata/primary.xml.gz updates/repodata/primary.xml.gz
19 cp $(srcdir)/update.sh update
21 details: details.sh primary.xml.gz
22 cp $(srcdir)/details.sh details
24 order: order.sh primary.xml.gz
25 cp $(srcdir)/order.sh order
27 lua: lua.sh primary.xml.gz
28 cp $(srcdir)/lua.sh lua
30 mult-install: mult-install.sh primary.xml.gz
31 cp $(srcdir)/mult-install.sh mult-install
33 base/repodata/primary.xml.gz: zsh.spec zsh2.spec zip.spec zap.spec \
34 filesystem.spec Makefile
36 mkdir -p rpmbuild/BUILD rpmbuild/RPMS
37 rpmbuild --define "_topdir `pwd`/rpmbuild" -bb $(srcdir)/zap.spec
38 rpmbuild --define "_topdir `pwd`/rpmbuild" --define "_version 1" \
39 -bb $(srcdir)/zip.spec
40 rpmbuild --define "_topdir `pwd`/rpmbuild" -bb $(srcdir)/zsh.spec
41 rpmbuild --define "_topdir `pwd`/rpmbuild" -bb $(srcdir)/zsh2.spec
42 rpmbuild --define "_topdir `pwd`/rpmbuild" -bb $(srcdir)/filesystem.spec
44 mv rpmbuild/RPMS/noarch/*.rpm base/rpms
46 createrepo --simple-md-filenames -o base base/rpms
48 updates/repodata/primary.xml.gz: zip.spec Makefile
49 rm -rf rpmbuild updates
50 mkdir -p rpmbuild/BUILD rpmbuild/RPMS
51 rpmbuild --define "_topdir `pwd`/rpmbuild" --define "_version 2" \
52 -bb $(srcdir)/zip.spec
54 mv rpmbuild/RPMS/noarch/*.rpm updates/rpms
56 createrepo --simple-md-filenames -o updates updates/rpms
58 primary.xml.gz: base/repodata/primary.xml.gz
59 cp base/repodata/primary.xml.gz base/repodata/filelists.xml.gz .
63 TESTS = $(check_SCRIPTS)
90 rm -rf repodata rpms base updates