Skip to content

Commit c6b5732

Browse files
committed
fix: IDA 9.2 macos target work-in-progress
1 parent b069bef commit c6b5732

2 files changed

Lines changed: 31 additions & 6 deletions

File tree

.github/workflows/ci.yml

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ on:
1212
env:
1313
LINUX_QTDIR: /home/alex/tmp/investigate/5.15.2/build/qt-5.12.2-patched-qt-ns
1414
MACOS_QTDIR: /Users/Shared/Qt/5.15.2-arm64
15+
MACOS_QTDIR_QT6: /Users/Shared/Qt/6.8.2-arm64-qt-ns
1516

1617

1718
jobs:
@@ -90,6 +91,7 @@ jobs:
9091
echo "ROOT_DIR=$(dirname `pwd`)" >> $GITHUB_ENV
9192
echo "QT_DIR=${MACOS_QTDIR}" >> $GITHUB_ENV
9293
echo "QMAKE=${MACOS_QTDIR}/bin/qmake" >> $GITHUB_ENV
94+
echo "QMAKE_QT6=${MACOS_QTDIR_QT6}/bin/qmake" >> $GITHUB_ENV
9395
echo "PROTOBUF_PREFIX=$(pwd)/3rdparty/protobuf-3.20.3/dist" >> $GITHUB_ENV
9496
sudo mkdir -p "$(dirname ${MACOS_QTDIR})"
9597
sudo chown $USER: "$(dirname ${MACOS_QTDIR})"
@@ -136,14 +138,21 @@ jobs:
136138
- name: MacOS, Set up Qt
137139
if: runner.os == 'macOS' && steps.macos_arm64_qt_cache.outputs.cache-hit != 'true'
138140
run: |
139-
sudo mkdir -p "${{ env.QT_DIR }}"
140-
sudo chown $USER: "${{ env.QT_DIR }}"
141+
sudo mkdir -p "${{ env.QT_DIR }}" "${{ env.MACOS_QTDIR_QT6 }}"
142+
sudo chown $USER: "${{ env.QT_DIR }}" "${{ env.MACOS_QTDIR_QT6 }}"
143+
141144
pushd "${{ env.QT_DIR }}"
142145
curl -L 'https://github.com/a1ext/depz/raw/refs/heads/master/Qt-5.15.2-arm64.tar.gz?download=' -o Qt-5.15.2-arm64.tar.gz
143146
tar xf Qt-5.15.2-arm64.tar.gz && rm -f Qt-5.15.2-arm64.tar.gz
144147
ls -la
145148
popd
149+
pushd "${{ env.MACOS_QTDIR_QT6 }}"
150+
curl -L 'https://github.com/a1ext/depz/raw/refs/heads/master/Qt-6.8.2-arm64-qt-ns.tar.gz?download=' -o Qt-6.8.2-arm64-qt-ns.tar.gz
151+
tar xf Qt-6.8.2-arm64-qt-ns.tar.gz && rm -f Qt-6.8.2-arm64-qt-ns.tar.gz
152+
ls -la
153+
popd
146154
"${{ env.QMAKE }}" -query
155+
"${{ env.QMAKE_QT6 }}" -query
147156
148157
- name: Linux, protobuf cache
149158
if: runner.os == 'Linux'
@@ -276,7 +285,7 @@ jobs:
276285
make clean
277286
make -j$(nproc)
278287
279-
- name: MacOS, build IDA 9 plugin
288+
- name: MacOS, build IDA 9.0 plugin
280289
if: runner.os == 'macOS'
281290
env:
282291
SDK_PATH: ${{ github.workspace }}/../idasdk90sp1
@@ -288,7 +297,20 @@ jobs:
288297
make qmake_all
289298
make clean
290299
make -j$(nproc)
291-
300+
301+
- name: MacOS, build IDA 9.2 plugin
302+
if: runner.os == 'macOS'
303+
env:
304+
SDK_PATH: ${{ github.workspace }}/../idasdk92
305+
IDA_PATH: ${{ github.workspace }}/build
306+
run: |
307+
cd ./build
308+
mkdir -p plugins
309+
SDK_PATH="${{ env.SDK_PATH }}" IDA_PATH="${{ env.IDA_PATH }}" "${{ env.QMAKE_QT6 }}" ../labeless_ida/labeless_ida.pro -spec macx-clang CONFIG+=release CONFIG+=labeless_ida_92 CONFIG+=ea64
310+
make qmake_all
311+
make clean
312+
make -j$(nproc)
313+
292314
- name: Build OllyDBG 1.10 plugin
293315
if: matrix.os == 'windows-2019'
294316
shell: cmd

labeless_ida/labeless_ida.pro

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ QT += widgets
99
# TARGET = labeless_ida_70
1010
# TARGET = labeless_ida_83
1111
# TARGET = labeless_ida_90
12+
# TARGET = labeless_ida_92
1213
TEMPLATE = lib
1314
CONFIG += plugin c++11
1415
CONFIG -= debug
@@ -25,8 +26,10 @@ contains(CONFIG, labeless_ida_70) {
2526
TARGET = labeless_ida_83
2627
} else: contains(CONFIG, labeless_ida_90) {
2728
TARGET = labeless_ida_90
29+
} else: contains(CONFIG, labeless_ida_92) {
30+
TARGET = labeless_ida_92
2831
} else {
29-
error("No target specified, add to CONFIG one of the following: labeless_ida_70|labeless_ida_83|labeless_ida_90")
32+
error("No target specified, add to CONFIG one of the following: labeless_ida_70|labeless_ida_83|labeless_ida_90|labeless_ida_92")
3033
}
3134

3235
# `x64` deprecated
@@ -51,7 +54,7 @@ equals(TARGET, "labeless_ida_83") {
5154
# SDK_PATH = $$PWD/../../idasdk_pro83
5255
# IDA_PATH = $$PWD/../../idafree-8.4
5356
}
54-
equals(TARGET, "labeless_ida_90") {
57+
equals(TARGET, "labeless_ida_90") | equals(TARGET, "labeless_ida_92") {
5558
# SDK_PATH = $$PWD/../../idasdk90sp1
5659
# IDA_PATH = $$PWD/../../ida-free-pc-9.0
5760
mac:isEmpty(IDA_PATH) {

0 commit comments

Comments
 (0)