Skip to content

Commit 11d017e

Browse files
authored
Merge pull request #154 from Parallel-NetCDF/DESTDIR
fix install path when DESTDIR is used in make install command line
2 parents 121658c + 6caca71 commit 11d017e

File tree

13 files changed

+145
-7
lines changed

13 files changed

+145
-7
lines changed

.github/workflows/mac_mpich.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,11 +98,25 @@ jobs:
9898
run: |
9999
cd ${GITHUB_WORKSPACE}
100100
make -j 8 distcheck DISTCHECK_CONFIGURE_FLAGS="--silent --with-mpi=${GITHUB_WORKSPACE}/MPICH"
101+
- name: make install
102+
run: |
103+
cd ${GITHUB_WORKSPACE}
104+
prefix_path=${GITHUB_WORKSPACE}/pnetcdf_install
105+
echo "---- test make install prefix=${prefix_path}"
106+
make install prefix=${prefix_path}
107+
test/tst_install.sh ${prefix_path}
108+
prefix_path=pnetcdf_install
109+
destdir_path=${GITHUB_WORKSPACE}/inst/
110+
echo "---- test make install prefix=${prefix_path} DESTDIR=${destdir_path}"
111+
make install prefix=${prefix_path} DESTDIR=${destdir_path}
112+
test/tst_install.sh ${destdir_path}${prefix_path}
101113
- name: Cleanup
102114
if: ${{ always() }}
103115
run: |
104116
cd ${GITHUB_WORKSPACE}
105117
make -s distclean
106118
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_output
107119
rm -rf ${GITHUB_WORKSPACE}/MPICH
120+
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_install
121+
rm -rf ${GITHUB_WORKSPACE}/inst
108122

.github/workflows/mac_openmpi.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,25 @@ jobs:
101101
run: |
102102
cd ${GITHUB_WORKSPACE}
103103
make -j 8 distcheck DISTCHECK_CONFIGURE_FLAGS="--silent --with-mpi=${GITHUB_WORKSPACE}/OPENMPI"
104+
- name: make install
105+
run: |
106+
cd ${GITHUB_WORKSPACE}
107+
prefix_path=${GITHUB_WORKSPACE}/pnetcdf_install
108+
echo "---- test make install prefix=${prefix_path}"
109+
make install prefix=${prefix_path}
110+
test/tst_install.sh ${prefix_path}
111+
prefix_path=pnetcdf_install
112+
destdir_path=${GITHUB_WORKSPACE}/inst/
113+
echo "---- test make install prefix=${prefix_path} DESTDIR=${destdir_path}"
114+
make install prefix=${prefix_path} DESTDIR=${destdir_path}
115+
test/tst_install.sh ${destdir_path}${prefix_path}
104116
- name: Cleanup
105117
if: ${{ always() }}
106118
run: |
107119
cd ${GITHUB_WORKSPACE}
108120
make -s distclean
109121
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_output
110122
rm -rf ${GITHUB_WORKSPACE}/OPENMPI
123+
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_install
124+
rm -rf ${GITHUB_WORKSPACE}/inst
111125

.github/workflows/ubuntu_mpich.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,10 +110,25 @@ jobs:
110110
run: |
111111
cd ${GITHUB_WORKSPACE}
112112
make -j 8 distcheck DISTCHECK_CONFIGURE_FLAGS="--silent --with-mpi=${GITHUB_WORKSPACE}/MPICH"
113+
- name: make install
114+
run: |
115+
cd ${GITHUB_WORKSPACE}
116+
prefix_path=${GITHUB_WORKSPACE}/pnetcdf_install
117+
echo "---- test make install prefix=${prefix_path}"
118+
make install prefix=${prefix_path}
119+
test/tst_install.sh ${prefix_path}
120+
prefix_path=pnetcdf_install
121+
destdir_path=${GITHUB_WORKSPACE}/inst/
122+
echo "---- test make install prefix=${prefix_path} DESTDIR=${destdir_path}"
123+
make install prefix=${prefix_path} DESTDIR=${destdir_path}
124+
test/tst_install.sh ${destdir_path}${prefix_path}
113125
- name: Cleanup
114126
if: ${{ always() }}
115127
run: |
116128
cd ${GITHUB_WORKSPACE}
117129
make -s distclean
130+
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_output
118131
rm -rf ${GITHUB_WORKSPACE}/MPICH
132+
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_install
133+
rm -rf ${GITHUB_WORKSPACE}/inst
119134

