@@ 1,12 @@
+CC = pdflatex
+TARGET = gdb-steroids
+EXTENSION = tex
+
+all:
+ set -e ; \
+ for i in 1 2 ; do \
+ $(CC) $(TARGET).$(EXTENSION) ; \
+ done ;
+
+clean:
+ rm -f $(TARGET).{aux,log,nav,out,pdf,snm,toc,vrb}
@@ 1,119 @@
+\documentclass[slidestop,compress,blue]{beamer}
+%\usetheme{default}
+%\usetheme{Malmoe}
+%\usetheme{Boadilla}
+%\usetheme{umbc2}
+%\usetheme{Antibes}
+%\usetheme{Berlin}
+%\usetheme{Madrid}
+
+% Pacotes úteis
+\usepackage[utf8]{inputenc}
+% Fonte bonita!
+\usepackage{ae,aecompl}
+\usepackage[brazil]{babel}
+\usepackage[T1]{fontenc}
+\usepackage{listings}
+
+\title{GDB with steroids: your distro can have it, too!}
+\author{Sergio Durigan Junior \\
+ \texttt{sergiodj@redhat.com}}
+\date{\today}
+
+\usetheme[secheader]{Madrid}
+\setbeamertemplate{navigation symbols}{}
+\defbeamertemplate*{footline}{infolines theme without institution}
+{
+ \leavevmode%
+ \hbox{%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
+ \usebeamerfont{author in head/foot}\insertshortauthor
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
+ \usebeamerfont{title in head/foot}\insertshorttitle
+ \end{beamercolorbox}%
+ \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
+ \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
+ \insertframenumber{} / \inserttotalframenumber\hspace*{2ex}
+ \end{beamercolorbox}}%
+ \vskip0pt%
+}
+
+\newcommand{\aspas}[1]{``#1''}
+\newcommand{\gnu}{\texttt{GNU}}
+\newcommand{\gdb}{\texttt{GDB}}
+\newcommand{\gcc}{\texttt{GCC}}
+\newcommand{\stap}{\texttt{SystemTap}}
+\newcommand{\python}{\texttt{Python}}
+\newcommand{\glibc}{\texttt{GLIBC}}
+\newcommand{\kernel}{\textit{kernel}}
+\newcommand{\probe}{\textit{probe}}
+\newtheorem{sourcecode}{Source Code}
+
+\begin{document}
+
+\lstset{escapeinside={(*}{*)}}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}
+ \frametitle{License}
+ \begin{itemize}
+ \item{License: \textbf{Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)}}
+ \item{\url{http://creativecommons.org/licenses/by-sa/3.0/}}
+ \end{itemize}
+\end{frame}
+
+\section{Topics}
+\begin{frame}
+ \frametitle{Topics}
+
+\begin{itemize}
+ \item{Intro}
+
+ \item{Python ``hook'' activation}
+
+ \item{\texttt{build-id}}
+
+ \item{\texttt{.gdb\_index}}
+
+ \item{dwz}
+
+ \item{Compilation flags}
+\end{itemize}
+\end{frame}
+
+\section{Intro}
+\begin{frame}{Intro}
+ \begin{itemize}
+ \item{a}
+ \end{itemize}
+\end{frame}
+
+\section{Python "hook" activation}
+\begin{frame}[fragile]{Python ``hook'' activation}
+ \begin{itemize}
+ \item{Some projects already offer Python extensions
+ (pretty printers, type printers, etc.) to be run
+ when \gdb{} loads them (e.g., \texttt{libstdc++}).}
+
+ \item{The distro needs to arrange things for \gdb{} to
+ lookup those files in the right directories. Fedora
+ uses \texttt{/usr/share/gdb/auto-load}.}
+
+ \item{You have to provide
+ \verb|--with-auto-load-dir| and
+ \verb|--with-auto-load-safe-path| to the
+ \texttt{configure} script when compiling.}
+
+ \item{Inside the auto-load directory, the files need
+ to be named after their ``parent'' libraries. For
+ example, for the \texttt{libstc++} hook file, the
+ full path is (on Fedora)
+ \texttt{/usr/share/gdb/auto-load/usr/lib64/libstdc++.so.6.0.17-gdb.py}}
+ \end{itemize}
+\end{frame}
+
+\end{document}