set(PACKAGING_DEB_OUTPUT_CONTROL ${PROJECT_PKG_ENTRY_POINT}/debian.control)
set(PACKAGING_DEB_OUTPUT_RULES ${PROJECT_PKG_ENTRY_POINT}/debian.rules)
endif()
+
+# Break After Binding are loaded but before they get initialised
+set(GDB_INITIAL_BREAK "personality" CACHE STRING "Initial Break Point for GDB remote")
\ No newline at end of file
add_custom_command(OUTPUT ${PACKAGE_LIBDIR}/${P}${OUT}.so
COMMAND mkdir -p ${PACKAGE_LIBDIR}
COMMAND cp ${BD}/${P}${OUT}.so ${PACKAGE_LIBDIR}
+ DEPENDS ${BD}/${P}${OUT}.so
)
- add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_LIBDIR}/${P}${TARGET}.so)
+message ("DEPENDS ${BD}/${P}${OUT}.so")
+ add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${TARGET} DEPENDS ${PACKAGE_LIBDIR}/${P}${OUT}.so)
add_dependencies(populate ${POPULE_PACKAGE_TARGET} ${TARGET})
elseif(${T} STREQUAL "EXECUTABLE")
add_custom_command(OUTPUT ${PACKAGE_BINDIR}/${P}${OUT}
COMMAND mkdir -p ${PACKAGE_BINDIR}
COMMAND cp ${BD}/${P}${OUT} ${PACKAGE_BINDIR}
+ DEPENDS ${BD}/${P}${OUT}
)
- add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${PACKAGE_BINDIR}/${P}${TARGET})
+ add_custom_target(${POPULE_PACKAGE_TARGET} DEPENDS ${TARGET} DEPENDS ${PACKAGE_BINDIR}/${P}${OUT})
add_dependencies(populate ${POPULE_PACKAGE_TARGET} ${TARGET})
elseif(${T} STREQUAL "HTDOCS")
add_custom_command(OUTPUT ${PACKAGE_HTTPDIR}-xx
# Usage: remote-target-populate update script under ./build directory
# Author: Fulup Ar Foll (IoT.bzh)
# Reference: https://blog.flameeyes.eu/2010/02/remote-debugging-with-gdb-part-2-gdb/
+#
+# Warning: In remote native mode netbeans impose debug-command to point on a local instance of afb-daemon binary
-# Start gdbserver on target and connect through SSH link
-target remote | ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null @RSYNC_TARGET@ gdbserver - afb-daemon --port=@AFB_REMPORT@ --workdir=@RSYNC_PREFIX@/@PROJECT_NAME@ --roothttp=./htdocs --ldpaths=./lib --verbose --token=@AFB_TOKEN@
+# Fulup Hoops: --ldpath should be absolute as solib-search-path refuse to work as documented
+
+# Start gdbserver on target and connect through SSH link WARNING:
+target remote | ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null @RSYNC_TARGET@ gdbserver - afb-daemon --port=@AFB_REMPORT@ --workdir=$HOME/@RSYNC_PREFIX@/@PROJECT_NAME@ --roothttp=htdocs --ldpaths=$HOME/@RSYNC_PREFIX@/@PROJECT_NAME@/lib --verbose --token=@AFB_TOKEN@
# Disable auto answer no on questions and to set breakpoint
set confirm off
set auto-solib-add off
# Define path for project libraries
-set solib-search-path $ENV{PROJECT_DIR}/build/@PKGOUT_DIR@/lib
-
-# Path substitution for source file names
-set substitute-path @CMAKE_CURRENT_SOURCE_DIR@ $ENV{PROJECT_DIR}
+set solib-search-path ${PROJECT_PKG_BUILD_DIR}
# Replace run by continue (gdb use 'run' when gdbserver wants 'continue')
define run
end
# Manually load project libraries when loaded by afb-daemon
-break execute_command
+tbreak @GDB_INITIAL_BREAK@
commands
-sharedlibrary @BINDINGS_REGEX@
+sharedlibrary @RSYNC_PREFIX@/@PROJECT_NAME@
continue
end
+
+