From 573c46164273e809ca6e78ddab229d38b51775e3 Mon Sep 17 00:00:00 2001 From: Joseph Benden Date: Thu, 13 Feb 2020 19:00:13 -0700 Subject: [PATCH] New package: intel-parallel-studio-xe-2019.5.281_1 Signed-off-by: Joseph Benden --- common/shlibs | 29 + common/xbps-src/shutils/common.sh | 16 +- srcpkgs/intel-advisor | 1 + srcpkgs/intel-common-libs | 1 + srcpkgs/intel-compiler-base | 1 + srcpkgs/intel-fortran-compiler | 1 + srcpkgs/intel-inspector | 1 + srcpkgs/intel-ipp | 1 + srcpkgs/intel-mkl | 1 + srcpkgs/intel-mpi | 1 + srcpkgs/intel-openmp | 1 + .../files/001-vtsspp.patch | 11 + .../files/002-src-sys64.S.patch | 39 ++ .../files/003-ioremap.patch | 89 +++ .../files/004-remove-trace-printk.patch | 15 + .../files/005-time64.patch | 102 +++ .../files/006-proc_ops.patch | 227 +++++++ .../files/Makefile-dkms | 132 ++++ .../files/advixe-gui.desktop | 11 + .../files/amplxe-gui.desktop | 12 + .../files/inspxe-gui.desktop | 11 + .../files/intel-common-libs.conf | 2 + .../files/intel-fortran.conf | 1 + .../files/intel-gdb.conf | 2 + .../files/intel-ipp.conf | 2 + .../files/intel-mkl-th.conf | 14 + .../files/intel-mkl.conf | 1 + .../files/intel-mkl.sh | 3 + .../files/intel-mpi.conf | 4 + .../files/intel-openmp.conf | 1 + .../files/intel-tbb.conf | 2 + .../files/intel-vtune-amplifier-dkms.dkms | 23 + .../files/intel-vtune-amplifier-dkms.udev | 2 + .../files/intel-vtune-amplifier.conf | 4 + .../files/intel_advisor.sh | 2 + .../files/intel_compilers.sh | 25 + .../files/intel_inspector.sh | 2 + .../files/intel_vtune-amplifier.sh | 2 + .../intel-compiler-base.INSTALL | 14 + .../intel-fortran-compiler.INSTALL | 14 + .../intel-ipp.INSTALL | 14 + .../intel-mkl.INSTALL | 14 + .../intel-mpi.INSTALL | 14 + .../intel-tbb-psxe.INSTALL | 14 + srcpkgs/intel-parallel-studio-xe/template | 593 ++++++++++++++++++ srcpkgs/intel-tbb-psxe | 1 + srcpkgs/intel-vtune-amplifier | 1 + srcpkgs/intel-vtune-amplifier-dkms | 1 + 48 files changed, 1474 insertions(+), 1 deletion(-) create mode 120000 srcpkgs/intel-advisor create mode 120000 srcpkgs/intel-common-libs create mode 120000 srcpkgs/intel-compiler-base create mode 120000 srcpkgs/intel-fortran-compiler create mode 120000 srcpkgs/intel-inspector create mode 120000 srcpkgs/intel-ipp create mode 120000 srcpkgs/intel-mkl create mode 120000 srcpkgs/intel-mpi create mode 120000 srcpkgs/intel-openmp create mode 100644 srcpkgs/intel-parallel-studio-xe/files/001-vtsspp.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/002-src-sys64.S.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/003-ioremap.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/004-remove-trace-printk.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/005-time64.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/006-proc_ops.patch create mode 100644 srcpkgs/intel-parallel-studio-xe/files/Makefile-dkms create mode 100755 srcpkgs/intel-parallel-studio-xe/files/advixe-gui.desktop create mode 100755 srcpkgs/intel-parallel-studio-xe/files/amplxe-gui.desktop create mode 100755 srcpkgs/intel-parallel-studio-xe/files/inspxe-gui.desktop create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-common-libs.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-fortran.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-gdb.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-ipp.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-mkl-th.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-mkl.conf create mode 100755 srcpkgs/intel-parallel-studio-xe/files/intel-mkl.sh create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-mpi.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-openmp.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-tbb.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.dkms create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.udev create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier.conf create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel_advisor.sh create mode 100755 srcpkgs/intel-parallel-studio-xe/files/intel_compilers.sh create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel_inspector.sh create mode 100644 srcpkgs/intel-parallel-studio-xe/files/intel_vtune-amplifier.sh create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-compiler-base.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-fortran-compiler.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-ipp.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-mkl.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-mpi.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/intel-tbb-psxe.INSTALL create mode 100644 srcpkgs/intel-parallel-studio-xe/template create mode 120000 srcpkgs/intel-tbb-psxe create mode 120000 srcpkgs/intel-vtune-amplifier create mode 120000 srcpkgs/intel-vtune-amplifier-dkms diff --git a/common/shlibs b/common/shlibs index 9fb74043e9f..40ac71336a6 100644 --- a/common/shlibs +++ b/common/shlibs @@ -3862,3 +3862,32 @@ libkdsoap.so.1.9.0 KDSoap-1.9.0_1 libstoken.so.1 stoken-0.92_1 libjpegxr.so.0 jxrlib-0.2.2_1 libjxrglue.so.0 jxrlib-0.2.2_1 +libcilkrts.so.5 intel-common-libs-2019.5.281_1 +libcilkrts.so.5 intel-compiler-base-2019.5.281_1 +liboffload.so.5 intel-compiler-base-2019.5.281_1 +libioffload_host.so.5 intel-compiler-base-2019.5.281_1 +libioffload_target.so.5 intel-compiler-base-2019.5.281_1 +libpdbx.so.5 intel-common-libs-2019.5.281_1 +libintlc.so.5 intel-common-libs-2019.5.281_1 +libimf.so intel-common-libs-2019.5.281_1 +libsvml.so intel-common-libs-2019.5.281_1 +libirng.so intel-common-libs-2019.5.281_1 +libchkp.so intel-common-libs-2019.5.281_1 +libiomp5.so intel-openmp-2019.5.281_1 +libiompstubs5.so intel-openmp-2019.5.281_1 +libifcoremt.so.5 intel-fortran-compiler-2019.5.281_1 +libifport.so.5 intel-fortran-compiler-2019.5.281_1 +libifcore.so.5 intel-fortran-compiler-2019.5.281_1 +libfabric.so.1 intel-mpi-2019.5.281_1 +libmpi.so.12 intel-mpi-2019.5.281_1 +libmpicxx.so.12 intel-mpi-2019.5.281_1 +libmpijava.so.1 intel-mpi-2019.5.281_1 +libmpifort.so.12 intel-mpi-2019.5.281_1 +libtbb_preview_debug.so.2 intel-tbb-psxe-2019.5.281_1 +libtbbmalloc_debug.so.2 intel-tbb-psxe-2019.5.281_1 +libtbbmalloc_proxy.so.2 intel-tbb-psxe-2019.5.281_1 +libtbbmalloc_proxy_debug.so.2 intel-tbb-psxe-2019.5.281_1 +libtbb.so.2 intel-tbb-psxe-2019.5.281_1 +libtbbmalloc.so.2 intel-tbb-psxe-2019.5.281_1 +libtbb_preview.so.2 intel-tbb-psxe-2019.5.281_1 +libtbb_debug.so.2 intel-tbb-psxe-2019.5.281_1 diff --git a/common/xbps-src/shutils/common.sh b/common/xbps-src/shutils/common.sh index 44a92d52361..690ac8ef4f1 100644 --- a/common/xbps-src/shutils/common.sh +++ b/common/xbps-src/shutils/common.sh @@ -221,13 +221,27 @@ source_file() { } run_pkg_hooks() { - local phase="$1" hookn f + local phase="$1" hookn f skips j + + eval skips="\$skip_${phase//\-/\_}_hooks" eval unset -f hook for f in ${XBPS_COMMONDIR}/hooks/${phase}/*.sh; do [ ! -r $f ] && continue hookn=${f##*/} hookn=${hookn%.sh} + for j in ${skips}; do + if [ "$j" = "$hookn" ]; then + skiphook=1 + break + fi + done + if [ -n "$skiphook" ]; then + msg_warn "Skipping $phase hook: $hookn\n" + unset skiphook + continue + fi + . $f run_func hook "$phase hook: $hookn" ${phase}_${hookn} done diff --git a/srcpkgs/intel-advisor b/srcpkgs/intel-advisor new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-advisor @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-common-libs b/srcpkgs/intel-common-libs new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-common-libs @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-compiler-base b/srcpkgs/intel-compiler-base new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-compiler-base @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-fortran-compiler b/srcpkgs/intel-fortran-compiler new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-fortran-compiler @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-inspector b/srcpkgs/intel-inspector new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-inspector @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-ipp b/srcpkgs/intel-ipp new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-ipp @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-mkl b/srcpkgs/intel-mkl new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-mkl @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-mpi b/srcpkgs/intel-mpi new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-mpi @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-openmp b/srcpkgs/intel-openmp new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-openmp @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-parallel-studio-xe/files/001-vtsspp.patch b/srcpkgs/intel-parallel-studio-xe/files/001-vtsspp.patch new file mode 100644 index 00000000000..22514967df5 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/001-vtsspp.patch @@ -0,0 +1,11 @@ +--- a/src/vtsspp/Makefile 2019-08-19 09:51:34.000000000 -0700 ++++ b/src/vtsspp/Makefile 2019-12-28 12:55:53.422853567 -0700 +@@ -117,7 +117,7 @@ + _KBUILD_CFLAGS := $(call flags,KBUILD_CFLAGS) + CHECK_BUILD := $(CC) $(KBUILD_CPPFLAGS) $(CPPFLAGS) $(LINUXINCLUDE) \ + $(_KBUILD_CFLAGS) $(CFLAGS_KERNEL) $(EXTRA_CFLAGS) $(CFLAGS) \ +- -DKBUILD_BASENAME=\"$(DRIVER_NAME)\" -Werror -S -o /dev/null -xc >> $(obj)/.autoconf.log 2>&1 ++ -DKBUILD_BASENAME=\"$(DRIVER_NAME)\" -Werror -S -Wno-pointer-sign -o /dev/null -xc >> $(obj)/.autoconf.log 2>&1 + + autoconf-srcs := $(sort $(wildcard $(M)/autoconf/*.c)) + $(addprefix $(obj)/,$($(DRIVER_NAME)-objs)): $(obj)/autoconf.h diff --git a/srcpkgs/intel-parallel-studio-xe/files/002-src-sys64.S.patch b/srcpkgs/intel-parallel-studio-xe/files/002-src-sys64.S.patch new file mode 100644 index 00000000000..0a143e3464e --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/002-src-sys64.S.patch @@ -0,0 +1,39 @@ +--- a/src/sys64.S ++++ b/src/sys64.S +@@ -44,10 +44,18 @@ + # + #*********************************************************************** + .global SYS_Get_GDT_Base ++#ifdef SYM_FUNC_START ++SYM_FUNC_START(SYS_Get_GDT_Base) ++#else + ENTRY(SYS_Get_GDT_Base) ++#endif + SGDT (%rdi) + ret ++#ifdef SYM_FUNC_END ++SYM_FUNC_END(SYS_Get_GDT_Base) ++#else + ENDPROC(SYS_Get_GDT_Base) ++#endif + + #*********************************************************************** + # +@@ -79,9 +87,17 @@ ENDPROC(SYS_Get_GDT_Base) + # + #*********************************************************************** + .global SYS_IO_Delay ++#ifdef SYM_FUNC_START ++SYM_FUNC_START(SYS_IO_Delay) ++#else + ENTRY(SYS_IO_Delay) ++#endif + ret ++#ifdef SYM_FUNC_END ++SYM_FUNC_END(SYS_IO_Delay) ++#else + ENDPROC(SYS_IO_Delay) ++#endif + + # ---------------------------------------------------------------------------- + # name: SYS_PerfVec_Handler diff --git a/srcpkgs/intel-parallel-studio-xe/files/003-ioremap.patch b/srcpkgs/intel-parallel-studio-xe/files/003-ioremap.patch new file mode 100644 index 00000000000..8bd0b244e20 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/003-ioremap.patch @@ -0,0 +1,89 @@ +--- a/src/chap.c ++++ b/src/chap.c +@@ -40,6 +40,10 @@ + #include "inc/ecb_iterators.h" + #include "inc/utility.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif ++ + extern DRV_CONFIG drv_cfg; + extern CHIPSET_CONFIG pma; + extern CPU_STATE pcb; +--- a/src/pci.c ++++ b/src/pci.c +@@ -45,6 +45,9 @@ + #include "inc/pci.h" + #include "inc/utility.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif + + struct pci_bus* pci_buses[MAX_BUSNO] = {0}; + +--- a/src/socperf/src/haswellunc_sa.c ++++ b/src/socperf/src/haswellunc_sa.c +@@ -72,6 +72,10 @@ + #include "ecb_iterators.h" + #include "inc/pci.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif ++ + static U64 counter_virtual_address = 0; + static U32 counter_overflow[HSWUNC_SA_MAX_COUNTERS]; + extern LWPMU_DEVICE device_uncore; +--- a/src/socperf/src/npk_uncore.c ++++ b/src/socperf/src/npk_uncore.c +@@ -71,6 +71,9 @@ + #include "inc/control.h" + #include "inc/npk_uncore.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif + + extern LWPMU_DEVICE device_uncore; + static U32 counter_overflow[SOC_NPK_COUNTER_MAX_COUNTERS]; +--- a/src/socperf/src/pci.c ++++ b/src/socperf/src/pci.c +@@ -68,6 +68,10 @@ + #include "socperfdrv.h" + #include "pci.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif ++ + /* ------------------------------------------------------------------------- */ + /*! + * @fn extern int SOCPERF_PCI_Read_From_Memory_Address(addr, val) +--- a/src/socperf/src/soc_uncore.c ++++ b/src/socperf/src/soc_uncore.c +@@ -70,6 +70,10 @@ + #include "inc/ecb_iterators.h" + #include "inc/pci.h" + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif ++ + #if defined (PCI_HELPERS_API) + #include + #elif defined(DRV_CHROMEOS) +--- a/src/vtsspp/apic.c ++++ b/src/vtsspp/apic.c +@@ -32,6 +32,10 @@ + + #include + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++#define ioremap_nocache ioremap ++#endif ++ + /* APIC base MSR */ + #define VTSS_APIC_BASE_MSR 0x01b + diff --git a/srcpkgs/intel-parallel-studio-xe/files/004-remove-trace-printk.patch b/srcpkgs/intel-parallel-studio-xe/files/004-remove-trace-printk.patch new file mode 100644 index 00000000000..946bdbe5bcd --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/004-remove-trace-printk.patch @@ -0,0 +1,15 @@ +--- a/src/utility.c ++++ b/src/utility.c +@@ -858,12 +858,6 @@ UTILITY_Log ( + } + } + } +- +-#if defined(CONFIG_DYNAMIC_FTRACE) +- if (category_verbosity & LOG_CHANNEL_TRACEK) { +- trace_printk("%s", tmp_array); +- } +-#endif + } + } + diff --git a/srcpkgs/intel-parallel-studio-xe/files/005-time64.patch b/srcpkgs/intel-parallel-studio-xe/files/005-time64.patch new file mode 100644 index 00000000000..811c8c001f3 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/005-time64.patch @@ -0,0 +1,102 @@ +--- a/src/utility.c ++++ b/src/utility.c +@@ -892,7 +892,11 @@ UTILITY_Driver_Log_Init ( + void + ) + { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,6,0) + struct timespec cur_time; ++#else ++ struct timespec64 cur_time; ++#endif + U32 size = sizeof(*driver_log_buffer); + U8 using_contiguous_physical_memory; + U32 bitness; +@@ -948,7 +952,11 @@ UTILITY_Driver_Log_Init ( + DRV_LOG_BUFFER_log_size(driver_log_buffer) = sizeof(*driver_log_buffer); + DRV_LOG_BUFFER_max_nb_pri_entries(driver_log_buffer) = DRV_LOG_MAX_NB_PRI_ENTRIES; + DRV_LOG_BUFFER_max_nb_aux_entries(driver_log_buffer) = DRV_LOG_MAX_NB_AUX_ENTRIES; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,6,0) + getnstimeofday(&cur_time); ++#else ++ ktime_get_real_ts64(&cur_time); ++#endif + DRV_LOG_BUFFER_init_time(driver_log_buffer) = cur_time.tv_sec; + DRV_LOG_BUFFER_disambiguator(driver_log_buffer) = 0; + DRV_LOG_BUFFER_log_version(driver_log_buffer) = DRV_LOG_VERSION; +--- a/src/vtsspp/record.c ++++ b/src/vtsspp/record.c +@@ -673,15 +673,27 @@ int vtss_record_configs(struct vtss_tran + } + /* generate time marker record */ + { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ struct timespec64 now; ++#else + struct timespec now; ++#endif + time_marker_record_t timark; + timark.flagword = UEC_LEAF1 | UEC_VECTORED | UECL1_REALTSC; + timark.vectored = UECL1_REALTSC; + timark.vec_no = 2; + timark.tsc = vtss_time_real(); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ ktime_get_real_ts64(&now); ++#else + getnstimeofday(&now); ++#endif + /* convert global time to 100ns units */ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ timark.utc = div64_u64((u64)timespec64_to_ns(&now), 100ULL); ++#else + timark.utc = div64_u64((u64)timespec_to_ns(&now), 100ULL); ++#endif + rc |= vtss_transport_record_write(trnd, &timark, sizeof(timark), NULL, 0, is_safe); + } + +--- a/src/vtsspp/time.h ++++ b/src/vtsspp/time.h +@@ -59,9 +59,15 @@ static inline unsigned long long vtss_ti + static inline unsigned long long vtss_time_real(void) + { + if (!vtss_time_source) { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ struct timespec64 now; ++ ktime_get_real_ts64(&now); ++ return (unsigned long long)timespec64_to_ns(&now); ++#else + struct timespec now; + getrawmonotonic(&now); /* getnstimeofday(&now); */ + return (unsigned long long)timespec_to_ns(&now); ++#endif + } else + return (unsigned long long)get_cycles(); + } +@@ -72,14 +78,27 @@ static inline void vtss_time_get_sync(un + unsigned long long tsc = vtss_time_cpu(); + + if (!vtss_time_source) { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ struct timespec64 now1, now2; ++ ktime_get_real_ts64(&now1); ++#else + struct timespec now1, now2; + getrawmonotonic(&now1); ++#endif + // rdtsc barrier + asm volatile("mfence"); + asm volatile("lfence"); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ ktime_get_real_ts64(&now2); ++#else + getrawmonotonic(&now2); ++#endif + *ptsc = (tsc + vtss_time_cpu()) / 2; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++ *preal = (timespec64_to_ns(&now1) + timespec64_to_ns(&now2)) / 2; ++#else + *preal = (timespec_to_ns(&now1) + timespec_to_ns(&now2)) / 2; ++#endif + } else + *ptsc = *preal = tsc; + } diff --git a/srcpkgs/intel-parallel-studio-xe/files/006-proc_ops.patch b/srcpkgs/intel-parallel-studio-xe/files/006-proc_ops.patch new file mode 100644 index 00000000000..baddeacaab6 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/006-proc_ops.patch @@ -0,0 +1,227 @@ +--- a/src/pax/pax.c ++++ b/src/pax/pax.c +@@ -87,6 +87,14 @@ struct proc_dir_entry *pax_version_file + + static int pax_version_proc_read(struct seq_file*, void *); + static int pax_version_proc_open(struct inode*, struct file*); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops pax_version_ops = { ++ .proc_open = pax_version_proc_open, ++ .proc_read = seq_read, ++ .proc_lseek = seq_lseek, ++ .proc_release = single_release, ++}; ++#else + static struct file_operations pax_version_ops = { + .owner = THIS_MODULE, + .open = pax_version_proc_open, +@@ -94,6 +102,7 @@ static struct file_operations pax_versio + .llseek = seq_lseek, + .release = single_release, + }; ++#endif + + // Print macros for kernel debugging + +--- a/src/vtsspp/procfs.c ++++ b/src/vtsspp/procfs.c +@@ -607,6 +607,15 @@ static int vtss_procfs_ctrl_close(struct + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_ctrl_fops = { ++ .proc_read = vtss_procfs_ctrl_read, ++ .proc_write = vtss_procfs_ctrl_write, ++ .proc_open = vtss_procfs_ctrl_open, ++ .proc_release = vtss_procfs_ctrl_close, ++ .proc_poll = vtss_procfs_ctrl_poll, ++}; ++#else + static const struct file_operations vtss_procfs_ctrl_fops = { + .owner = THIS_MODULE, + .read = vtss_procfs_ctrl_read, +@@ -615,6 +624,7 @@ static const struct file_operations vtss + .release = vtss_procfs_ctrl_close, + .poll = vtss_procfs_ctrl_poll, + }; ++#endif + + /* ************************************************************************* */ + +@@ -651,6 +661,14 @@ static int vtss_procfs_debug_open(struct + return seq_open(file, &vtss_procfs_debug_sops); + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_debug_fops = { ++ .proc_open = vtss_procfs_debug_open, ++ .proc_read = seq_read, ++ .proc_lseek = seq_lseek, ++ .proc_release = seq_release, ++}; ++#else + static const struct file_operations vtss_procfs_debug_fops = { + .owner = THIS_MODULE, + .open = vtss_procfs_debug_open, +@@ -658,6 +676,7 @@ static const struct file_operations vtss + .llseek = seq_lseek, + .release = seq_release, + }; ++#endif + + /* ************************************************************************* */ + +@@ -725,6 +744,14 @@ static int vtss_procfs_cpumask_close(str + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_cpumask_fops = { ++ .proc_read = vtss_procfs_cpumask_read, ++ .proc_write = vtss_procfs_cpumask_write, ++ .proc_open = vtss_procfs_cpumask_open, ++ .proc_release = vtss_procfs_cpumask_close, ++}; ++#else + static const struct file_operations vtss_procfs_cpumask_fops = { + .owner = THIS_MODULE, + .read = vtss_procfs_cpumask_read, +@@ -732,6 +759,7 @@ static const struct file_operations vtss + .open = vtss_procfs_cpumask_open, + .release = vtss_procfs_cpumask_close, + }; ++#endif + + /* ************************************************************************* */ + +@@ -793,6 +821,14 @@ static int vtss_procfs_defsav_close(stru + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_defsav_fops = { ++ .proc_read = vtss_procfs_defsav_read, ++ .proc_write = vtss_procfs_defsav_write, ++ .proc_open = vtss_procfs_defsav_open, ++ .proc_release = vtss_procfs_defsav_close, ++}; ++#else + static const struct file_operations vtss_procfs_defsav_fops = { + .owner = THIS_MODULE, + .read = vtss_procfs_defsav_read, +@@ -800,6 +836,7 @@ static const struct file_operations vtss + .open = vtss_procfs_defsav_open, + .release = vtss_procfs_defsav_close, + }; ++#endif + + /* ************************************************************************* */ + +@@ -836,6 +873,14 @@ static int vtss_procfs_targets_open(stru + return seq_open(file, &vtss_procfs_targets_sops); + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_targets_fops = { ++ .proc_open = vtss_procfs_targets_open, ++ .proc_read = seq_read, ++ .proc_lseek = seq_lseek, ++ .proc_release = seq_release, ++}; ++#else + static const struct file_operations vtss_procfs_targets_fops = { + .owner = THIS_MODULE, + .open = vtss_procfs_targets_open, +@@ -843,6 +888,7 @@ static const struct file_operations vtss + .llseek = seq_lseek, + .release = seq_release, + }; ++#endif + + /* ************************************************************************* */ + +@@ -903,6 +949,14 @@ static int vtss_procfs_timesrc_close(str + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_timesrc_fops = { ++ .proc_read = vtss_procfs_timesrc_read, ++ .proc_write = vtss_procfs_timesrc_write, ++ .proc_open = vtss_procfs_timesrc_open, ++ .proc_release = vtss_procfs_timesrc_close, ++}; ++#else + static const struct file_operations vtss_procfs_timesrc_fops = { + .owner = THIS_MODULE, + .read = vtss_procfs_timesrc_read, +@@ -910,6 +964,7 @@ static const struct file_operations vtss + .open = vtss_procfs_timesrc_open, + .release = vtss_procfs_timesrc_close, + }; ++#endif + + /* ************************************************************************* */ + +@@ -966,6 +1021,14 @@ static int vtss_procfs_timelimit_close(s + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static const struct proc_ops vtss_procfs_timelimit_fops = { ++ .proc_read = vtss_procfs_timelimit_read, ++ .proc_write = vtss_procfs_timelimit_write, ++ .proc_open = vtss_procfs_timelimit_open, ++ .proc_release = vtss_procfs_timelimit_close, ++}; ++#else + static const struct file_operations vtss_procfs_timelimit_fops = { + .owner = THIS_MODULE, + .read = vtss_procfs_timelimit_read, +@@ -973,6 +1036,7 @@ static const struct file_operations vtss + .open = vtss_procfs_timelimit_open, + .release = vtss_procfs_timelimit_close, + }; ++#endif + + /* ************************************************************************* */ + +@@ -1059,7 +1123,11 @@ void vtss_procfs_fini(void) + } + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static int vtss_procfs_create_entry(const char* name, const struct proc_ops* fops) ++#else + static int vtss_procfs_create_entry(const char* name, const struct file_operations* fops) ++#endif + { + struct proc_dir_entry *pde = proc_create(name, (mode_t)(mode ? (mode & 0666) : 0660), vtss_procfs_root, fops); + if (pde == NULL) { +--- a/src/vtsspp/transport.c ++++ b/src/vtsspp/transport.c +@@ -1421,6 +1421,15 @@ static int vtss_transport_close(struct i + return 0; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) ++static struct proc_ops vtss_transport_fops = { ++ .proc_read = vtss_transport_read, ++ .proc_write = vtss_transport_write, ++ .proc_open = vtss_transport_open, ++ .proc_release = vtss_transport_close, ++ .proc_poll = vtss_transport_poll, ++}; ++#else + static struct file_operations vtss_transport_fops = { + .owner = THIS_MODULE, + .read = vtss_transport_read, +@@ -1429,6 +1438,7 @@ static struct file_operations vtss_trans + .release = vtss_transport_close, + .poll = vtss_transport_poll, + }; ++#endif + + static void vtss_transport_remove(struct vtss_transport_data* trnd) + { diff --git a/srcpkgs/intel-parallel-studio-xe/files/Makefile-dkms b/srcpkgs/intel-parallel-studio-xe/files/Makefile-dkms new file mode 100644 index 00000000000..16df217cca1 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/Makefile-dkms @@ -0,0 +1,132 @@ +# +# Version: 1.6 +# +# Copyright (C) 2008-2019 Intel Corporation. All Rights Reserved. +# +# This file is part of SEP Development Kit +# +# SEP Development Kit is free software; you can redistribute it +# and/or modify it under the terms of the GNU General Public License +# version 2 as published by the Free Software Foundation. +# +# SEP Development Kit is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with SEP Development Kit; if not, write to the Free Software +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +# +# As a special exception, you may use this file as part of a free software +# library without restriction. Specifically, if other files instantiate +# templates or use macros or inline functions from this file, or you compile +# this file and link it with other files to produce an executable, this +# file does not by itself cause the resulting executable to be covered by +# the GNU General Public License. This exception does not however +# invalidate any other reasons why the executable file might be covered by +# the GNU General Public License. +# + +# -------------------- user configurable options ------------------------ + +# base name of SEP driver +DRIVER_NAME = sep5 + +# location to install driver +ifeq ($(INSTALL),) +INSTALL = . +endif + +# current working directory +DRV_CWD := $(shell pwd)/src + +# If KERNELRELEASE is defined, we've been invoked from the +# kernel build system and can use its language. +# Example flags are "-Werror", "-Wno-error", etc. +EXTRA_CFLAGS += -I$(LDDINCDIR) -I$(LDDINCDIR1) + +# if ARCH variable is set, unset it to avoid conflicts with kbuild +unexport ARCH + +# platform details +MACH ?= $(shell uname -m) +export MACH +ifeq ($(MACH),x86_64) +PLATFORM=x32_64 +endif +ifeq ($(PLATFORM),) +PLATFORM=x32 +endif +KERNEL_VERSION ?= $(shell uname -r) +SMP ?= $(shell uname -v | grep SMP) +ARITY=up +ifneq ($(SMP),) +ARITY=smp +endif + +ifeq ($(PER_USER_MODE),YES) +SEP_PER_USER=-pu +endif + + +# this is a temporary work-around for handling the module structure changes across multiple kernels. +# need to find out a proper solution. +ifneq ($(KERNEL_SRC_DIR),) + PATH_PREFIX = $(KERNEL_SRC_DIR) +endif +PATH_PREFIX ?= /lib/modules/$(shell uname -r)/build +ifneq ($(shell grep -s $(PATH_PREFIX)/include/linux/module.h -we "struct module_layout"),) + EXTRA_CFLAGS += -DSEP_CONFIG_MODULE_LAYOUT +endif + +ifeq ($(shell test -e $(PATH_PREFIX)/include/linux/kaiser.h && echo -n YES),YES) + EXTRA_CFLAGS += -DKAISER_HEADER_PRESENT +endif + +# eventual filename of SEP driver +DRIVER_MODE=$(DRIVER_NAME)$(SEP_PER_USER) +DRIVER_TYPE=$(PLATFORM)-$(KERNEL_VERSION)$(ARITY) +DRIVER_FILENAME=$(DRIVER_MODE)-$(DRIVER_TYPE).ko + + KERNEL_SRC_DIR ?= /lib/modules/$(shell uname -r)/build + PWD := $(shell pwd) + +socperfdir=$(DRV_CWD)/socperf +ifeq ($(wildcard $(socperfdir)),) + socperfdir= +endif + +all: default + +modules: default + +default: + @(cd $(socperfdir)/src && make all) + @cp $(socperfdir)/src/Module*.symvers src/. + $(MAKE) -C $(KERNEL_SRC_DIR) M=$(PWD)/src LDDINCDIR=$(PWD)/src/../include LDDINCDIR1=$(PWD)/src/inc modules PWD=$(PWD)/src KBUILD_EXTRA_SYMBOLS=$(socperfdir)/src/Module.symvers + cp src/$(DRIVER_NAME).ko src/$(DRIVER_FILENAME) + @(cd src/pax && make all) + @if [ -d src/vtsspp ]; then \ + (cd src/vtsspp && make all); \ + fi; + +clean: + ( cd src && rm -f *.o .*.o.cmd .*.o.d .*.ko.cmd .*.ko.unsigned.cmd *.gcno .cache.mk *.o.ur-safe .*.o.tmp; \ + rm -f $(DRIVER_NAME).ko $(DRIVER_NAME).ko.unsigned; \ + rm -f $(DRIVER_MODE)*$(DRIVER_TYPE).ko; \ + rm -f Module.symvers Modules.symvers *.mod.c modules.order Module.markers; \ + rm -rf .tmp_versions ) + @(cd src/pax && make clean) + @(cd $(socperfdir)/src && make clean) + @if [ -d src/vtsspp ]; then \ + (cd src/vtsspp && make clean); \ + fi; + +distclean: clean + ( cd src && rm -f $(DRIVER_NAME)*.ko ) + @(cd src/pax && make distclean) + @(cd $(socperfdir)/src && make distclean) + @if [ -d src/vtsspp ]; then \ + (cd src/vtsspp && make distclean); \ + fi; diff --git a/srcpkgs/intel-parallel-studio-xe/files/advixe-gui.desktop b/srcpkgs/intel-parallel-studio-xe/files/advixe-gui.desktop new file mode 100755 index 00000000000..6249ed8ab7a --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/advixe-gui.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=Intel Advisor +GenericName=Intel Advisor +Exec="/opt/intel/advisor_//advixe-gui" +Terminal=false +MimeType=text/plain; +Categories=Development; +StartupNotify=false +Actions=Window; diff --git a/srcpkgs/intel-parallel-studio-xe/files/amplxe-gui.desktop b/srcpkgs/intel-parallel-studio-xe/files/amplxe-gui.desktop new file mode 100755 index 00000000000..e3e55f112a6 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/amplxe-gui.desktop @@ -0,0 +1,12 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=Intel VTune Amplifier +GenericName=VTune +Exec="/opt/intel/vtune_amplifier_//amplxe-gui" +Terminal=false +MimeType=text/plain; +Icon=/opt/intel/vtune_amplifier_//resources/app/icons/Amplifier.png +Categories=Development; +StartupNotify=false +Actions=Window; diff --git a/srcpkgs/intel-parallel-studio-xe/files/inspxe-gui.desktop b/srcpkgs/intel-parallel-studio-xe/files/inspxe-gui.desktop new file mode 100755 index 00000000000..b45b030f71c --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/inspxe-gui.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=Intel Inspector +GenericName=Intel Inspector +Exec="/opt/intel/inspector_//inspxe-gui" +Terminal=false +MimeType=text/plain; +Categories=Development; +StartupNotify=false +Actions=Window; diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-common-libs.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-common-libs.conf new file mode 100644 index 00000000000..5f6aef45c5b --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-common-libs.conf @@ -0,0 +1,2 @@ +/opt/intel/lib + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-fortran.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-fortran.conf new file mode 100644 index 00000000000..606297f2bee --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-fortran.conf @@ -0,0 +1 @@ +/opt/intel/composerxe/linux/compiler/lib/ diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-gdb.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-gdb.conf new file mode 100644 index 00000000000..923d50f7b07 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-gdb.conf @@ -0,0 +1,2 @@ +/opt/intel/debugger_lib/ + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-ipp.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-ipp.conf new file mode 100644 index 00000000000..6567d613607 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-ipp.conf @@ -0,0 +1,2 @@ +/opt/intel/ipp/lib/ + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-mkl-th.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl-th.conf new file mode 100644 index 00000000000..aabc06e7d3f --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl-th.conf @@ -0,0 +1,14 @@ +# +# Confgure the MKL multithreading +# for more details visit: http://software.intel.com/sites/products/documentation/hpc/mkl/lin/MKL_UG_managing_performance/Using_Additional_Threading_Control.htm +# + +# Uncomment if you want to set a constant number o threads. +# export MKL_NUM_THREADS=4 + +# Uncomment and edit if you want to set the nr. of threads for every components. +# export MKL_DOMAIN_NUM_THREADS="MKL_ALL=4, MKL_BLAS=4" + +# If TRUE MKL set automatically the optimal number of threads +export MKL_DYNAMIC=TRUE + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.conf new file mode 100644 index 00000000000..bd0cd3c0816 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.conf @@ -0,0 +1 @@ +/opt/intel/mkl/lib/ diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.sh b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.sh new file mode 100755 index 00000000000..b1959aafb6b --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-mkl.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +. /etc/intel-mkl-th.conf diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-mpi.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-mpi.conf new file mode 100644 index 00000000000..e83ffa9ebfa --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-mpi.conf @@ -0,0 +1,4 @@ +/opt/intel/composerxe/linux/mpi//lib +/opt/intel/mpi//libfabric/lib +/opt/intel/mpi//lib/release + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-openmp.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-openmp.conf new file mode 100644 index 00000000000..57bae35bafd --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-openmp.conf @@ -0,0 +1 @@ +/opt/intel/lib/irml diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-tbb.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-tbb.conf new file mode 100644 index 00000000000..7b0a89cb944 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-tbb.conf @@ -0,0 +1,2 @@ +/tbb/lib//gcc4.7 + diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.dkms b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.dkms new file mode 100644 index 00000000000..d24d2de1cb1 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.dkms @@ -0,0 +1,23 @@ +PACKAGE_NAME="intel-vtune-amplifier" +PACKAGE_VERSION="#MODULE_VERSION#" +MAKE[0]="'make' KERNEL_SRC_DIR=${kernel_source_dir} default" +CLEAN="'make' KERNEL_SRC_DIR=${kernel_source_dir} clean" +PATCH[0]="001-vtsspp.patch" +PATCH[1]="002-src-sys64.S.patch" +PATCH[2]="003-ioremap.patch" +PATCH[3]="004-remove-trace-printk.patch" +PATCH[4]="005-time64.patch" +PATCH[5]="006-proc_ops.patch" +BUILT_MODULE_NAME[0]="sep5" +BUILT_MODULE_LOCATION[0]="src" +DEST_MODULE_LOCATION[0]="/updates" +BUILT_MODULE_NAME[1]="socperf3" +BUILT_MODULE_LOCATION[1]="src/socperf/src" +DEST_MODULE_LOCATION[1]="/updates" +BUILT_MODULE_NAME[2]="pax" +BUILT_MODULE_LOCATION[2]="src/pax" +DEST_MODULE_LOCATION[2]="/updates" +BUILT_MODULE_NAME[3]="vtsspp" +BUILT_MODULE_LOCATION[3]="src/vtsspp" +DEST_MODULE_LOCATION[3]="/updates" +AUTOINSTALL="yes" diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.udev b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.udev new file mode 100644 index 00000000000..ee8a80c7bd1 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier-dkms.udev @@ -0,0 +1,2 @@ +KERNEL=="sep5*", OWNER="root", GROUP="vtune", MODE="0660", ENV{ACL_MANAGE}="1" +KERNEL=="pax*", OWNER="root", GROUP="vtune", MODE="0660", ENV{ACL_MANAGE}="1" diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier.conf b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier.conf new file mode 100644 index 00000000000..87c980d8ffd --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel-vtune-amplifier.conf @@ -0,0 +1,4 @@ +pax +socperf3 +sep5 +vtsspp diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel_advisor.sh b/srcpkgs/intel-parallel-studio-xe/files/intel_advisor.sh new file mode 100644 index 00000000000..8f909ab0cd7 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel_advisor.sh @@ -0,0 +1,2 @@ +PATH=$PATH:/opt/intel/advisor_/ +export PATH diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel_compilers.sh b/srcpkgs/intel-parallel-studio-xe/files/intel_compilers.sh new file mode 100755 index 00000000000..e87a4c84fb4 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel_compilers.sh @@ -0,0 +1,25 @@ +#!/bin/sh + +TMP_LLP=$LD_LIBRARY_PATH +if [ -z $TMP_LLP ] ; then + LLP_NULL=true ; +else + LLP_NULL=false ; +fi + +if [ -f /opt/intel/composerxe/linux/bin/compilervars.sh ] ; then +. /opt/intel/composerxe/linux/bin/compilervars.sh -platform linux +fi + +PATH=$PATH:/opt/intel/bin +export PATH + +if [ $LLP_NULL ] ; then + unset LD_LIBRARY_PATH +else + LD_LIBRARY_PATH=$TMP_LLP + export LD_LIBRARY_PATH +fi + +INTEL_LICENSE_FILE=/opt/intel/licenses +export INTEL_LICENSE_FILE diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel_inspector.sh b/srcpkgs/intel-parallel-studio-xe/files/intel_inspector.sh new file mode 100644 index 00000000000..72a1edceb92 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel_inspector.sh @@ -0,0 +1,2 @@ +PATH=$PATH:/opt/intel/inspector_/ +export PATH diff --git a/srcpkgs/intel-parallel-studio-xe/files/intel_vtune-amplifier.sh b/srcpkgs/intel-parallel-studio-xe/files/intel_vtune-amplifier.sh new file mode 100644 index 00000000000..c260526464f --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/files/intel_vtune-amplifier.sh @@ -0,0 +1,2 @@ +PATH=$PATH:/opt/intel/vtune_profiler_/ +export PATH diff --git a/srcpkgs/intel-parallel-studio-xe/intel-compiler-base.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-compiler-base.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-compiler-base.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/intel-fortran-compiler.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-fortran-compiler.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-fortran-compiler.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/intel-ipp.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-ipp.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-ipp.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/intel-mkl.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-mkl.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-mkl.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/intel-mpi.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-mpi.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-mpi.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/intel-tbb-psxe.INSTALL b/srcpkgs/intel-parallel-studio-xe/intel-tbb-psxe.INSTALL new file mode 100644 index 00000000000..e8c2a039fbf --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/intel-tbb-psxe.INSTALL @@ -0,0 +1,14 @@ +export PATH="usr/bin:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin" + +update_ldcache() { + if [ -x sbin/ldconfig -o -x bin/ldconfig ]; then + echo "Updating ldconfig(8) cache..." + ldconfig -X || : + fi +} + +case "$ACTION" in +post) + update_ldcache + ;; +esac diff --git a/srcpkgs/intel-parallel-studio-xe/template b/srcpkgs/intel-parallel-studio-xe/template new file mode 100644 index 00000000000..64fa44e6847 --- /dev/null +++ b/srcpkgs/intel-parallel-studio-xe/template @@ -0,0 +1,593 @@ +# Template file for 'intel-parallel-studio-xe' +pkgname=intel-parallel-studio-xe +version=2019.5.281.5 +revision=1 +_version=( ${version//./ } ) +_year=${_version[0]} +_v_a=${_version[1]} +_v_b=${_version[2]} +_update=${_version[3]} +_sp='cluster_edition' +_icc_ver='19.0.5' +_vtune_ver='2019.6.0.602217' +_inspector_ver='2019.5.0.602103' +_advisor_ver='2019.5.0.602216' +_dir_nr=15809 +_psxe_dir="parallel_studio_xe_${_year}${_update:+_update${_update}}_${_sp}" +archs="x86_64" +wrksrc="${_psxe_dir}" +depends="bash gcc hicolor-icon-theme desktop-file-utils" +short_desc="Intel C++ C and FORTRAN compiler" +maintainer="Joseph Benden " +license="custom:Proprietary" +homepage="https://software.intel.com/en-us/parallel-studio-xe" +distfiles="http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/${_dir_nr}/${_psxe_dir}.tgz" +checksum=c03421de616bd4e640ed25ce4103ec9c5c85768a940a5cb5bd1e97b45be33904 +repository="nonfree" +restricted=yes + +build_options="nodocs staticlibs" +build_options_default="nodocs" + +lib32disabled=yes +nodebug=yes +nopie=yes +nostrip=yes +# NOTE(jbenden): This variable fails xlint; need to patch it if accepted. +skip_post_install_hooks="02-remove-libtool-archives 02-remove-perl-files 02-remove-python-bytecode-files" + +if [ "$XBPS_TARGET_MACHINE" = "x86_64" ]; then + _i_arch='intel64' + _bin_dir='bin64' + _not_arch='ia32' +else + _i_arch='ia32' + _bin_dir='bin32' + _not_arch='intel64' +fi + +extract_rpm() { + # filter out rpms for incompatible arch + local extract=true + if ! [[ "$1" =~ .noarch.rpm$ ]]; then + if [[ "$1" =~ (-32bit.+\.x86_64|\.i486)\.rpm$ ]]; then + if [[ "$XBPS_TARGET_MACHINE" != 'i686' ]]; then + extract=false + fi + else + if [[ "$XBPS_TARGET_MACHINE" == 'i686' ]]; then + extract=false + fi + fi + fi + if [ "$extract" = true ]; then + msg_normal " ${1##*/}\n" + bsdtar -xf $1 -C $2 + else + msg_normal "skipped ${1##*/}\n" + fi +} + +extract_rpms() { + # select binary files of specific arch + local rpm_dir="" + if [ -z "$3" ]; then + rpm_dir="${_rpm_dir}" + else + rpm_dir="$3" + fi + for rpm_file in ${rpm_dir}/$1 ; do + extract_rpm ${rpm_file} $2 + done +} + +set_build_vars() { + _composer_xe_dir="compilers_and_libraries_${_year}.${_v_a}.${_v_b}" + _rpm_dir=${wrksrc}/rpm + _xe_build_dir=${wrksrc}/cxe_build + _base_dir=$(realpath ${wrksrc}/..) + _man_dir=${_xe_build_dir}/usr/share/man/man1 +} + +do_install() { + set_build_vars + + # clean build directories + [ -d ${_xe_build_dir} ] && rm -fr ${_xe_build_dir} + mkdir -p ${_xe_build_dir} + + extract_rpms 'intel-parallel-studio-*.rpm' ${_xe_build_dir} + extract_rpms 'intel-psxe-*.rpm' ${_xe_build_dir} + + vlicense ${wrksrc}/license.txt + + mv ${_xe_build_dir}/opt ${PKGDESTDIR} +} + +intel-common-libs_package() { + short_desc="Intel Common Libraries $_icc_ver" + shlib_provides="libintlc.so.5 libcilkrts.so.5 libpdbx.so.5 + libimf.so libsvml.so libirng.so libchkp.so" + nostrip=yes + + pkg_install() { + set_build_vars + + install -Dm644 ${FILESDIR}/intel-common-libs.conf \ + ${PKGDESTDIR}/etc/ld.so.conf.d/intel-common-libs.conf + + extract_rpms 'intel-comp-ps-ss-bec*.rpm' ${_xe_build_dir} + ( cd ${_xe_build_dir}/opt/intel \ + && ln -snf ${_composer_xe_dir}/linux/compiler/lib/${_i_arch}_lin \ + lib ) + + mv ${_xe_build_dir}/opt ${PKGDESTDIR} + } +} + +intel-openmp_package() { + short_desc="Intel OpenMP Implementation ${_icc_ver}" + shlib_provides="libiomp5.so libiompstubs5.so" + nostrip=yes + + pkg_install() { + set_build_vars + + extract_rpms 'intel-openmp*.rpm' ${_xe_build_dir} + + mv ${_xe_build_dir}/opt ${PKGDESTDIR} + } +} + +intel-compiler-base_package() { + short_desc="Intel C/C++ $_icc_ver" + shlib_provides="libcilkrts.so.5 liboffload.so.5 + libioffload_host.so.5 libioffload_target.so.5" + nostrip=yes + allow_unknown_shlibs=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/profile.d + mkdir -p ${_man_dir} + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel_compilers.sh \ + > ${_xe_build_dir}/etc/profile.d/intel_compilers.sh + chmod a+x ${_xe_build_dir}/etc/profile.d/intel_compilers.sh + + extract_rpms 'intel-icc*.rpm' ${_xe_build_dir} + extract_rpms 'intel-c-comp-*.rpm' ${_xe_build_dir} + for rpm_file in \ + $(find ${_rpm_dir} -name 'intel-comp-*.rpm' \ + ! -name 'intel-comp-ps-ss-bec-*.rpm' -print) ; do + extract_rpm $rpm_file ${_xe_build_dir} + done + + cd ./opt/intel/${_composer_xe_dir}/linux/bin + + rm *.csh + + for f in *.sh ; do + sed -i 's//\/opt\/intel/g' $f + sed -i \ + "s//\/opt\/intel\/${_composer_xe_dir}\/linux/g" \ + $f + done + + mv ${_xe_build_dir}/opt/intel/documentation_${_year}/en/man/common/man1/*.1 ${_man_dir} + rm -rf ${_xe_build_dir}/opt/intel/documentation_${_year}/en/man + + cd ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + mv ${_xe_build_dir}/usr ${PKGDESTDIR}/ + + cd ${PKGDESTDIR}/opt/intel + ln -s ./${_composer_xe_dir} composerxe + ln -s ./${_composer_xe_dir}/linux/bin/${_i_arch} bin + ln -s ./${_composer_xe_dir}/linux/pkg_bin pkg_bin + } +} + +intel-mpi_package() { + short_desc="Intel MPI library" + shlib_provides="libfabric.so.1 libmpi.so.12 libmpicxx.so.12 + libmpijava.so.1 libmpifort.so.12" + nostrip=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./bin + mkdir -p ./etc/ld.so.conf.d + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel-mpi.conf \ + > ./etc/ld.so.conf.d/intel-mpi.conf + + extract_rpms 'intel-mpi-*.rpm' ${_xe_build_dir} + + cd ./opt/intel/${_composer_xe_dir}/linux/mpi/${_i_arch}/bin + rm mpivars.csh + + for i in mpi* ; do + sed -i "s/I_MPI_SUBSTITUTE_INSTALLDIR/\/opt\/intel\/${_composer_xe_dir}\/linux\/mpi/g" $i + done + + chmod a+x mpivars.sh + + rm -rf ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux/mpi_${_year} + rm -rf ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/licensing/mpi_${_year} + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + # some libraries are missing, so remove problematic ones + rm -f ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux/mpi/${_i_arch}/libfabric/lib/prov/libpsmx2-fi.so + rm -f ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux/mpi/${_i_arch}/libfabric/lib/prov/libmlx-fi.so + + mv ${_xe_build_dir}/opt ${PKGDESTDIR} + mv ${_xe_build_dir}/etc ${PKGDESTDIR} + + ln -s ./${_composer_xe_dir}/linux/mpi/ ${PKGDESTDIR}/opt/intel/mpi + } +} + +intel-fortran-compiler_package() { + short_desc="Intel Fortran compiler $_icc_ver" + shlib_provides="libifcoremt.so.5 libifport.so.5 libifcore.so.5" + nostrip=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/ld.so.conf.d + mkdir -p ${_man_dir} + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel-fortran.conf \ + > ./etc/ld.so.conf.d/intel-fortran.conf + + extract_rpms 'intel-ifort*.rpm' ${_xe_build_dir} + + rm ./opt/intel/${_composer_xe_dir}/linux/bin/*.csh + + # remove duplicate logo and .css found in intel base + rm ${_xe_build_dir}/opt/intel/documentation_${_year}/en/compiler_f/ps${_year}/resources/{intel_gsp_styles.css,intel_logo.png} + + mv ${_xe_build_dir}/opt/intel/documentation_${_year}/en/man/common/man1/*.1 ${_man_dir} + rm -rf ${_xe_build_dir}/opt/intel/documentation_${_year}/en/man + + cd ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + rm ./compiler/include/omp_lib.f90 + rm ./compiler/include/${_i_arch}/omp_lib.mod + rm ./compiler/include/${_i_arch}/omp_lib_kinds.mod + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + mv ${_xe_build_dir}/usr ${PKGDESTDIR}/ + } +} + +intel-ipp_package() { + short_desc="Intel Integrated Performance Primitives" + nostrip=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/ld.so.conf.d + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel-ipp.conf \ + > ./etc/ld.so.conf.d/intel-ipp.conf + + extract_rpms 'intel-ipp-*.rpm' ${_xe_build_dir} + + cd ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux/ipp/bin + rm ippvars.csh + sed -i "s//\/opt\/intel\/${_composer_xe_dir}\/linux/g" ippvars.sh + + cd ${_xe_build_dir}/opt/intel/${_composer_xe_dir}/linux/ + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./samples ./examples') + $(vopt_if staticlibs "rm -fr ./ipp/lib/${_i_arch}/libipp*.a") + $(vopt_if staticlibs "rm -fr ./ipp/lib/${_i_arch}/nonpic/libipp*.a") + $(vopt_if staticlibs "rmdir ./ipp/lib/${_i_arch}/nonpic/") + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + ln -s ./${_composer_xe_dir}/linux/ipp/ ${PKGDESTDIR}/opt/intel/ipp + } +} + +intel-mkl_package() { + short_desc="Intel Math Kernel Library (IntelĀ® MKL)" + nostrip=yes + conf_files=etc/intel-mkl-th.conf + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/ld.so.conf.d + mkdir -p ./etc/profile.d + + cp ${FILESDIR}/intel-mkl.sh ./etc/profile.d/ + chmod a+x ./etc/profile.d/intel-mkl.sh + + cp ${FILESDIR}/intel-mkl-th.conf ./etc/ + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel-mkl.conf \ + > ./etc/ld.so.conf.d/intel-mkl.conf + + extract_rpms 'intel-mkl-*.rpm' ${_xe_build_dir} + + cd ./opt/intel/${_composer_xe_dir}/linux/mkl + rm ./bin/mklvars.csh + sed -i "s//\/opt\/intel\/${_composer_xe_dir}\/linux/g" \ + ./bin/mklvars.sh + + $(vopt_if nodocs 'rm -fr ./examples ./benchmarks') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + $(vopt_if staticlibs "rm -fr ./lib/${_i_arch}/libmkl_*.a") + $(vopt_if staticlibs "rm -f ./lib/mic/libmkl_*.a") + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + ln -s ./${_composer_xe_dir}/linux/mkl/ \ + ${PKGDESTDIR}/opt/intel/mkl + } +} + +intel-tbb-psxe_package() { + short_desc="Intel Threading Building Blocks (TBB)" + shlib_provides="libtbb_preview_debug.so.2 libtbbmalloc_debug.so.2 + libtbbmalloc_proxy.so.2 libtbbmalloc_proxy_debug.so.2 libtbb.so.2 + libtbbmalloc.so.2 libtbb_preview.so.2 libtbb_debug.so.2" + nostrip=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/ld.so.conf.d + + sed "s//${_i_arch}/" \ + < ${FILESDIR}/intel-tbb.conf \ + > ./etc/ld.so.conf.d/intel-tbb.conf + sed -i "s//\/opt\/intel\/${_composer_xe_dir}/g" \ + ./etc/ld.so.conf.d/intel-tbb.conf + + extract_rpms 'intel-tbb-*.rpm' ${_xe_build_dir} + + cd ./opt/intel/${_composer_xe_dir}/linux + rm ./tbb/bin/tbbvars.csh + sed -i "s/SUBSTITUTE_INSTALL_DIR_HERE/\/opt\/intel\/${_composer_xe_dir}\/linux\/tbb/g" \ + ./tbb/bin/tbbvars.sh + chmod a+x ./tbb/bin/tbbvars.sh + + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs 'rm -fr ./tbb/examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + ln -s ./${_composer_xe_dir}/linux/tbb/ ${PKGDESTDIR}/opt/intel/tbb + } +} + +intel-vtune-amplifier_package() { + short_desc="Intel VTune Amplifier $_vtune_ver" + depends='desktop-file-utils pangox-compat python glibc libgomp libgcc + libstdc++ fontconfig freetype libxcb libxkbcommon-x11 libxkbcommon + zlib libX11 libGL glib gtk+3 pango atk cairo gdk-pixbuf libXcomposite + libXcursor libXdamage libXext libXfixes libXi libXrender libXtst + expat libuuid libXrandr libXScrnSaver alsa-lib dbus-libs at-spi2-atk + libcups' + nostrip=yes + noshlibprovides=yes + noverifyrdeps=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/profile.d + + sed -e "s//${_bin_dir}/g" \ + -e "s//${_vtune_ver}/g" \ + < ${FILESDIR}/intel_vtune-amplifier.sh \ + > etc/profile.d/intel_vtune-amplifier.sh + chmod a+x ./etc/profile.d/intel_vtune-amplifier.sh + + for rpm_file in $(find ${_rpm_dir} -name 'intel-vtune-amplifier-*.rpm' \ + ! -name "intel-vtune-amplifier-${_year}-sep-*.rpm" -print) ; do + extract_rpm $rpm_file ${_xe_build_dir} + done + + cd ${_xe_build_dir}/opt/intel/vtune_amplifier_${_vtune_ver} + rm -fr ./uninstall ./uninstall*.sh + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + rm -rf vpp/server/dist/3rdparty/vpp-python-centos + rm -rf vpp/server/dist/3rdparty/vpp-python-ubuntu + find ${_xe_build_dir}/opt/intel/vtune_amplifier_${_vtune_ver} \ + -mindepth 1 -type d -empty -delete + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + vmkdir usr/share/applications + sed -e "s//${_bin_dir}/g" \ + -e "s//${_vtune_ver}/g" \ + < ${FILESDIR}/amplxe-gui.desktop \ + > ${PKGDESTDIR}/usr/share/applications/amplxe-gui.desktop + } +} + +intel-vtune-amplifier-dkms_package() { + short_desc="Intel VTune Amplifier $_vtune_ver - module source for dkms" + dkms_modules="intel-vtune-amplifier ${version}" + depends='dkms' + archs=noarch + system_groups="vtune" + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + + for rpm_file in $(find ${_rpm_dir} \ + -name "intel-vtune-amplifier-${_year}-sep-*.rpm" -print) ; do + extract_rpm $rpm_file ${_xe_build_dir} + done + + cd ${_xe_build_dir}/opt/intel/vtune_amplifier_${_vtune_ver} + find ${_xe_build_dir}/opt/intel/vtune_amplifier_${_vtune_ver} \ + -mindepth 1 -type d -empty -delete + + local _moddir=${PKGDESTDIR}/usr/src/intel-vtune-amplifier-${version} + + install -d ${_moddir} + cp -a sepdk/. ${_moddir} + mkdir -p ${_moddir}/patches + install -m644 ${FILESDIR}/Makefile-dkms \ + ${_moddir}/Makefile + install -m644 ${FILESDIR}/001-vtsspp.patch \ + ${_moddir}/patches/001-vtsspp.patch + install -m644 ${FILESDIR}/002-src-sys64.S.patch \ + ${_moddir}/patches/002-src-sys64.S.patch + install -m644 ${FILESDIR}/003-linux56.patch \ + ${_moddir}/patches/003-linux56.patch + sed "s,#MODULE_VERSION#,${version}," \ + ${FILESDIR}/intel-vtune-amplifier-dkms.dkms \ + > ${_moddir}/dkms.conf + vinstall ${FILESDIR}/intel-vtune-amplifier-dkms.udev 644 \ + usr/lib/udev/rules.d 60-intel-vtune-amplifier-dkms.rules + vinstall ${FILESDIR}/intel-vtune-amplifier.conf 644 \ + usr/lib/modules-load.d + + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + } +} + +intel-advisor_package() { + short_desc="Intel Advisor $_advisor_ver" + depends='desktop-file-utils' + nostrip=yes + noshlibprovides=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/profile.d + + sed -e "s//${_bin_dir}/g" \ + -e "s//${_advisor_ver}/g" \ + < ${FILESDIR}/intel_advisor.sh \ + > etc/profile.d/intel_advisor.sh + chmod a+x etc/profile.d/intel_advisor.sh + + for rpm_file in $(find ${_rpm_dir} \ + -name 'intel-advisor-*.rpm' -print) ; do + extract_rpm $rpm_file ${_xe_build_dir} + done + + cd ${_xe_build_dir}/opt/intel/advisor_${_advisor_ver} + rm -fr ./uninstall ./uninstall*.sh + find ${_xe_build_dir}/opt/intel/advisor_${_advisor_ver} \ + -mindepth 1 -type d -empty -delete + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + vmkdir usr/share + mv ${_xe_build_dir}/opt/intel/advisor_${_advisor_ver}/man ${PKGDESTDIR}/usr/share + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + vmkdir usr/share/applications + sed -e "s//${_bin_dir}/g" \ + -e "s//${_advisor_ver}/g" \ + < ${FILESDIR}/advixe-gui.desktop \ + > ${PKGDESTDIR}/usr/share/applications/advixe-gui.desktop + } +} + +intel-inspector_package() { + short_desc="Intel Inspector $_inspector_ver" + depends='desktop-file-utils' + nostrip=yes + noshlibprovides=yes + + pkg_install() { + set_build_vars + + mkdir -p ${_xe_build_dir} + cd ${_xe_build_dir} + mkdir -p ./opt + mkdir -p ./etc/profile.d + + sed -e "s//${_bin_dir}/g" \ + -e "s//${_inspector_ver}/g" \ + < ${FILESDIR}/intel_inspector.sh \ + > etc/profile.d/intel_inspector.sh + chmod a+x etc/profile.d/intel_inspector.sh + + for rpm_file in $(find ${_rpm_dir} \ + -name 'intel-inspector-*.rpm' -print) ; do + extract_rpm $rpm_file ${_xe_build_dir} + done + + cd ${_xe_build_dir}/opt/intel/inspector_${_inspector_ver} + rm -fr ./uninstall ./uninstall*.sh + $(vopt_if nodocs 'rm -fr ./documentation ./Documentation ./Samples ./examples') + $(vopt_if nodocs "rm -fr ${_xe_build_dir}/opt/intel/documentation_${_year}") + + vmkdir usr/share + mv ${_xe_build_dir}/opt/intel/inspector_${_inspector_ver}/man \ + ${PKGDESTDIR}/usr/share + mv ${_xe_build_dir}/opt ${PKGDESTDIR}/ + mv ${_xe_build_dir}/etc ${PKGDESTDIR}/ + + vmkdir usr/share/applications + sed -e "s//${_bin_dir}/g" \ + -e "s//${_inspector_ver}/g" \ + < ${FILESDIR}/inspxe-gui.desktop \ + > ${PKGDESTDIR}/usr/share/applications/inspxe-gui.desktop + } +} diff --git a/srcpkgs/intel-tbb-psxe b/srcpkgs/intel-tbb-psxe new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-tbb-psxe @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-vtune-amplifier b/srcpkgs/intel-vtune-amplifier new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-vtune-amplifier @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file diff --git a/srcpkgs/intel-vtune-amplifier-dkms b/srcpkgs/intel-vtune-amplifier-dkms new file mode 120000 index 00000000000..1af84c1ea95 --- /dev/null +++ b/srcpkgs/intel-vtune-amplifier-dkms @@ -0,0 +1 @@ +intel-parallel-studio-xe \ No newline at end of file