.github/workflows/ubuntu_openmpi.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,11 +107,25 @@ jobs:
107107
run: |
108108
cd ${GITHUB_WORKSPACE}
109109
make -j 8 distcheck DISTCHECK_CONFIGURE_FLAGS="--silent --with-mpi=${GITHUB_WORKSPACE}/OPENMPI"
110+
- name: make install
111+
run: |
112+
cd ${GITHUB_WORKSPACE}
113+
prefix_path=${GITHUB_WORKSPACE}/pnetcdf_install
114+
echo "---- test make install prefix=${prefix_path}"
115+
make install prefix=${prefix_path}
116+
test/tst_install.sh ${prefix_path}
117+
prefix_path=pnetcdf_install
118+
destdir_path=${GITHUB_WORKSPACE}/inst/
119+
echo "---- test make install prefix=${prefix_path} DESTDIR=${destdir_path}"
120+
make install prefix=${prefix_path} DESTDIR=${destdir_path}
121+
test/tst_install.sh ${destdir_path}${prefix_path}
110122
- name: Cleanup
111123
if: ${{ always() }}
112124
run: |
113125
cd ${GITHUB_WORKSPACE}
114126
make -s distclean
115127
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_output
116128
rm -rf ${GITHUB_WORKSPACE}/OPENMPI
129+
rm -rf ${GITHUB_WORKSPACE}/pnetcdf_install
130+
rm -rf ${GITHUB_WORKSPACE}/inst
117131

Makefile.am

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,14 @@ check-local:
6161
@echo '| All sequential test programs have run successfully.'
6262
@echo '|'
6363

64+
# Note on DESTDIR. GNU autoconf manual Section 16.4 Installation Names has the
65+
# following statement. "The second method involves providing the 'DESTDIR'
66+
# variable. For example, 'make install DESTDIR=/alternate/directory' will
67+
# prepend '/alternate/directory' before all installation names. The approach of
68+
# 'DESTDIR' overrides is not required by the GNU Coding Standards, and does not
69+
# work on platforms that have drive letters. On the other hand, it does better
70+
# at avoiding recompilation issues, and works well even when some directory
71+
# options were not specified in terms of '${prefix}' at configure time."
6472
install-data-hook:
6573
@echo '+----------------------------------------------------------------------------+'
6674
@echo '|'

configure.ac

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,11 @@ echo '' >& AS_MESSAGE_LOG_FD
3939

4040
dnl Note getting command line should be done before calling AM_INIT_AUTOMAKE
4141
dnl as AM_INIT_AUTOMAKE modifies command line $*
42-
CONFIGURE_ARGS_CLEAN=`echo $* | tr '"' ' '`
42+
if test "x$ac_configure_args_raw" = x ; then
43+
CONFIGURE_ARGS_CLEAN=`echo $* | tr '"' ' '`
44+
else
45+
CONFIGURE_ARGS_CLEAN=$ac_configure_args_raw
46+
fi
4347

4448
dnl automake version 1.16.5 was released in 2021-10-03
4549
dnl AM_INIT_AUTOMAKE([subdir-objects])

examples/C/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ check_PROGRAMS = collective_write \
4343

4444
if INSTALL_EXAMPLES
4545
example_execbin_PROGRAMS = $(check_PROGRAMS)
46-
example_execbindir = $(exec_prefix)/pnetcdf_examples/C
46+
example_execbindir = $(DESTDIR)$(exec_prefix)/pnetcdf_examples/C
4747
example_execbin_SCRIPTS = run_c_examples.sh
4848
endif
4949

examples/CXX/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ check_PROGRAMS = collective_write \
3232

3333
if INSTALL_EXAMPLES
3434
example_execbin_PROGRAMS = $(check_PROGRAMS)
35-
example_execbindir = $(exec_prefix)/pnetcdf_examples/CXX
35+
example_execbindir = $(DESTDIR)$(exec_prefix)/pnetcdf_examples/CXX
3636
example_execbin_SCRIPTS = run_cxx_examples.sh
3737
endif
3838

examples/F77/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ check_PROGRAMS = nonblocking_write \
5252

5353
if INSTALL_EXAMPLES
5454
example_execbin_PROGRAMS = $(check_PROGRAMS)
55-
example_execbindir = $(exec_prefix)/pnetcdf_examples/F77
55+
example_execbindir = $(DESTDIR)$(exec_prefix)/pnetcdf_examples/F77
5656
example_execbin_SCRIPTS = run_f77_examples.sh
5757
endif
5858

examples/F90/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ check_PROGRAMS = nonblocking_write \
4141

4242
if INSTALL_EXAMPLES
4343
example_execbin_PROGRAMS = $(check_PROGRAMS)
44-
example_execbindir = $(exec_prefix)/pnetcdf_examples/F90
44+
example_execbindir = $(DESTDIR)$(exec_prefix)/pnetcdf_examples/F90
4545
example_execbin_SCRIPTS = run_f90_examples.sh
4646
endif
4747

0 commit comments

Comments
 (0)