Skip to content

Commit e5f5a66

Browse files
author
jan.nijtmans
committed
Fix [1cf49a0926] and [3161b74ca7]: Install man-pages and pkg-config on Windows
2 parents 4434a52 + 011382e commit e5f5a66

File tree

6 files changed

+46
-4
lines changed

6 files changed

+46
-4
lines changed

.fossil-settings/ignore-glob

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ unix/Tclsh-Info.plist
6161
unix/pkgs/*
6262
win/Debug*
6363
win/Release*
64+
win/tcl.pc
6465
win/*.manifest
6566
win/pkgs/*
6667
win/coffbase.txt

.github/workflows/win-build.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,9 @@ jobs:
103103
- name: Run Tests
104104
run: make test
105105
timeout-minutes: 30
106+
- name: Install
107+
run: make install
108+
timeout-minutes: 5
106109

107110
# If you add builds with Wine, be sure to define the environment variable
108111
# CI_USING_WINE when running them so that broken tests know not to run.

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,5 +62,6 @@ win/*.manifest
6262
win/pkgs/*
6363
win/coffbase.txt
6464
win/tcl.hpj
65+
win/tcl.pc
6566
win/nmakehlp.out
6667
win/nmhlp-out.txt

win/Makefile.in

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ ROOT_DIR = @srcdir@/..
106106
TOP_DIR = $(shell cd @srcdir@/..; pwd -W 2>/dev/null || pwd -P)
107107
GENERIC_DIR = $(TOP_DIR)/generic
108108
WIN_DIR = $(TOP_DIR)/win
109+
UNIX_DIR = $(TOP_DIR)/unix
109110
COMPAT_DIR = $(TOP_DIR)/compat
110111
PKGS_DIR = $(TOP_DIR)/pkgs
111112
ZLIB_DIR = $(COMPAT_DIR)/zlib
@@ -210,6 +211,11 @@ SHELL = @SHELL@
210211
RM = rm -f
211212
COPY = cp
212213
GDB = gdb
214+
INSTALL = $(SHELL) $(UNIX_DIR)/install-sh -c
215+
INSTALL_PROGRAM = ${INSTALL}
216+
INSTALL_LIBRARY = ${INSTALL}
217+
INSTALL_DATA = ${INSTALL} -m 644
218+
INSTALL_DATA_DIR = ${INSTALL} -d -m 755
213219

214220
CC_SWITCHES = -I"${GENERIC_DIR_NATIVE}" -I"${TOMMATH_DIR_NATIVE}" \
215221
-I"${ZLIB_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" \
@@ -701,6 +707,9 @@ install-binaries: binaries
701707
echo Installing $(REG_LIB_FILE); \
702708
$(COPY) $(REG_LIB_FILE) "$(LIB_INSTALL_DIR)/reg${REGDOTVER}"; \
703709
fi
710+
@echo "Installing pkg-config file to $(LIB_INSTALL_DIR)/pkgconfig/"
711+
@$(INSTALL_DATA_DIR) "$(LIB_INSTALL_DIR)/pkgconfig"
712+
@$(INSTALL_DATA) tcl.pc "$(LIB_INSTALL_DIR)/pkgconfig/tcl.pc"
704713

705714
install-libraries: libraries install-tzdata install-msgs
706715
@for i in "$(prefix)/lib" "$(INCLUDE_INSTALL_DIR)" \
@@ -778,7 +787,29 @@ install-msgs:
778787
"$(ROOT_DIR)/library/msgs" "$(SCRIPT_INSTALL_DIR_NATIVE)/msgs"
779788

780789
install-doc: doc
781-
790+
@for i in "$(MAN_INSTALL_DIR)" "$(MAN1_INSTALL_DIR)" "$(MAN3_INSTALL_DIR)" "$(MANN_INSTALL_DIR)" ; \
791+
do \
792+
if [ ! -d "$$i" ] ; then \
793+
echo "Making directory $$i"; \
794+
$(INSTALL_DATA_DIR) "$$i"; \
795+
else true; \
796+
fi; \
797+
done;
798+
@echo "Installing and cross-linking top-level (.1) docs to $(MAN1_INSTALL_DIR)/";
799+
@for i in $(TOP_DIR)/doc/*.1; do \
800+
$(SHELL) $(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i "$(MAN1_INSTALL_DIR)"; \
801+
done
802+
803+
@echo "Installing and cross-linking C API (.3) docs to $(MAN3_INSTALL_DIR)/";
804+
@for i in $(TOP_DIR)/doc/*.3; do \
805+
$(SHELL) $(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i "$(MAN3_INSTALL_DIR)"; \
806+
done
807+
808+
@echo "Installing and cross-linking command (.n) docs to $(MANN_INSTALL_DIR)/";
809+
@for i in $(TOP_DIR)/doc/*.n; do \
810+
$(SHELL) $(UNIX_DIR)/installManPage $(MAN_FLAGS) $$i "$(MANN_INSTALL_DIR)"; \
811+
done
812+
782813
# Optional target to install private headers
783814
install-private-headers: libraries
784815
@for i in $(PRIVATE_INCLUDE_INSTALL_DIR); \

win/configure

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ ac_includes_default="\
309309
# include <unistd.h>
310310
#endif"
311311

312-
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AR ac_ct_AR RANLIB ac_ct_RANLIB RC ac_ct_RC SET_MAKE TCL_THREADS CYGPATH CELIB_DIR DL_LIBS CFLAGS_DEBUG CFLAGS_OPTIMIZE CFLAGS_WARNING CFLAGS_NOLTO ZLIB_DLL_FILE ZLIB_LIBS ZLIB_OBJS TCL_ZLIB_LIB_NAME CFLAGS_DEFAULT LDFLAGS_DEFAULT VC_MANIFEST_EMBED_DLL VC_MANIFEST_EMBED_EXE TCL_WIN_VERSION MACHINE TCL_VERSION TCL_MAJOR_VERSION TCL_MINOR_VERSION TCL_PATCH_LEVEL PKG_CFG_ARGS TCL_EXE TCL_LIB_FILE TCL_LIB_FLAG TCL_STATIC_LIB_FILE TCL_STATIC_LIB_FLAG TCL_IMPORT_LIB_FILE TCL_IMPORT_LIB_FLAG TCL_LIB_SPEC TCL_STUB_LIB_FILE TCL_STUB_LIB_FLAG TCL_STUB_LIB_SPEC TCL_STUB_LIB_PATH TCL_INCLUDE_SPEC TCL_BUILD_STUB_LIB_SPEC TCL_BUILD_STUB_LIB_PATH TCL_DLL_FILE TCL_SRC_DIR TCL_BIN_DIR TCL_DBGX CFG_TCL_SHARED_LIB_SUFFIX CFG_TCL_UNSHARED_LIB_SUFFIX EXTRA_CFLAGS DEPARG CC_OBJNAME CC_EXENAME LDFLAGS_DEBUG LDFLAGS_OPTIMIZE LDFLAGS_CONSOLE LDFLAGS_WINDOW STLIB_LD SHLIB_LD SHLIB_LD_LIBS SHLIB_CFLAGS SHLIB_SUFFIX TCL_SHARED_BUILD LIBS_GUI DLLSUFFIX LIBPREFIX LIBSUFFIX EXESUFFIX LIBRARIES MAKE_LIB MAKE_STUB_LIB POST_MAKE_LIB MAKE_DLL MAKE_EXE TCL_BUILD_LIB_SPEC TCL_CC_SEARCH_FLAGS TCL_LD_SEARCH_FLAGS TCL_BUILD_EXP_FILE TCL_EXP_FILE TCL_PACKAGE_PATH TCL_DDE_VERSION TCL_DDE_MAJOR_VERSION TCL_DDE_MINOR_VERSION TCL_REG_VERSION TCL_REG_MAJOR_VERSION TCL_REG_MINOR_VERSION RC_OUT RC_TYPE RC_INCLUDE RC_DEFINE RC_DEFINES RES LIBOBJS LTLIBOBJS'
312+
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AR ac_ct_AR RANLIB ac_ct_RANLIB RC ac_ct_RC SET_MAKE TCL_THREADS CYGPATH CELIB_DIR DL_LIBS CFLAGS_DEBUG CFLAGS_OPTIMIZE CFLAGS_WARNING CFLAGS_NOLTO ZLIB_DLL_FILE ZLIB_LIBS ZLIB_OBJS TCL_ZLIB_LIB_NAME CFLAGS_DEFAULT LDFLAGS_DEFAULT VC_MANIFEST_EMBED_DLL VC_MANIFEST_EMBED_EXE TCL_WIN_VERSION MACHINE TCL_VERSION TCL_MAJOR_VERSION TCL_MINOR_VERSION TCL_PATCH_LEVEL PKG_CFG_ARGS TCL_EXE TCL_LIB_FILE TCL_LIB_FLAG TCL_STATIC_LIB_FILE TCL_STATIC_LIB_FLAG TCL_IMPORT_LIB_FILE TCL_IMPORT_LIB_FLAG TCL_LIBS TCL_LIB_SPEC TCL_STUB_LIB_FILE TCL_STUB_LIB_FLAG TCL_STUB_LIB_SPEC TCL_STUB_LIB_PATH TCL_INCLUDE_SPEC TCL_BUILD_STUB_LIB_SPEC TCL_BUILD_STUB_LIB_PATH TCL_DLL_FILE TCL_SRC_DIR TCL_BIN_DIR TCL_DBGX CFG_TCL_SHARED_LIB_SUFFIX CFG_TCL_UNSHARED_LIB_SUFFIX EXTRA_CFLAGS DEPARG CC_OBJNAME CC_EXENAME LDFLAGS_DEBUG LDFLAGS_OPTIMIZE LDFLAGS_CONSOLE LDFLAGS_WINDOW STLIB_LD SHLIB_LD SHLIB_LD_LIBS SHLIB_CFLAGS SHLIB_SUFFIX TCL_SHARED_BUILD LIBS_GUI DLLSUFFIX LIBPREFIX LIBSUFFIX EXESUFFIX LIBRARIES MAKE_LIB MAKE_STUB_LIB POST_MAKE_LIB MAKE_DLL MAKE_EXE TCL_BUILD_LIB_SPEC TCL_CC_SEARCH_FLAGS TCL_LD_SEARCH_FLAGS TCL_BUILD_EXP_FILE TCL_EXP_FILE TCL_PACKAGE_PATH TCL_DDE_VERSION TCL_DDE_MAJOR_VERSION TCL_DDE_MINOR_VERSION TCL_REG_VERSION TCL_REG_MAJOR_VERSION TCL_REG_MINOR_VERSION RC_OUT RC_TYPE RC_INCLUDE RC_DEFINE RC_DEFINES RES LIBOBJS LTLIBOBJS'
313313
ac_subst_files=''
314314

315315
# Initialize some variables set by options.
@@ -5368,6 +5368,7 @@ eval "TCL_SRC_DIR=\"`cd $srcdir/..; $CYGPATH $(pwd)`\""
53685368
53695369
eval "TCL_DLL_FILE=tcl${VER}${DLLSUFFIX}"
53705370
5371+
eval "TCL_LIB_FLAG=\"-ltcl${VER}${LIBFLAGSUFFIX}\""
53715372
eval "TCL_STUB_LIB_FILE=\"${LIBPREFIX}tclstub${VER}${LIBSUFFIX}\""
53725373
eval "TCL_STUB_LIB_FLAG=\"-ltclstub${VER}${LIBFLAGSUFFIX}\""
53735374
eval "TCL_BUILD_STUB_LIB_SPEC=\"-L`$CYGPATH $(pwd)` ${TCL_STUB_LIB_FLAG}\""
@@ -5474,6 +5475,7 @@ TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.`echo $TCL_PATCH_LEVEL | tr -d
54745475
54755476
54765477
5478+
54775479
# win/tcl.m4 doesn't set (CFLAGS)
54785480
54795481
@@ -5536,7 +5538,7 @@ TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.`echo $TCL_PATCH_LEVEL | tr -d
55365538
55375539
55385540
5539-
ac_config_files="$ac_config_files Makefile tclConfig.sh tcl.hpj tclsh.exe.manifest"
5541+
ac_config_files="$ac_config_files Makefile tclConfig.sh tcl.hpj tclsh.exe.manifest tcl.pc:../unix/tcl.pc.in"
55405542
55415543
cat >confcache <<\_ACEOF
55425544
# This file is a shell script that caches the results of configure
@@ -6092,6 +6094,7 @@ do
60926094
"tclConfig.sh" ) CONFIG_FILES="$CONFIG_FILES tclConfig.sh" ;;
60936095
"tcl.hpj" ) CONFIG_FILES="$CONFIG_FILES tcl.hpj" ;;
60946096
"tclsh.exe.manifest" ) CONFIG_FILES="$CONFIG_FILES tclsh.exe.manifest" ;;
6097+
"tcl.pc" ) CONFIG_FILES="$CONFIG_FILES tcl.pc:../unix/tcl.pc.in" ;;
60956098
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
60966099
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
60976100
{ (exit 1); exit 1; }; };;
@@ -6221,6 +6224,7 @@ s,@TCL_STATIC_LIB_FILE@,$TCL_STATIC_LIB_FILE,;t t
62216224
s,@TCL_STATIC_LIB_FLAG@,$TCL_STATIC_LIB_FLAG,;t t
62226225
s,@TCL_IMPORT_LIB_FILE@,$TCL_IMPORT_LIB_FILE,;t t
62236226
s,@TCL_IMPORT_LIB_FLAG@,$TCL_IMPORT_LIB_FLAG,;t t
6227+
s,@TCL_LIBS@,$TCL_LIBS,;t t
62246228
s,@TCL_LIB_SPEC@,$TCL_LIB_SPEC,;t t
62256229
s,@TCL_STUB_LIB_FILE@,$TCL_STUB_LIB_FILE,;t t
62266230
s,@TCL_STUB_LIB_FLAG@,$TCL_STUB_LIB_FLAG,;t t

win/configure.in

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,6 +331,7 @@ eval "TCL_SRC_DIR=\"`cd $srcdir/..; $CYGPATH $(pwd)`\""
331331

332332
eval "TCL_DLL_FILE=tcl${VER}${DLLSUFFIX}"
333333

334+
eval "TCL_LIB_FLAG=\"-ltcl${VER}${LIBFLAGSUFFIX}\""
334335
eval "TCL_STUB_LIB_FILE=\"${LIBPREFIX}tclstub${VER}${LIBSUFFIX}\""
335336
eval "TCL_STUB_LIB_FLAG=\"-ltclstub${VER}${LIBFLAGSUFFIX}\""
336337
eval "TCL_BUILD_STUB_LIB_SPEC=\"-L`$CYGPATH $(pwd)` ${TCL_STUB_LIB_FLAG}\""
@@ -421,6 +422,7 @@ AC_SUBST(TCL_STATIC_LIB_FLAG)
421422
AC_SUBST(TCL_IMPORT_LIB_FILE)
422423
AC_SUBST(TCL_IMPORT_LIB_FLAG)
423424
# empty on win
425+
AC_SUBST(TCL_LIBS)
424426
AC_SUBST(TCL_LIB_SPEC)
425427
AC_SUBST(TCL_STUB_LIB_FILE)
426428
AC_SUBST(TCL_STUB_LIB_FLAG)
@@ -499,7 +501,7 @@ AC_SUBST(RC_DEFINE)
499501
AC_SUBST(RC_DEFINES)
500502
AC_SUBST(RES)
501503

502-
AC_CONFIG_FILES([Makefile tclConfig.sh tcl.hpj tclsh.exe.manifest])
504+
AC_CONFIG_FILES([Makefile tclConfig.sh tcl.hpj tclsh.exe.manifest tcl.pc:../unix/tcl.pc.in])
503505
AC_OUTPUT
504506

505507
dnl Local Variables:

0 commit comments

Comments
 (0)