From 2de28c8cf3effab7c3a3cfef89362122861de659 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Tue, 16 Jun 2020 20:07:26 -0600 Subject: [PATCH] bc: update install for librktio.a When linking with libracket.a or libracket3m.a, librktio.a is needed. (The instructions in "Inside" have apparently been wrong since rktio was split out.) --- .../scribblings/inside/embedding.scrbl | 17 ++++++++++------- racket/src/cfg-racket | 9 ++++----- racket/src/racket/Makefile.in | 2 ++ racket/src/racket/configure.ac | 9 ++++----- 4 files changed, 20 insertions(+), 17 deletions(-) diff --git a/pkgs/racket-doc/scribblings/inside/embedding.scrbl b/pkgs/racket-doc/scribblings/inside/embedding.scrbl index d6b61880a7..4ec08016a4 100644 --- a/pkgs/racket-doc/scribblings/inside/embedding.scrbl +++ b/pkgs/racket-doc/scribblings/inside/embedding.scrbl @@ -25,11 +25,14 @@ To embed Racket CGC in a program, follow these steps: standard distribution provides 3m libraries, only, you will most likely have to @seclink["src-build"]{build from source}. - On Unix, the libraries are @as-index{@filepath{libracket.a}} + On Unix, the libraries are @as-index{@filepath{libracket.a}}, + @as-index{@filepath{librktio.a}}, and @as-index{@filepath{libmzgc.a}} (or - @as-index{@filepath{libracket.so}} and + @as-index{@filepath{libracket.so}}, + @as-index{@filepath{librrktio.so}}, and @as-index{@filepath{libmzgc.so}} for a dynamic-library build, with - @as-index{@filepath{libracket.la}} and + @as-index{@filepath{libracket.la}}, + @as-index{@filepath{librktio.la}}, and @as-index{@filepath{libmzgc.la}} files for use with @exec{libtool}). Building from source and installing places the libraries into the installation's @filepath{lib} directory. Be sure @@ -310,10 +313,10 @@ In addition, some library details are different: @itemize[ - @item{On Unix, the library is just - @as-index{@filepath{libracket3m.a}} (or - @as-index{@filepath{libracket3m.so}} for a dynamic-library build, - with @as-index{@filepath{libracket3m.la}} for use with + @item{On Unix, the libraries are just + @as-index{@filepath{libracket3m.a}} and @as-index{@filepath{librrktio.a}} (or + @as-index{@filepath{libracket3m.so}} and @as-index{@filepath{librktio.so}} for a dynamic-library build, + with @as-index{@filepath{libracket3m.la}} and @as-index{@filepath{librktio.la}} for use with @exec{libtool}). There is no separate library for 3m analogous to CGC's @filepath{libmzgc.a}.} diff --git a/racket/src/cfg-racket b/racket/src/cfg-racket index 321479a48f..8a099d2031 100755 --- a/racket/src/cfg-racket +++ b/racket/src/cfg-racket @@ -5067,11 +5067,6 @@ $as_echo "#define HAVE_STDINT_H 1" >>confdefs.h # Use -Wno-nullability-completeness if supported try_no_nullability_completeness=yes - # ".a" is typically not useful, since we always build a ".dylib": - if test "${enable_libs}" = "" ; then - INSTALL_LIBS_ENABLE=no-install - fi - SO_SUFFIX=.dylib if test "${need_cc_in_extras}" = "yes" ; then @@ -5112,6 +5107,10 @@ $as_echo "#define HAVE_STDINT_H 1" >>confdefs.h if test "${enable_embedfw}" = "yes" ; then strip_needs_dash_s=yes fi + # ".a" is typically not useful, since we always build a ".dylib": + if test "${enable_libs}" = "" ; then + INSTALL_LIBS_ENABLE=no-install + fi else PREFLAGS="$PREFLAGS -DXONX " LIBS="$LIBS -framework CoreFoundation" diff --git a/racket/src/racket/Makefile.in b/racket/src/racket/Makefile.in index 03b3743b97..ca1401b513 100644 --- a/racket/src/racket/Makefile.in +++ b/racket/src/racket/Makefile.in @@ -428,6 +428,7 @@ unix-install-cgc: unix-install-libs-cgc: cd ..; $(ICP_LIB) racket/libmzgc.@LIBSFX@ "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@" cd ..; $(ICP_LIB) racket/libracket.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket.@LIBSFX@" + cd ..; $(ICP_LIB) rktio/librktio.@LIBSFX@ "$(DESTDIR)$(libdir)/librktio.@LIBSFX@" cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libmzgc.@LIBSFX@" cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libracket.@LIBSFX@" @@ -446,6 +447,7 @@ unix-install-3m: unix-install-libs-3m: cd ..; $(ICP_LIB) racket/libracket3m.@LIBSFX@ "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@" + cd ..; $(ICP_LIB) rktio/librktio.@LIBSFX@ "$(DESTDIR)$(libdir)/librktio.@LIBSFX@" cd ..; $(STRIP_LIB_DEBUG) "$(DESTDIR)$(libdir)/libracket3m.@LIBSFX@" unix-no-install-libs-3m: diff --git a/racket/src/racket/configure.ac b/racket/src/racket/configure.ac index a2f43a9a87..92df52d877 100644 --- a/racket/src/racket/configure.ac +++ b/racket/src/racket/configure.ac @@ -713,11 +713,6 @@ case "$host_os" in # Use -Wno-nullability-completeness if supported try_no_nullability_completeness=yes - # ".a" is typically not useful, since we always build a ".dylib": - if test "${enable_libs}" = "" ; then - INSTALL_LIBS_ENABLE=no-install - fi - SO_SUFFIX=.dylib if test "${need_cc_in_extras}" = "yes" ; then @@ -758,6 +753,10 @@ case "$host_os" in if test "${enable_embedfw}" = "yes" ; then strip_needs_dash_s=yes fi + # ".a" is typically not useful, since we always build a ".dylib": + if test "${enable_libs}" = "" ; then + INSTALL_LIBS_ENABLE=no-install + fi else PREFLAGS="$PREFLAGS -DXONX " LIBS="$LIBS -framework CoreFoundation"