package An official xmake package repository
https://xrepo.xmake.io/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.3 KiB
28 lines
1.3 KiB
package("libpfm") |
|
|
|
set_homepage("http://perfmon2.sourceforge.net/") |
|
set_description("improving performance monitoring on Linux") |
|
set_license("MIT") |
|
|
|
add_urls("http://sourceforge.net/projects/perfmon2/files/libpfm4/libpfm-$(version).tar.gz") |
|
add_versions("4.11.0", "5da5f8872bde14b3634c9688d980f68bda28b510268723cc12973eedbab9fecc") |
|
|
|
on_install("linux", function (package) |
|
if package:config("shared") then |
|
io.replace("lib/Makefile", "TARGETS=$(ALIBPFM)", "TARGETS=", {plain = true}) |
|
io.replace("lib/Makefile", "$(INSTALL) -m 644 $(ALIBPFM) $(DESTDIR)$(LIBDIR)", "", {plain = true}) |
|
end |
|
local args = {} |
|
table.insert(args, "CC=" .. package:build_getenv("cc")) |
|
table.insert(args, "DBG=") |
|
table.insert(args, "CONFIG_PFMLIB_DEBUG=" .. (package:debug() and "y" or "n")) |
|
table.insert(args, "CONFIG_PFMLIB_SHARED=" .. (package:config("shared") and "y" or "n")) |
|
table.insert(args, "CONFIG_PFMLIB_NOPYTHON=y") |
|
table.insert(args, "PREFIX=" .. package:installdir()) |
|
os.vrunv("make", table.join({"lib"}, args)) |
|
os.vrunv("make", table.join({"install"}, args)) |
|
end) |
|
|
|
on_test(function (package) |
|
assert(package:has_cfuncs("pfm_initialize", {includes = "perfmon/pfmlib.h"})) |
|
end)
|
|
|