# 'cutoff' means the interaction is set to 0.0 outside the cutoff
#
-FileHeader = create_copyright_header('2012,2013,2014,2015,2017')
+FileHeader = create_copyright_header('2012,2013,2014,2015,2017,2018')
FileHeader += """/*
* Note: this file was generated by the GROMACS """+Arch+""" kernel generator.
*/
numKernels = 0
-fpdecl = open('nb_kernel_' + Arch + '.c','w')
+fpdecl = open('nb_kernel_' + Arch + '.cpp','w')
fpdecl.write( FileHeader )
fpdecl.write( '#include "gmxpre.h"\n\n' )
fpdecl.write( '#include "gromacs/gmxlib/nonbonded/nb_kernel.h"\n\n' )
for KernelGeom in GeometryNameList:
cnt += 1
- KernelFilename = MakeKernelFileName(KernelElec,KernelElecMod,KernelVdw,KernelVdwMod,KernelGeom) + '.c'
+ KernelFilename = MakeKernelFileName(KernelElec,KernelElecMod,KernelVdw,KernelVdwMod,KernelGeom) + '.cpp'
fpkernel = open(KernelFilename,'w')
defines['INCLUDE_HEADER'] = 1 # Include header first time in new file
DoHeader = 1
fptmp.close()
os.remove(KernelName+'.tmp')
- # Add a declaration for this kernel
- fpdecl.write('nb_kernel_t ' + KernelName + ';\n');
+ # Add an extern declaration for this kernel
+ fpdecl.write('extern nb_kernel_t ' + KernelName + ';\n');
# Add declaration to the buffer
KernelOther=''