Add visibility defines
authorRoland Schulz <roland@utk.edu>
Fri, 16 Nov 2012 15:56:04 +0000 (10:56 -0500)
committerGerrit Code Review <gerrit@gerrit.gromacs.org>
Tue, 27 Nov 2012 16:46:10 +0000 (17:46 +0100)
commit792f6b06a87085499ec82b86792ce88a4fecec57
tree92810dbbc5148fb2f39b86b55ed9958bb5355018
parent6e2cdb70b763951245260073e3fe53e12a177399
Add visibility defines

This adds visibility declarations for functions and variables used
outside of a library. This enables shared linking on Windows and
thus makes the binaries much smaller. It doesn't effect any other
build because the defines are set to empty by default.

With GCC the correctness can be tested by adding to CFLAGS:
-fvisibility=hidden -DUSE_VISIBILITY

Related to #701

Change-Id: Ied261586e49bae11c5f8a8dffe377f0b0f02dd9d
157 files changed:
CMakeLists.txt
include/3dview.h
include/atomprop.h
include/bondf.h
include/calcgrid.h
include/calch.h
include/chargegroup.h
include/checkpoint.h
include/confio.h
include/constr.h
include/copyrite.h
include/coulomb.h
include/disre.h
include/do_fit.h
include/domdec.h
include/domdec_network.h
include/edsam.h
include/enxio.h
include/filenm.h
include/force.h
include/futil.h
include/gbutil.h
include/gen_ad.h
include/gmx_ana.h
include/gmx_arpack.h
include/gmx_cpuid.h
include/gmx_detect_hardware.h
include/gmx_fatal.h
include/gmx_fatal_collective.h
include/gmx_fft.h
include/gmx_header_config.h.cmakein
include/gmx_lapack.h
include/gmx_matrix.h
include/gmx_omp.h
include/gmx_omp_nthreads.h
include/gmx_random.h
include/gmx_sort.h
include/gmx_statistics.h
include/gmx_wallcycle.h
include/gmxcpp.h
include/gmxfio.h
include/gpp_atomtype.h
include/gpp_nextnb.h
include/grompp.h
include/hackblock.h
include/index.h
include/indexutil.h
include/inputrec.h
include/invblock.h
include/main.h
include/maths.h
include/matio.h
include/md_logging.h
include/md_support.h
include/mdatoms.h
include/mdebin.h
include/mdrun.h
include/mshift.h
include/mtop_util.h
include/mtxio.h
include/mvdata.h
include/names.h
include/network.h
include/nonbonded.h
include/nrama.h
include/nrjac.h
include/nrnb.h
include/ns.h
include/nsgrid.h
include/oenv.h
include/orires.h
include/partdec.h
include/pbc.h
include/pdb2top.h
include/pdbio.h
include/perf_est.h
include/pme.h
include/princ.h
include/pull.h
include/pull_rotation.h
include/qmmm.h
include/random.h
include/rbin.h
include/readinp.h
include/resall.h
include/rmpbc.h
include/sfactor.h
include/shellfc.h
include/sighandler.h
include/sim_util.h
include/smalloc.h
include/sortwater.h
include/sparsematrix.h
include/splitter.h
include/statutil.h
include/strdb.h
include/string2.h
include/symtab.h
include/tables.h
include/tgroup.h
include/topsort.h
include/toputil.h
include/tpxio.h
include/trajana.h
include/trnio.h
include/txtdump.h
include/typedefs.h
include/types/ifunc.h
include/types/iteratedconstraints.h
include/types/nlistheuristics.h
include/update.h
include/vec.h
include/viewit.h
include/visibility.h [new file with mode: 0644]
include/vsite.h
include/warninp.h
include/wgms.h
include/writeps.h
include/xdrf.h
include/xtcio.h
include/xvgr.h
src/gmxlib/CMakeLists.txt
src/gmxlib/cinvsqrtdata.c
src/gmxlib/gmx_fatal.c
src/gmxlib/string2.c
src/kernel/calc_verletbuf.h
src/kernel/compute_io.c
src/kernel/compute_io.h
src/kernel/convparm.h
src/kernel/fflibutil.h
src/kernel/g_x2top.h
src/kernel/genhydro.h
src/kernel/gpp_tomorse.h
src/kernel/h_db.h
src/kernel/hizzie.c
src/kernel/hizzie.h
src/kernel/readir.h
src/kernel/specbond.h
src/kernel/ter_db.h
src/kernel/topexcl.h
src/kernel/topio.h
src/kernel/tpbcmp.c
src/kernel/tpbcmp.h
src/kernel/vsite_parm.h
src/kernel/xlate.h
src/mdlib/nbnxn_search.h
src/mdlib/sim_util.c
src/tools/gmx_anadock.c
src/tools/gmx_covar.c
src/tools/gmx_do_dssp.c
src/tools/gmx_dyecoupl.c
src/tools/gmx_hydorder.c
src/tools/gmx_make_edi.c
src/tools/gmx_make_ndx.c
src/tools/gmx_mk_angndx.c
src/tools/gmx_options.c
src/tools/gmx_sigeps.c